:root{
    --red: #E2001A;
    --red-dark: #A80014;
    --red-tint: #FCE6E9;
    --near-black: #1A1A1A;
    --gray-90: #3D3D3D;
    --gray-60: #6B6B6B;
    --gray-10: #F2F2F2;
    --white: #FFFFFF;

    --radius-full: 999px;
    --radius-lg: 20px;
    --radius-md: 15px;
    --radius-sm: 10px;

    --font: "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  }

  *{ margin:0; padding:0; box-sizing:border-box; }

  body{
    font-family: var(--font);
    color: var(--gray-90);
    background: var(--white);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
  }

  a{ color: inherit; text-decoration: none; }
  img, svg{ display:block; max-width:100%; }

  .wrap{ max-width: 1240px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 32px); }

  .utility-bar{ background: var(--gray-10); font-size: 13px; color: var(--gray-60); }
  .utility-bar .wrap{ display:flex; justify-content:flex-end; gap:24px; padding-top:8px; padding-bottom:8px; }

  header{ border-bottom: 1px solid var(--gray-10); background: var(--white); position: sticky; top:0; z-index: 50; }
  .header-row{ display:flex; align-items:center; justify-content:flex-start; gap: 48px; padding-top: 18px; padding-bottom: 18px; }
  .site-logo{ height: 48px; width: auto; display:block; }
  nav{ display:flex; align-items:center; gap: 32px; flex: 1; }
  nav a{ font-size: 15px; color: var(--gray-90); }
  nav a:hover{ color: var(--red); }
  .nav-cta{ background: var(--red); color: var(--white); padding: 9px 20px; border-radius: var(--radius-full); font-weight: 400; font-size: 13.5px; margin-left: auto; border:none; outline:none; }
  .nav-cta:hover{ background: var(--red-dark); color: var(--white); }
  .mobile-menu-btn{ display:none; background:none; border:none; cursor:pointer; padding:8px; align-items:center; justify-content:center; }

  /* Google Material Symbols Outlined, per Danfoss icon spec: Fill off, Weight 300, Grade 0, Optical size 24 */
  .material-icons{
    font-family: 'Material Symbols Outlined';
    font-weight: normal;
    font-style: normal;
    font-size: 24px;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-smoothing: antialiased;
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
  }

  .mobile-menu-btn .material-icons{ font-size:26px; color:var(--near-black); }

  /* ---------- Nav dropdown (Store) ---------- */
  .nav-item-dropdown{ position:relative; display:flex; align-items:center; }
  .nav-dropdown-trigger{ display:flex; align-items:center; gap:1px; font-size:15px; color:var(--gray-90); }
  .nav-item-dropdown:hover .nav-dropdown-trigger, .nav-item-dropdown:focus-within .nav-dropdown-trigger{ color:var(--red); }
  .nav-dropdown-arrow{ font-size:15px; color:var(--gray-60); opacity:0.8; transition: transform .15s ease, color .15s ease, opacity .15s ease; }
  .nav-item-dropdown:hover .nav-dropdown-arrow, .nav-item-dropdown:focus-within .nav-dropdown-arrow{ transform:rotate(180deg); color:var(--red); opacity:1; }
  .nav-dropdown-menu{ position:absolute; top:100%; left:50%; transform:translateX(-50%); padding-top:14px; opacity:0; visibility:hidden; transition:opacity .15s ease; pointer-events:none; z-index:60; }
  .nav-item-dropdown:hover .nav-dropdown-menu, .nav-item-dropdown:focus-within .nav-dropdown-menu{ opacity:1; visibility:visible; pointer-events:auto; }
  .nav-dropdown-menu-inner{ background:var(--white); border:1px solid #E4E4E4; border-radius:var(--radius-md); box-shadow:0 12px 28px rgba(0,0,0,0.12); padding:8px; min-width:220px; }
  .nav-dropdown-menu-inner a{ display:block; padding:10px 14px; font-size:14px; color:var(--gray-90); border-radius:8px; white-space:nowrap; }
  .nav-dropdown-menu-inner a:hover{ background:var(--gray-10); color:var(--red); }

  /* ---------- Hero: simplified, Danfoss-style ---------- */
  .hero{ padding: clamp(48px, 9vw, 96px) 0; }
  .hero .wrap{ display:grid; grid-template-columns: 0.92fr 1.08fr; gap: 64px; align-items:center; }
  h1{ font-size: clamp(28px, 5vw, 44px); line-height: 1.15; font-weight: 400; color: var(--near-black); margin-bottom: 22px; }
  .hero p{ font-size: 17px; color: var(--gray-60); margin-bottom: 32px; max-width: 480px; }
  .btn-primary{ display:inline-block; background: var(--red); color: var(--white); font-weight: 400; font-size: 15px; padding: 14px 30px; border-radius: var(--radius-full); border:none; outline:none; }
  .btn-primary:hover{ background: var(--red-dark); color: var(--white); }

  .hero-art{ background: linear-gradient(160deg, #FAFAFA 0%, #F2F2F2 60%, var(--red-tint) 140%); border-radius: 14px; aspect-ratio: 1/1.02; position: relative; overflow: hidden; }
  .hero-art svg{ width:100%; height:100%; }

  /* ---------- Section shell ---------- */
  section{ padding: clamp(48px, 7vw, 88px) 0; }
  .section-dark{ background: var(--near-black); color: var(--white); }
  .section-dark .section-label{ color: #B0B0B0; }
  .section-dark h2{ color: var(--white); }

  .section-label{ font-size: 13px; font-weight: 400; letter-spacing: 0.08em; text-transform: uppercase; color: var(--red); margin-bottom: 14px; }
  h2{ font-size: clamp(22px, 3.2vw, 30px); font-weight: 400; color: var(--near-black); max-width: 640px; margin-bottom: 20px; }
  .section-intro{ font-size: 16px; color: var(--gray-60); max-width: 640px; margin-bottom: 44px; }

  .grid-4{ display:grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
  .grid-2-facility{ display:grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items:start; }
  .grid-3{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .grid-2{ display:grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }

  .card{ background: var(--gray-10); border: 1px solid #E4E4E4; border-radius: var(--radius-md); overflow:hidden; padding: 26px 22px; display:flex; flex-direction:column; height:100%; transition: border-color .15s ease; }
  .card:hover{ border-color: var(--red); }
  .section-dark .card{ background: #262626; border-color: #3A3A3A; }
  .card-icon{ width: 40px; height: 40px; border-radius: var(--radius-full); background: var(--red); display:flex; align-items:center; justify-content:center; margin-bottom: 16px; flex-shrink:0; }
  .card-icon .material-icons{ color: #fff; font-size: 20px; }

  /* Numbered circle badge (plant-map stages, strategic initiative pillars) */
  .circle{ width: 32px; height: 32px; border-radius: var(--radius-full); background: var(--red); color: var(--white); display:flex; align-items:center; justify-content:center; font-weight:400; font-size:12.5px; flex-shrink:0; }
  .card h3{ font-size: 16px; font-weight: 400; color: var(--near-black); margin-bottom: 6px; min-height: 44px; }
  .section-dark .card h3{ color: var(--white); }
  .card p{ font-size: 13px; color: var(--gray-60); }
  .section-dark .card p{ color: #B0B0B0; }

  /* Compact product tile for solutions grid */
  .product-tile{ border: 1px solid #DADADA; border-radius: var(--radius-md); overflow:hidden; padding: 20px; display:flex; flex-direction:column; gap: 6px; height:100%; background: var(--white); transition: border-color .15s ease; }
  .product-tile:hover{ border-color: var(--red); }
  .learn-more-link{ display:inline-block; margin-top: 24px; font-size: 14px; font-weight: 400; color: var(--red); }
  .learn-more-link:hover{ color: var(--red-dark); }
  .tag{ display:inline-block; background: var(--red); color: var(--white); font-size: 10px; font-weight: 400; padding: 4px 12px; border-radius: var(--radius-full); width: fit-content; }
  .product-tile h3{ font-size: 15px; color: var(--near-black); font-weight: 400; }
  .product-tile p{ font-size: 12.5px; color: var(--gray-60); }

  .sector-strip{ display:flex; flex-wrap:wrap; gap: 12px; }
  .sector-pill{ background: var(--white); color: var(--near-black); border: 1px solid #DADADA; font-size: 14px; font-weight: 400; padding: 10px 20px; border-radius: var(--radius-full); }
  .sector-pill-featured{ background: var(--red); color: var(--white); border-color: var(--red); }

  .lifecycle-block{ background: var(--near-black); color: var(--white); border-radius: var(--radius-lg); padding: 44px; display:flex; align-items:center; justify-content:space-between; gap: 40px; flex-wrap: wrap; }
  .lifecycle-block h2{ color: var(--white); margin-bottom: 10px; }
  .lifecycle-block p{ color: #B0B0B0; font-size: 15px; max-width: 560px; margin: 0; }

  .contact-block{ display:grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items:center; }
  .contact-card{ background: var(--red); color: var(--white); border-radius: var(--radius-lg); padding: 40px; }
  .contact-card h3{ font-size: 22px; margin-bottom: 12px; font-weight: 400; }
  .contact-card p{ font-size: 15px; opacity: 0.92; margin-bottom: 4px; }

  footer{ background: var(--near-black); color: var(--white); padding: 56px 0 32px; }
  .footer-grid{ display:grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 32px; margin-bottom: 40px; }
  .footer-grid h4{ font-size: 13px; font-weight: 400; text-transform: uppercase; letter-spacing: 0.06em; color: #B0B0B0; margin-bottom: 16px; }
  .footer-grid a{ display:block; font-size: 14px; color: #DADADA; margin-bottom: 10px; }
  .footer-grid a:hover{ color: var(--red); }
  .footer-logo-img{ height: 30px; width: auto; display:block; margin-bottom: 16px; }
  .footer-grid .desc{ font-size: 13px; color: #999; max-width: 320px; }
  .footer-social{ display:flex; gap:12px; margin-top:18px; }
  .footer-social a{ width:34px; height:34px; border-radius:50%; background:#262626; display:flex; align-items:center; justify-content:center; flex-shrink:0; transition: background .15s ease; }
  .footer-social a:hover{ background:var(--red); }
  .footer-social svg{ width:17px; height:17px; fill:#fff; display:block; }
  .footer-bottom{ border-top: 1px solid #333; padding-top: 24px; display:flex; justify-content: space-between; font-size: 12px; color: #888; }
  .footer-utility-row{ display:flex; flex-wrap:wrap; gap: 20px; padding: 20px 0; border-top: 1px solid #333; margin-top: 8px; }
  .footer-utility-row a{ font-size: 12.5px; color: #AAAAAA; }
  .footer-utility-row a:hover{ color: var(--red); }

  .breadcrumb{ font-size:13px; color:var(--gray-60); padding-top: 18px; }
  .breadcrumb a{ color:var(--gray-60); }
  .breadcrumb a:hover{ color:var(--red); }
  .page-intro{ padding: 16px 0 64px; }
  .page-intro h1{ font-size:clamp(26px, 4.5vw, 34px); font-weight:400; color:var(--near-black); margin-bottom:12px; }
  .page-intro p{ color:var(--gray-60); font-size:16px; max-width:700px; }
  .page-intro .cross-link{ color:var(--red); font-weight:400; }
  .store-inline-link{ color:var(--red); text-decoration:underline; text-decoration-color:rgba(226,0,26,0.35); text-underline-offset:2px; }
  .store-inline-link:hover{ text-decoration-color:var(--red); }
  .landing-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-bottom:64px; align-items:stretch; }
  .landing-card{ border:1px solid #DADADA; border-radius: var(--radius-md); overflow:hidden; background:var(--white); display:flex; flex-direction:column; height:100%; transition: border-color .15s ease; }
  .landing-card:hover{ border-color:var(--red); }
  .landing-card img{ width:100%; height:160px; object-fit:cover; display:block; flex-shrink:0; }
  .landing-card-body{ padding:20px; display:flex; flex-direction:column; flex:1; }
  .landing-card-title{ display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; min-height:24px; }
  .landing-card-title h3{ font-size:17px; font-weight:400; color:var(--near-black); }
  .landing-card-title .material-icons{ color:var(--red); font-size:20px; flex-shrink:0; }
  .landing-card-sublist{ list-style:none; }
  .landing-card-sublist li{ font-size:13.5px; color:var(--gray-60); padding:4px 0; }
  .landing-card-body p{ font-size:13px; color:var(--gray-60); line-height:1.55; margin-bottom:8px; }
  .landing-card-body p:last-child{ margin-bottom:0; }
  .landing-card-body p strong{ color:var(--red); font-weight:600; }
  .landing-card-body > *:last-child{ margin-top:auto; }
  .landing-card-body .learn-more-link{ margin-top:auto; padding-top:12px; }

  /* ---------- News & Updates cards ---------- */
  .news-meta{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
  .news-date{ font-size:12px; color:var(--gray-60); font-weight:500; }
  .news-card-title{ margin-bottom:8px; }
  .news-card-title h3{ font-size:16.5px; font-weight:400; color:var(--near-black); line-height:1.35; }
  .news-card-img{ display:block; width:calc(100% + 48px); max-width:calc(100% + 48px); height:170px; object-fit:cover; margin:-24px -24px 16px -24px; border-radius: var(--radius-md) var(--radius-md) 0 0; }

  /* ---------- News & Updates: full-width feature card ---------- */
  .news-feature{ display:flex; align-items:stretch; border:1px solid #DADADA; border-radius:var(--radius-md); overflow:hidden; background:var(--white); transition: border-color .15s ease; }
  .news-feature:hover{ border-color:var(--red); }
  .news-feature-img{ width:44%; min-width:0; object-fit:cover; flex-shrink:0; display:block; }
  .news-feature-body{ padding:32px; display:flex; flex-direction:column; justify-content:center; flex:1; min-width:0; }
  .news-feature-body .news-card-title h3{ font-size:22px; }
  .news-feature-body p{ font-size:14.5px; color:var(--gray-60); line-height:1.6; margin-bottom:16px; }
  @media (max-width: 900px){
    .news-feature{ flex-direction:column; }
    .news-feature-img{ width:100%; height:220px; }
    .news-feature-body{ padding:24px; }
  }

  /* ---------- Carousel: full-width feature slide (e.g. homepage news carousel) ---------- */
  .carousel-slide-feature{ scroll-snap-align:start; flex:0 0 100%; display:flex; align-items:stretch; border:1px solid #DADADA; border-radius:var(--radius-md); overflow:hidden; background:var(--white); transition: border-color .15s ease; }
  .carousel-slide-feature:hover{ border-color:var(--red); }
  .carousel-slide-feature-img{ width:42%; min-width:0; object-fit:cover; flex-shrink:0; display:block; }
  .carousel-slide-feature-body{ padding:32px; display:flex; flex-direction:column; justify-content:center; flex:1; min-width:0; }
  .carousel-slide-feature-body h3{ font-size:20px; margin-bottom:10px; }
  .carousel-slide-feature-body p{ font-size:14.5px; color:var(--gray-60); line-height:1.6; margin-bottom:0; }
  @media (max-width: 900px){
    .carousel-slide-feature{ flex-direction:column; }
    .carousel-slide-feature-img{ width:100%; height:220px; }
    .carousel-slide-feature-body{ padding:24px; }
  }

  /* ---------- Check-list: icon bullet list (ESG solution areas, etc.) ---------- */
  .check-list{ list-style:none; display:grid; grid-template-columns:repeat(2,1fr); gap:10px 32px; }
  .check-list li{ display:flex; align-items:flex-start; gap:10px; font-size:14.5px; color:var(--near-black); }
  .check-list .material-icons{ color:var(--red); font-size:18px; margin-top:1px; flex-shrink:0; }

  /* ---------- Legal / policy prose (privacy, etc.) ---------- */
  .legal-content{ max-width:760px; }
  .legal-content h2{ font-size:clamp(19px, 2.5vw, 22px); max-width:none; margin-top:40px; margin-bottom:14px; }
  .legal-content h2:first-child{ margin-top:0; }
  .legal-content > p{ color:var(--gray-60); font-size:15px; line-height:1.65; margin-bottom:14px; }
  .legal-content ul{ margin:0 0 20px 22px; }
  .legal-content ul li{ color:var(--gray-60); font-size:15px; line-height:1.6; margin-bottom:8px; }
  .legal-content .contact-address{ color:var(--near-black); font-size:15px; line-height:1.75; }

  /* anchor targets shouldn't hide behind the sticky header */
  [id]{ scroll-margin-top: 110px; }

  /* ---------- Carousel (application detail pages) ---------- */
  .carousel{ position:relative; }
  .carousel-track{ display:flex; align-items:flex-start; gap:20px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding-bottom:10px; -webkit-overflow-scrolling:touch; }
  .carousel-track::-webkit-scrollbar{ height:6px; }
  .carousel-track::-webkit-scrollbar-thumb{ background:#DADADA; border-radius:999px; }
  .carousel-slide{ scroll-snap-align:start; flex:0 0 320px; background:var(--white); border:1px solid #DADADA; border-radius:var(--radius-md); overflow:hidden; padding:0 22px 20px; transition:border-color .15s ease; }
  .carousel-slide:hover{ border-color:var(--red); }
  .carousel-slide-img{ display:block; width:calc(100% + 44px); max-width:calc(100% + 44px); height:130px; object-fit:cover; margin:0 -22px 16px -22px; border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .carousel-slide-img-product{ object-fit:contain; object-position:center; background:var(--white); padding:12px 0; box-sizing:border-box; }
  .carousel-slide summary{ list-style:none; cursor:pointer; padding-top:20px; }
  .carousel-slide summary::-webkit-details-marker{ display:none; }
  .carousel-slide-title-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
  .carousel-slide-title-row .card-icon{ margin-bottom:0; flex-shrink:0; }
  .carousel-slide summary .chevron{ color:var(--gray-60); font-size:22px; flex-shrink:0; transition: transform .2s ease; }
  .carousel-slide[open] summary .chevron{ transform: rotate(180deg); }
  .carousel-slide h3{ font-size:15.5px; font-weight:400; color:var(--near-black); min-height:40px; display:flex; align-items:center; }
  .carousel-slide-teaser{ font-size:12.5px; color:var(--gray-60); line-height:1.5; margin-top:10px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
  .carousel-slide .accordion-body{ padding:12px 0 0; }
  .carousel-slide p{ font-size:13px; color:var(--gray-60); line-height:1.6; margin-bottom:8px; }
  .carousel-slide p:last-child{ margin-bottom:0; }
  .carousel-slide p strong{ color:var(--red); font-weight:600; }
  .carousel-nav{ display:flex; gap:10px; margin-top:18px; justify-content:flex-end; }
  .carousel-btn{ width:40px; height:40px; border-radius:999px; border:1px solid #DADADA; background:var(--white); display:flex; align-items:center; justify-content:center; cursor:pointer; transition: border-color .15s ease, background .15s ease; padding:0; }
  .carousel-btn:hover{ border-color:var(--red); background:var(--red-tint); }
  .carousel-btn .material-icons{ color:var(--near-black); font-size:22px; }

  /* ---------- Accordion (compact dropdown cards, e.g. industries overview) ---------- */
  .accordion-list{ display:flex; flex-direction:column; gap:12px; }
  .accordion-item{ background:var(--white); border:1px solid #DADADA; border-radius:var(--radius-md); overflow:hidden; transition: border-color .15s ease; }
  .accordion-item:hover{ border-color:var(--red); }
  .accordion-item summary{ list-style:none; cursor:pointer; padding:14px 20px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
  .accordion-item summary::-webkit-details-marker{ display:none; }
  .accordion-summary-label{ display:flex; align-items:center; gap:14px; font-weight:400; color:var(--near-black); font-size:15.5px; }
  .accordion-thumb{ width:48px; height:48px; border-radius:10px; object-fit:cover; flex-shrink:0; }
  .accordion-summary-label .material-icons{ color:var(--red); font-size:22px; flex-shrink:0; }
  .accordion-item summary .chevron{ color:var(--gray-60); font-size:22px; flex-shrink:0; transition: transform .2s ease; }
  .accordion-item[open] summary .chevron{ transform: rotate(180deg); }
  .accordion-item[open] summary{ border-bottom:1px solid #EDEDED; }
  .accordion-body{ padding:16px 20px 20px; }
  .accordion-body p{ font-size:13.5px; color:var(--gray-60); line-height:1.65; margin-bottom:10px; }
  .accordion-body p:last-child{ margin-bottom:0; }
  .accordion-body p strong{ color:var(--red); font-weight:600; }
  .accordion-body .learn-more-link{ margin-top:6px; }

  /* ---------- Homepage decorative photo placeholders ---------- */
  .card-media{ display:block; width:calc(100% + 44px); max-width:calc(100% + 44px); height:150px; object-fit:cover; margin:-26px -22px 16px -22px; border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .tile-media{ display:block; width:calc(100% + 40px); max-width:calc(100% + 40px); height:130px; object-fit:cover; margin:-20px -20px 14px -20px; border-radius: var(--radius-md) var(--radius-md) 0 0; }
  .section-banner-img{ display:block; width:100%; height:260px; object-fit:cover; border-radius: var(--radius-lg); margin-top:28px; }

  /* ---------- Responsive overrides (kept last so they always win the cascade) ---------- */
  @media (max-width: 1024px){
    .grid-4{ grid-template-columns: repeat(2,1fr); }
    .landing-grid{ grid-template-columns: repeat(2,1fr); }
  }

  @media (max-width: 900px){
    .hero .wrap{ grid-template-columns: 1fr; }
    .grid-3{ grid-template-columns: repeat(2,1fr); }
    .grid-2{ grid-template-columns: 1fr; }
    .contact-block{ grid-template-columns: 1fr; }
    .footer-grid{ grid-template-columns: 1fr 1fr; }
    nav{ display:none; }
    nav.open{ display:flex; position:absolute; top:100%; left:0; right:0; background:var(--white); flex-direction:column; align-items:flex-start; gap:4px; padding:12px 32px 20px; border-top:1px solid var(--gray-10); border-bottom:1px solid var(--gray-10); box-shadow:0 8px 16px rgba(0,0,0,0.06); max-height:calc(100vh - 72px); overflow-y:auto; }
    nav.open a{ padding:12px 0; width:100%; }
    .mobile-menu-btn{ display:flex; }
    .header-row{ gap:16px; position:relative; }
    .lifecycle-block{ flex-direction:column; align-items:flex-start; }
    .nav-item-dropdown{ flex-direction:column; align-items:flex-start; width:100%; }
    .nav-dropdown-trigger{ padding:12px 0; width:100%; }
    .nav-dropdown-arrow{ display:none; }
    .nav-dropdown-menu{ position:static; padding-top:0; opacity:1; visibility:visible; pointer-events:auto; transform:none; width:100%; }
    .nav-dropdown-menu-inner{ border:none; box-shadow:none; padding:0 0 8px 16px; min-width:0; }
    .nav-dropdown-menu-inner a{ padding:8px 0; font-size:14px; }
  }

  @media (max-width: 700px){
    .grid-4{ grid-template-columns: repeat(2,1fr); }
    .grid-3{ grid-template-columns: 1fr; }
    .landing-grid{ grid-template-columns: 1fr; }
    .grid-2-facility{ grid-template-columns: 1fr; }
    .check-list{ grid-template-columns:1fr; }
    .carousel-slide{ flex-basis:82vw; }
  }

  @media (max-width: 560px){
    .grid-4{ grid-template-columns: 1fr; }
    .footer-grid{ grid-template-columns: 1fr; gap:28px; }
    .card{ padding: 22px 20px; }
    .contact-card{ padding: 28px; }
    .lifecycle-block{ padding: 28px; }
    .site-logo{ height: 36px; }
    .footer-logo-img{ height: 26px; }
    .nav-cta{ padding: 9px 16px; font-size: 13px; }
    .utility-bar .wrap{ justify-content:space-between; flex-wrap:wrap; gap:8px 16px; }
    .footer-bottom{ flex-direction:column; gap:8px; }
    .landing-card img{ height: 140px; }
    .card-media{ height:130px; width:calc(100% + 40px); max-width:calc(100% + 40px); margin:-22px -20px 16px -20px; }
    .tile-media{ height:110px; }
    .store-hub-tile-img{ height:150px; }
    .section-banner-img{ height:180px; }
  }

  @media (max-width: 380px){
    .wrap{ padding: 0 14px; }
    .header-row{ gap:10px; }
    .nav-cta{ padding: 8px 14px; font-size: 12.5px; }
    .site-logo{ height: 32px; }
    .sector-pill{ padding: 8px 14px; font-size: 13px; }
  }

  /* ============ Store: hub tiles ============ */
  .store-hub-grid{ display:grid; grid-template-columns: repeat(2, 1fr); gap:24px; }
  .store-hub-tile{ background:var(--gray-10); border:1px solid #E4E4E4; border-radius:var(--radius-lg); padding:36px; display:flex; flex-direction:column; height:100%; transition: border-color .15s ease; }
  .store-hub-tile:hover{ border-color:var(--red); }
  .store-hub-tile-img{ display:block; width:calc(100% + 72px); max-width:calc(100% + 72px); height:220px; object-fit:contain; object-position:center; background:var(--white); padding:16px; box-sizing:border-box; margin:-36px -36px 20px -36px; border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
  .store-hub-tile .card-icon{ width:52px; height:52px; margin-bottom:20px; }
  .store-hub-tile .card-icon .material-icons{ font-size:26px; }
  .store-hub-tile h3{ font-size:22px; font-weight:400; color:var(--near-black); margin-bottom:10px; }
  .store-hub-tile p{ font-size:14.5px; color:var(--gray-60); margin-bottom:20px; flex:1; }

  /* ============ Store: category card (Drives) ============ */
  .store-category-card{ background:var(--white); border:1px solid #DADADA; border-radius:var(--radius-md); padding:24px; display:flex; flex-direction:column; height:100%; transition: border-color .15s ease; }
  .store-category-card:hover{ border-color:var(--red); }
  .store-category-card h3{ font-size:17.5px; font-weight:400; color:var(--near-black); margin-bottom:8px; }
  .store-category-card p{ font-size:14px; color:var(--gray-60); margin-bottom:12px; line-height:1.55; }
  .store-family-list{ font-size:13.5px; color:var(--gray-60); line-height:1.7; margin-bottom:18px; padding-bottom:18px; border-bottom:1px solid #EDEDED; flex:1; }
  .store-family-list strong{ color:var(--near-black); }

  /* ============ Store: inline conversion nudge ============ */
  .nudge-bar{ display:flex; align-items:center; gap:14px; background:var(--gray-10); border:1px solid #E4E4E4; border-radius:var(--radius-md); padding:16px 20px; margin-bottom:32px; }
  .nudge-bar .material-icons{ color:var(--red); font-size:22px; flex-shrink:0; }
  .nudge-bar p{ font-size:13.5px; color:var(--gray-60); margin:0; flex:1; line-height:1.5; }
  .nudge-bar p strong{ color:var(--near-black); font-weight:600; }
  .nudge-link{ color:var(--red); font-weight:400; font-size:13.5px; white-space:nowrap; flex-shrink:0; background:none; border:none; cursor:pointer; font-family:var(--font); padding:0; }
  .nudge-link:hover{ text-decoration:underline; }
  @media (max-width: 560px){
    .nudge-bar{ flex-direction:column; align-items:flex-start; gap:10px; }
    .nudge-link{ white-space:normal; }
  }

  /* ============ Store: in-page search ============ */
  .store-search-wrap{ max-width:680px; margin:24px auto 0; }
  .store-search-bar{ display:flex; align-items:center; background:var(--white); border:1.5px solid #DADADA; border-radius:var(--radius-full); padding:6px 6px 6px 22px; box-shadow:0 4px 18px rgba(0,0,0,0.06); }
  .store-search-bar .material-icons{ color:var(--gray-60); font-size:20px; flex-shrink:0; }
  .store-search-bar input{ flex:1; border:none; outline:none; font-family:var(--font); font-size:14.5px; color:var(--near-black); background:transparent; padding:0 10px; }
  .store-search-bar input::placeholder{ color:#9A9A9A; }
  .store-search-bar button{ display:flex; align-items:center; gap:6px; background:var(--red); color:var(--white); border:none; border-radius:var(--radius-full); padding:12px 24px; font-weight:400; font-size:14px; font-family:var(--font); cursor:pointer; flex-shrink:0; }
  .store-search-bar button:hover{ background:var(--red-dark); }
  .store-search-empty{ display:none; margin-top:12px; background:var(--gray-10); border:1px solid #E4E4E4; border-radius:var(--radius-md); text-align:left; }
  .store-search-empty.open{ display:block; }
  .store-search-empty .no-results{ padding:14px 20px; font-size:13.5px; color:var(--gray-60); }
  .store-search-empty .no-results button{ color:var(--red); font-weight:400; background:none; border:none; cursor:pointer; font-family:var(--font); font-size:13.5px; padding:0; }
  @media (max-width: 560px){
    .store-search-bar{ padding:6px 6px 6px 16px; }
    .store-search-bar button span.btn-label{ display:none; }
  }

  /* ============ Store: enquire button ============ */
  .enquire-btn{ display:inline-flex; align-items:center; justify-content:center; gap:6px; background:var(--red); color:var(--white); font-weight:400; font-size:13.5px; padding:11px 18px; border-radius:var(--radius-full); border:none; cursor:pointer; width:100%; font-family:var(--font); outline:none; }
  .enquire-btn:focus-visible, .btn-primary:focus-visible, .nav-cta:focus-visible{ outline:2px solid var(--red-dark); outline-offset:2px; }
  .enquire-btn:hover{ background:var(--red-dark); }
  .enquire-btn-outline{ background:none; color:var(--red); border:1px solid var(--red); }
  .enquire-btn-outline:hover{ background:var(--red-tint); color:var(--red-dark); }

  /* ============ Store: HEX product row ============ */
  .hex-row{ display:flex; gap:20px; align-items:center; border:1px solid #DADADA; border-radius:var(--radius-md); padding:16px; margin-bottom:14px; transition: border-color .15s ease; }
  .hex-row:hover{ border-color:var(--red); }
  .hex-row-img{ width:130px; height:98px; object-fit:contain; object-position:center; background:var(--white); border:1px solid #EEE; padding:6px; box-sizing:border-box; border-radius:var(--radius-sm); flex-shrink:0; }
  .hex-row-body{ flex:1; min-width:0; }
  .hex-row-body h3{ font-size:17px; font-weight:400; color:var(--near-black); margin-bottom:5px; }
  .hex-row-body p{ font-size:14.5px; color:var(--gray-60); line-height:1.55; margin-bottom:0; }
  .hex-row-cta{ flex-shrink:0; }
  .hex-row-cta .enquire-btn{ width:auto; padding:10px 20px; }
  .hex-jump-nav{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:8px; }

  /* ============ Store: drive panel shop-floor proof photos ============ */
  .panel-proof-tile{ border:1px solid #DADADA; border-radius:var(--radius-md); overflow:hidden; background:var(--white); transition: border-color .15s ease; }
  .panel-proof-tile:hover{ border-color:var(--red); }
  .panel-proof-img{ width:100%; height:170px; object-fit:cover; display:block; }
  .panel-proof-tile p{ font-size:13px; font-weight:400; color:var(--near-black); text-align:center; padding:12px 10px; margin:0; }
  @media (max-width: 560px){
    .panel-proof-img{ height:150px; }
  }

  /* ============ Enquiry modal ============ */
  .enquiry-overlay{ position:fixed; inset:0; background:rgba(26,26,26,0.6); display:none; align-items:center; justify-content:center; z-index:300; padding:20px; }
  .enquiry-overlay.open{ display:flex; }
  .enquiry-card{ background:var(--white); border-radius:var(--radius-lg); padding:36px; max-width:460px; width:100%; max-height:88vh; overflow-y:auto; position:relative; }
  .enquiry-card h3{ font-size:20px; font-weight:400; color:var(--near-black); margin-bottom:4px; }
  .enquiry-product-label{ font-size:13px; color:var(--red); font-weight:400; margin-bottom:20px; display:block; }
  .enquiry-close{ position:absolute; top:18px; right:18px; background:none; border:none; cursor:pointer; padding:4px; line-height:0; }
  .enquiry-close .material-icons{ color:var(--gray-60); font-size:22px; }
  .enquiry-field{ margin-bottom:14px; }
  .enquiry-field label{ display:block; font-size:12.5px; font-weight:400; color:var(--near-black); margin-bottom:6px; }
  .enquiry-field input, .enquiry-field textarea{ width:100%; padding:11px 14px; border:1px solid #DADADA; border-radius:var(--radius-sm); font-family:var(--font); font-size:14px; color:var(--near-black); }
  .enquiry-field input:focus, .enquiry-field textarea:focus{ outline:none; border-color:var(--red); }
  .enquiry-field textarea{ resize:vertical; min-height:70px; }
  .enquiry-status{ font-size:13px; margin-top:14px; text-align:center; }
  .enquiry-status.success{ color:var(--near-black); }
  .enquiry-status.error{ color:var(--red); }

  @media (max-width: 900px){
    .store-hub-grid{ grid-template-columns: 1fr; }
    .hex-row{ flex-direction:column; align-items:flex-start; }
    .hex-row-img{ width:100%; height:170px; }
    .hex-row-cta{ width:100%; }
    .hex-row-cta .enquire-btn{ width:100%; }
  }
