/* Agossa 6.3 — homepage hero, page banners, FAQ and mobile navigation refinements. */
:root{
  --ag63-ink:#1f1f1c;
  --ag63-muted:#7e7a73;
  --ag63-line:#e7e3dc;
  --ag63-soft:#f6f4f0;
  --ag63-paper:#fff;
  --ag63-sans:Arial,Helvetica,"Helvetica Neue",sans-serif;
  --ag63-serif:Georgia,"Times New Roman",serif;
}

/* Keep the interface sans-serif. Serif is reserved for selected editorial display titles. */
body,button,input,select,textarea,.site-header,.site-footer,.mobile-header,.mobile-menu-panel,
.ag-main-product-group-page,.agossa-v6-page-banner,.agossa-v6-faq{font-family:var(--ag63-sans)}
.ag-main-product-group-page .hero .banner .middle,
.agossa-v6-page-banner h1{font-family:var(--ag63-serif)}

/* Homepage hero: the picture is absolutely positioned, therefore the banner itself must own the height. */
.ag-main-product-group-page .hero .banner{
  height:var(--ag-hero-height-desktop,100vh);
  min-height:560px;
}
.ag-main-product-group-page .ag-hero-picture{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
}
.ag-main-product-group-page .ag-hero-picture>img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
}

/* Inner-page banner — quieter, lower and more editorial. */
.agossa-v6-page-banner{
  min-height:clamp(150px,14vw,210px);
  background:#f3f1ed;
}
.agossa-v6-page-banner__inner{width:min(calc(100% - 56px),1280px);padding:28px 0 30px}
.agossa-v6-page-banner__overlay{background:linear-gradient(90deg,rgba(19,18,16,.48),rgba(19,18,16,.08) 68%,transparent)}
.agossa-v6-page-banner__kicker{font-size:9px;letter-spacing:.18em}
.agossa-v6-page-banner h1{font-size:clamp(32px,3.1vw,48px);line-height:1.02;font-weight:400}
.agossa-v6-page-banner__text{max-width:660px;margin-top:10px;font-size:12.5px;line-height:1.65}

/* Homepage FAQ styled as a true content module, matching the calculator rhythm. */
.ag-home-section--faq-v6{background:#fff}
.agossa-v6-faq{
  position:relative;
  padding:clamp(68px,6.2vw,96px) 0 clamp(72px,6.5vw,104px);
  border-top:1px solid rgba(29,29,27,.07);
  background:#fff;
}
.agossa-v6-faq__inner{
  width:min(calc(100% - 48px),1220px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(260px,360px) minmax(0,1fr);
  gap:clamp(48px,6vw,86px);
  align-items:start;
}
.agossa-v6-faq__head{padding-top:4px}
.agossa-v6-faq__head p{margin:0 0 13px;font-size:9px;font-weight:700;letter-spacing:.2em;color:#9a9791}
.agossa-v6-faq__head h2{margin:0;font-family:var(--ag63-sans);font-size:clamp(32px,3.35vw,50px);font-weight:450;line-height:1.06;letter-spacing:-.04em;color:#1d1d1b}
.agossa-v6-faq__list{border-top:1px solid var(--ag63-line)}
.agossa-v6-accordion-item{border-bottom:1px solid var(--ag63-line)}
.agossa-v6-accordion-trigger{min-height:68px;font-size:13px;font-weight:600;letter-spacing:-.01em;color:#292824}
.agossa-v6-accordion-panel>div{max-width:760px;padding:0 42px 24px 0;font-size:13px;line-height:1.75;color:#74716a}

/* Mobile navigation starts at the viewport top and uses the same account/cart glyphs as the header. */
@media(max-width:991.98px){
  .mobile-menu-panel{
    position:fixed!important;
    top:0!important;
    bottom:0!important;
    left:0!important;
    width:min(88vw,350px)!important;
    height:100dvh!important;
    max-height:none!important;
    border:0!important;
    border-right:1px solid var(--ag63-line)!important;
    border-radius:0!important;
    background:#fcfbf9!important;
    box-shadow:26px 0 64px rgba(27,25,22,.11)!important;
    overflow-y:auto!important;
    z-index:99999!important;
  }
  .mobile-menu-panel-inner{min-height:100%;padding:0 20px 26px!important;background:#fcfbf9!important}
  .mobile-menu-panel-head{position:sticky;top:0;z-index:2;height:64px!important;background:#fcfbf9!important;border-bottom:1px solid #ece8e2!important}
  .mobile-menu-list{padding:10px 0 8px!important}
  .mobile-menu-list>li{border-bottom:1px solid #eeeae4!important}
  .mobile-menu-list li a{padding:15px 2px!important;font-size:13px!important;font-weight:500!important;color:#302e2a!important}
  .mobile-menu-quicklinks{gap:8px!important;margin-top:14px!important}
  .mobile-menu-quicklinks a{min-height:44px!important;padding:0 11px!important;border:1px solid #e8e4de!important;border-radius:8px!important;background:#fff!important;font-size:11px!important;font-weight:500!important;box-shadow:none!important}
  .mobile-menu-quicklinks a span{width:20px!important;height:20px!important;background:transparent!important;border:0!important}
  .mobile-menu-quicklinks a span svg{width:17px!important;height:17px!important;stroke:currentColor!important}
}

@media(max-width:767.98px){
  .ag-main-product-group-page .hero .banner{
    height:var(--ag-hero-height-mobile,70vh);
    min-height:420px;
  }
  .ag-main-product-group-page .hero .banner img{height:100%!important;min-height:0!important}
  .agossa-v6-page-banner{min-height:138px}
  .agossa-v6-page-banner__inner{width:calc(100% - 30px);padding:24px 0}
  .agossa-v6-page-banner h1{font-size:32px}
  .agossa-v6-faq{padding:52px 0 58px}
  .agossa-v6-faq__inner{width:calc(100% - 30px);grid-template-columns:1fr;gap:28px}
  .agossa-v6-faq__head h2{font-size:32px}
  .agossa-v6-accordion-trigger{min-height:60px;font-size:12.5px}
}
