/* Consolidated mobile finish. Loaded last to avoid legacy cascade conflicts. */
.company-mobile-logo-grid{display:none}

@media (min-width:701px){
  .site-header>.mobile-primary-nav,
  .site-header>.mobile-company-panel{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

@media (max-width:700px){
  :root{--mobile-gutter:16px;--mobile-header-height:108px}
  html,body{max-width:100%;overflow-x:hidden}
  img{max-width:100%}

  /* Compact two-row reference header. */
  .site-header,.home-page .site-header{
    position:relative!important;
    top:auto!important;left:auto!important;right:auto!important;
    height:var(--mobile-header-height)!important;
    min-height:var(--mobile-header-height)!important;
    grid-template-columns:1fr auto!important;
    grid-template-rows:60px 48px!important;
    padding:0 var(--mobile-gutter)!important;
    background:#fff!important;color:#111!important;
    border-bottom:1px solid var(--line)!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
    overflow:visible!important;
  }
  .site-header .logo{grid-column:1!important;grid-row:1!important;width:140px!important;height:36px!important;overflow:hidden!important}
  .site-header .logo picture,.site-header .logo img{width:100%!important;height:100%!important;max-height:36px!important;object-fit:contain!important;object-position:left center!important;filter:none!important}
  .site-header .header-actions{grid-column:2!important;grid-row:1!important;align-self:center!important;gap:0!important}
  .site-header .info-trigger,.site-header .header-phone,.site-header .header-cta,.site-header .mobile-menu{display:none!important}
  .site-header .search-trigger{display:grid!important;width:36px!important;height:36px!important;flex:0 0 36px!important;padding:0!important;color:#111!important;border:0!important}
  .site-header .search-trigger span{width:17px!important;height:17px!important}
  .site-header>.mobile-primary-nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-column:1/-1;grid-row:2;width:calc(100% + 32px)!important;height:48px;margin-left:-16px!important;padding:0 8px!important;border-top:1px solid var(--line);background:#fff;z-index:4}
  .mobile-primary-nav a,.mobile-primary-nav button{display:flex!important;align-items:center;justify-content:center;gap:6px;min-width:0;height:100%;padding:0 4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#242525!important;font-family:inherit;font-size:12.5px!important;font-weight:500!important;line-height:1.2;text-decoration:none;white-space:nowrap}
  .mobile-company-trigger:after{content:"";width:5px;height:5px;border-right:1.4px solid currentColor;border-bottom:1.4px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s ease}
  .site-header.mobile-company-open .mobile-company-trigger:after{transform:translateY(2px) rotate(225deg)}

  /* top:100% guarantees the panel starts below the complete header. */
  .site-header>.mobile-company-panel{
    display:flex!important;position:absolute!important;
    top:100%!important;bottom:auto!important;
    left:25%!important;right:auto!important;
    width:min(258px,calc(75% - 16px))!important;
    max-height:calc(100dvh - var(--mobile-header-height) - 12px);
    overflow:auto;flex-direction:column!important;
    padding:10px 20px 13px!important;
    background:#fff!important;border:1px solid #e4e1d8!important;border-top:2px solid var(--gold)!important;border-radius:0 0 8px 8px!important;
    box-shadow:0 18px 34px rgba(16,20,18,.16)!important;
    z-index:120!important;opacity:0;visibility:hidden;pointer-events:none;
    transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;
  }
  .site-header.mobile-company-open>.mobile-company-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
  .mobile-company-panel a{display:block!important;padding:12px 0!important;border-bottom:1px solid #eceae4!important;color:#171818!important;font-size:13px!important;line-height:1.25}
  .mobile-company-panel a:last-child{border-bottom:0!important}
  .global-search{top:100%!important;padding:22px 16px 26px!important;z-index:115!important}
  .global-search label{font-size:8px!important}.global-search input{font-size:15px!important;min-width:0}.global-search button{padding:8px!important}

  /* Homepage hero keeps the reference side breathing room. */
  .home-page .hero-slider{width:calc(100% - 28px)!important;height:calc(100vh - 122px)!important;height:calc(100svh - 122px)!important;min-height:470px!important;margin:14px 14px 0!important;border-radius:12px!important;overflow:hidden!important}
  .home-page .hero-slide,.home-page .hero-slide--full,.home-page .hero-full-media,.home-page .hero-full-media img{border-radius:12px!important}
  .home-page .hero-full-media img{object-fit:cover!important;object-position:center center!important}

  /* Shared page rhythm and typography. */
  .section{padding:44px var(--mobile-gutter)!important}
  .page-hero{padding:48px var(--mobile-gutter) 42px!important}
  .page-hero h1,.contact h1,.product-summary h1,.article h1{font-size:clamp(34px,10.5vw,43px)!important;line-height:1.02!important;letter-spacing:-.045em!important;overflow-wrap:anywhere}
  .page-hero>p:last-child,.contact>div>p:not(.eyebrow){font-size:13px!important;line-height:1.65!important}
  .section-heading,.section-head{grid-template-columns:1fr!important;gap:13px!important;margin-bottom:27px!important;text-align:left!important}
  .section-heading:before,.section-heading:after{display:none!important}
  .section-heading-kicker{padding:0!important;justify-content:flex-start!important}
  .section-heading-copy{padding:0!important;border:0!important}
  .section-heading-copy h2,.section-head h2,.who-heading h2{font-size:28px!important;line-height:1.1!important;letter-spacing:-.035em!important}
  .section-heading-copy>p,.section-head>p{font-size:13px!important;line-height:1.62!important;margin:9px 0 0!important}
  .kicker{font-size:7px!important}

  /* Homepage headings remain centered, page headings remain left aligned. */
  .home-page .section-heading{text-align:center!important}
  .home-page .section-heading-kicker{justify-content:center!important;padding:0!important}

  /* One standard 3-column logo system across home and Company pages. */
  .natural-logo-section .desktop-logo-motion{display:none!important}
  .natural-logo-section .mobile-logo-layout,.company-mobile-logo-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:var(--logo-gap-mobile,10px)!important;width:100%!important}
  .natural-logo-section .mobile-logo-layout>article,.natural-logo-section .mobile-logo-layout>a{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:calc(var(--logo-size-mobile,56px) + 24px)!important;min-width:0!important;padding:8px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
  .natural-logo-section .mobile-logo-layout img{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:var(--logo-size-mobile,56px)!important;padding:0!important;border-radius:0!important;object-fit:contain!important}
  .natural-logo-section .mobile-logo-overflow{grid-column:1/-1!important;width:100%!important;height:calc(var(--logo-size-mobile,56px) + 24px)!important;aspect-ratio:auto!important;padding:0!important;border:0!important;border-radius:0!important;overflow:hidden!important}
  .natural-logo-section .mobile-logo-overflow>div{display:flex!important;width:max-content!important;height:100%!important;gap:var(--logo-gap-mobile,10px)!important}
  .natural-logo-section .mobile-logo-overflow article,.natural-logo-section .mobile-logo-overflow a{display:flex!important;align-items:center;justify-content:center;width:calc((100vw - 52px)/3)!important;height:100%!important;flex:0 0 calc((100vw - 52px)/3)!important;padding:8px!important;border:0!important;border-radius:0!important;background:transparent!important}

  /* Company / About page. */
  .company-story-grid,.company-people-grid,.about-value-grid,.company-category-grid{grid-template-columns:1fr!important;gap:12px!important}
  .company-story-grid article{min-height:210px!important;padding:25px 22px!important}
  .company-people-head{grid-template-columns:1fr!important;gap:16px!important;margin-bottom:28px!important}.company-people-head h2{font-size:29px!important}.company-people-head>p{font-size:13px!important;line-height:1.65!important}
  .company-people-grid article{grid-template-columns:40px 1fr 38px!important;gap:11px!important;padding:17px 14px!important;border-radius:10px!important}.company-people-grid h3{font-size:16px!important}.company-people-grid p{font-size:10.5px!important}.company-people-grid article>b{font-size:24px!important}
  .company-proof{grid-template-columns:1fr!important;padding:0 var(--mobile-gutter)!important}.company-proof article{padding:29px 4px!important;border-right:0!important}.company-proof b{font-size:34px!important}.company-proof span{font-size:12px!important}
  .about-value-grid article{min-height:0!important;border-radius:10px!important}.about-value-grid article>img{height:205px!important}.about-value-grid article>div{padding:20px!important}
  .company-category-grid{border-left:0!important}.company-category-grid>a{min-height:190px!important;padding:23px!important;border-left:1px solid var(--line)!important}

  /* Products directory. */
  .catalogue{display:block!important;padding:28px var(--mobile-gutter) 58px!important}
  .catalogue-tools{display:grid!important;grid-template-columns:1fr auto;gap:10px!important;margin-bottom:20px!important}.catalogue-tools>span{display:none!important}.catalogue-tools label{width:100%!important;min-width:0!important}.catalogue-tools button{display:block!important;padding:10px 13px!important;border:1px solid var(--line)!important;background:#fff!important;border-radius:6px!important;font-size:10px!important}
  .filters.open{display:flex!important;margin-bottom:22px!important;padding:12px!important;background:#f6f4ee!important}
  .catalogue-grid,.products-showcase .product-grid,.related .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .product-card{min-width:0!important;border-radius:10px!important}.product-card .product-image,.catalogue-grid .product-image{height:175px!important;padding:8px!important}.product-card-body{min-height:195px!important;padding:15px 12px!important}.product-card-body h3{font-size:16px!important;overflow-wrap:anywhere}.product-card-body>p{font-size:10px!important;line-height:1.5!important;display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

  /* Product details. */
  .product-breadcrumb{padding:15px var(--mobile-gutter)!important;overflow:auto;white-space:nowrap}
  .product-detail-hero{display:block!important;min-height:0!important}.product-summary{padding:42px var(--mobile-gutter) 27px!important}.product-summary h2{font-size:17px!important}.product-summary>div>p:not(.eyebrow){font-size:13px!important}.product-summary-bottom{padding-top:25px!important}.product-summary .product-actions{align-items:flex-start!important;gap:14px!important}.metric-row{grid-template-columns:1fr!important;gap:6px!important;margin-top:25px!important}.metric-row span{padding:10px!important}
  .product-detail-hero .product-gallery{padding:14px!important;min-height:0!important}.gallery-main{border-radius:10px!important}.gallery-main img{padding:10px!important}.gallery-thumbs{gap:6px!important}
  .product-information .product-tabs{top:0!important;justify-content:flex-start!important;min-height:52px!important}.product-information .product-tabs button{padding:16px 14px!important;font-size:13px!important}
  .product-content{padding:44px var(--mobile-gutter)!important}.content-intro,.spec-panel,.manufacturer-panel,.indications{grid-template-columns:1fr!important;gap:25px!important}.benefit-grid{grid-template-columns:1fr!important;margin-top:35px!important}.benefit-grid article{min-height:190px!important;padding:25px!important}.indications{padding:30px 22px!important;margin-top:40px!important}.manufacturer-panel{padding:28px 21px!important;border-radius:10px!important}.manufacturer-panel h2{font-size:34px!important}.technical-note{margin-top:38px!important;padding:23px!important;align-items:flex-start!important;flex-direction:column!important}

  /* Contact. */
  .contact{display:block!important;padding:48px var(--mobile-gutter)!important}.contact form{margin-top:34px!important;padding:25px 18px!important;border-radius:10px!important}.contact form h2{font-size:25px!important}.form-grid{grid-template-columns:1fr!important;gap:17px!important}.form-grid .wide{grid-column:auto!important}.form-grid input,.form-grid textarea{border-radius:6px!important;padding:12px!important}.whatsapp-contact{display:flex!important;width:100%;justify-content:center;text-align:center;border-radius:7px!important}
  .contact dl{margin-top:32px!important}.contact dt{float:none!important;width:auto!important;padding:13px 0 4px!important;border-bottom:0!important;font-size:9px!important;text-transform:uppercase}.contact dd{margin-left:0!important;padding:0 0 13px!important;font-size:12px!important;overflow-wrap:anywhere}

  /* Services and treatments. */
  .legacy-services{padding:44px var(--mobile-gutter) 52px!important}.legacy-service-copy>p{padding:0!important;margin:0 0 30px!important;font-size:13px!important;line-height:1.65!important}.legacy-service-image{margin:5px 0 39px!important}.legacy-service-image img{width:100%!important;border-radius:8px!important}
  .treatment-grid{grid-template-columns:1fr!important;gap:35px!important}.treatment-grid article>a>div{height:245px!important;border-radius:8px!important}.treatment-grid h2{font-size:23px!important}.treatment-grid p{font-size:13px!important;min-height:0!important}

  /* News, training, testimonials and articles. */
  .news-reference-layout{grid-template-columns:1fr!important;gap:28px!important}.news-feature-card{grid-template-columns:1fr!important;min-height:0!important}.news-feature-image{min-height:230px!important}.news-feature-card>div{padding:23px!important}.news-feature-card h2{font-size:27px!important}.news-list article{grid-template-columns:1fr!important;gap:14px!important}.news-list-image{min-height:205px!important}.news-sidebar{position:static!important}.news-help{padding:24px!important}
  .training-list,.testimonial-list{padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}.training-card{grid-template-columns:1fr!important}.training-card-image{min-height:220px!important}.training-card-copy{padding:22px!important}
  .article{padding:48px var(--mobile-gutter)!important}.article header{text-align:left!important}.article-image{margin:30px 0!important}.article-body{margin:35px auto!important;font-size:14px!important;line-height:1.78!important}.testimonial-video{max-width:100%!important}

  /* CTA and footer consistency. */
  .cta-band{grid-template-columns:1fr!important;gap:24px!important;padding:44px var(--mobile-gutter)!important}.cta-band h2{font-size:31px!important}.cta-band>div:last-child p{font-size:12px!important}
  .footer-directory{padding:32px 18px!important;gap:27px!important}.legacy-footer .footer-brand>a>img{width:165px!important}.footer-quick>div{gap:28px!important}.footer-contact-lines>a:last-child{font-size:12px!important;overflow-wrap:anywhere}.footer-bottom{padding:16px 18px!important}
}

@media (max-width:390px){
  .mobile-primary-nav a,.mobile-primary-nav button{font-size:11.5px!important}
  .catalogue-grid,.products-showcase .product-grid,.related .product-grid{grid-template-columns:1fr!important}
  .product-card .product-image,.catalogue-grid .product-image{height:235px!important}
}

@media (prefers-reduced-motion:reduce){
  .mobile-company-trigger:after,.site-header>.mobile-company-panel{transition:none!important}
}
