.elementor-16179 .elementor-element.elementor-element-4c4e6762 > .elementor-container{max-width:1480px;}.elementor-16179 .elementor-element.elementor-element-bb9d858f{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16179 .elementor-element.elementor-element-d9641d11{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-16179 .elementor-element.elementor-element-8f7fe0c1{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-16179 .elementor-element.elementor-element-3c993485{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-16179 .elementor-element.elementor-element-5c0fdaea{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-16179 .elementor-element.elementor-element-1830bf3c > .elementor-container{max-width:1480px;}.elementor-16179 .elementor-element.elementor-element-5044a95d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16179 .elementor-element.elementor-element-ee2af41b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-16179 .elementor-element.elementor-element-3eb7d2f6{--display:flex;}.elementor-16179 .elementor-element.elementor-element-be52502b{--display:flex;}.elementor-16179 .elementor-element.elementor-element-b8f3f0d3{--display:flex;}.elementor-16179 .elementor-element.elementor-element-d5d64892{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16179 .elementor-element.elementor-element-afd096c5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-16179 .elementor-element.elementor-element-eb364a76{--display:flex;}.elementor-16179 .elementor-element.elementor-element-178d796c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );}.elementor-16179 .elementor-element.elementor-element-8a675199 > .elementor-container{max-width:1480px;}.elementor-16179 .elementor-element.elementor-element-csclnt01{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS *//* ---------- tokens ---------- */
  :root{
    --ink:#000;
    --paper:#FAFAFA;
    --white:#FFF;
    --orange:#F18C00;
    --night:#0D0D0D;
    --hero-bg:#F4F1EC;
    /* per-section themes (background + text). Default values match the original design. */
    --panel-bg:#FFFFFF;        --panel-text:#000000;     /* HERO right panel */
    --statement-bg:#FFFFFF;    --statement-text:#000000; /* 02 Statement */
    --products-bg:#FFFFFF;     --products-text:#000000;  /* 03 Products */
    --layers-bg:#F18C00;       --layers-text:#FFFFFF;    /* 04 Layers */
    --why-bg:#FFFFFF;          --why-text:#000000;       /* 05 Why */
    --cta-bg:#F4F1EC;          --cta-text:#000000;       /* 06 Final CTA */
    --footer-bg:#FFFFFF;       --footer-text:#000000;    /* 07 Footer */
    --hairline: rgba(0,0,0,.12);
    --hairline-light: rgba(255,255,255,.16);
    --pad: clamp(20px, 4vw, 56px);
    --maxw: 1480px;
  }
  *{box-sizing:border-box; margin:0; padding:0}
  html,body{background:var(--paper); color:var(--ink); font-family:"Geologica", sans-serif; font-weight:400; -webkit-font-smoothing:antialiased; line-height:1.45; font-feature-settings:"ss01","cv11"; overflow-x:hidden}
  img{display:block; max-width:100%}
  a{color:inherit; text-decoration:none}
  button{font:inherit; cursor:pointer; background:none; border:0; color:inherit}

  /* ---------- shared bits ---------- */
  .container{max-width:var(--maxw); margin-inline:auto; padding-inline:var(--pad)}
  .eyebrow{font-size:11px; letter-spacing:.22em; text-transform:uppercase; font-weight:400; color:#000}
  .eyebrow.light{color:#fff}
  .rule{height:1px; background:var(--hairline); border:0}

  /* pill button per design system: 20px radius, uppercase, 1px border */
  .btn{
    display:inline-flex; align-items:center; gap:14px;
    padding:14px 26px; border-radius:20px; border:1px solid currentColor;
    text-transform:uppercase; letter-spacing:.16em; font-size:12px; font-weight:500;
    background:transparent; transition:all .25s ease;
  }
  .btn .arrow{width:14px; height:1px; background:currentColor; position:relative; display:inline-block}
  .btn .arrow::after{content:""; position:absolute; right:-1px; top:-3px; width:7px; height:7px; border-top:1px solid currentColor; border-right:1px solid currentColor; transform:rotate(45deg)}
  .btn:hover{transform:translateX(2px)}
  .btn--fill{background:var(--orange); border-color:var(--orange); color:#000}
  .btn--fill:hover{background:#ffa01a; border-color:#ffa01a}
  .btn--ghost-light{color:#fff; border-color:rgba(255,255,255,.55)}
  .btn--ghost-light:hover{border-color:#fff}

  /* ---------- grain overlay ---------- */
  .grain{position:absolute; inset:0; pointer-events:none; opacity:.18; mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  }
  .grain--light{opacity:.05; mix-blend-mode:multiply}

  /* ---------- nav ---------- */
  .nav{
    position:fixed; top:0; left:0; right:0; z-index:50;
    display:flex; align-items:center; justify-content:space-between;
    padding:18px var(--pad);
    background:rgba(255,255,255,.78); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
    color:#000; transition:background .3s ease, color .3s ease, border-color .3s ease;
    border-bottom:1px solid transparent;
  }
  .nav.scrolled{background:rgba(255,255,255,.95); border-bottom-color:var(--hairline)}
  .nav.light{background:rgba(250,250,250,.85); color:#000; border-bottom:1px solid var(--hairline)}
  .logo{font-weight:500; letter-spacing:-.01em; font-size:18px; display:flex; align-items:baseline; gap:0}
  .logo span:first-child{font-weight:500}
  .logo span:last-child{color:var(--orange); font-weight:500}
  .logo small{display:block; font-size:9px; letter-spacing:.18em; color:currentColor; opacity:.55; text-transform:lowercase; margin-left:6px; font-weight:300}
  .nav-links{display:flex; gap:36px; font-size:12px; letter-spacing:.18em; text-transform:uppercase; font-weight:400}
  .nav-links a{position:relative; padding-bottom:3px}
  .nav-links a::after{content:""; position:absolute; left:0; right:100%; bottom:0; height:1px; background:var(--orange); transition:right .3s ease}
  .nav-links a:hover::after{right:0}
  .nav-cart{font-size:12px; letter-spacing:.18em; text-transform:uppercase}
  @media (max-width:880px){ .nav-links{display:none} .nav-cart{display:none} }

  /* ============================================================
     1. HERO — LIGHT EDITION with SLIDER + DARK CONTENT PANEL
     ============================================================ */
  .hero{
    position:relative; min-height:100vh; overflow:hidden;
    display:grid; grid-template-columns:1.05fr 1fr; padding-top:0;
    background:var(--panel-bg);
  }

  /* ----- LEFT: photo slider ----- */
  .hero-slider{
    position:relative; overflow:hidden;
    background:#1a1a1a;
  }
  .slide{
    position:absolute; inset:0;
    background-size:cover; background-position:center;
    opacity:0; transition:opacity 1.2s ease;
  }
  .slide.is-active{
    opacity:1;
    animation: kenburns 9s ease-out forwards;
  }
  @keyframes kenburns{
    from{ transform:scale(1.02) }
    to{ transform:scale(1.12) }
  }
  .slide::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(0,0,0,.22) 0%, transparent 28%, transparent 58%, rgba(0,0,0,.55) 100%);
  }

  .slider-badge{
    position:absolute; top:32px; left:32px; z-index:5;
    display:inline-flex; align-items:center; gap:10px;
    padding:9px 16px 9px 14px; border-radius:20px;
    border:1px solid rgba(255,255,255,.4); background:rgba(0,0,0,.28); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
    color:#fff;
    font-size:11px; letter-spacing:.22em; text-transform:uppercase; font-weight:400;
  }
  .slider-badge .dot{ width:6px; height:6px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 4px rgba(241,140,0,.25) }

  .slider-counter{
    position:absolute; top:32px; right:32px; z-index:5;
    font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#fff;
    display:flex; align-items:center; gap:10px;
  }
  .slider-counter b{ font-weight:500; font-size:13px }
  .slider-counter .sep{ width:24px; height:1px; background:rgba(255,255,255,.5) }

  .slider-arrows{
    position:absolute; bottom:32px; left:32px; right:32px; z-index:5;
    display:flex; justify-content:space-between; align-items:flex-end;
  }
  .slider-nav{ display:flex; gap:10px }
  .slider-btn{
    width:48px; height:48px; border-radius:50%;
    background:rgba(0,0,0,.35); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
    border:1px solid rgba(255,255,255,.4); color:#fff;
    display:grid; place-items:center; cursor:pointer;
    transition: background .25s ease, border-color .25s ease, transform .25s ease;
  }
  .slider-btn:hover{ background:rgba(0,0,0,.6); border-color:#fff }
  .slider-btn:active{ transform:scale(.94) }
  .slider-btn svg{ width:14px; height:14px }

  .slider-dots{ display:flex; gap:8px; align-items:center }
  .s-dot{
    width:28px; height:2px; background:rgba(255,255,255,.4); border:0; padding:0; cursor:pointer;
    transition:background .3s ease, width .3s ease;
  }
  .s-dot:hover{ background:rgba(255,255,255,.7) }
  .s-dot.is-active{ background:var(--orange); width:40px }

  /* ----- RIGHT: brand-color content panel ----- */
  .hero-content{
    position:relative; z-index:3;
    background:var(--panel-bg); color:var(--panel-text);
    padding: 140px var(--pad) 80px;
    display:flex; flex-direction:column; justify-content:space-between;
    min-height:100vh;
    overflow:hidden;
    transition:background .35s ease, color .35s ease;
  }
  .hero-content::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:
      radial-gradient(ellipse at 100% 50%, rgba(255,255,255,.10) 0%, transparent 55%),
      radial-gradient(ellipse at 0% 100%, rgba(0,0,0,.10) 0%, transparent 55%);
  }
  .hero-content > *{ position:relative; z-index:1 }

  .hero-eyebrow{
    font-size:11px; letter-spacing:.32em; text-transform:uppercase; font-weight:400;
    opacity:0; transform:translateY(8px); animation:rise .8s .2s ease forwards;
    display:flex; align-items:center; gap:14px; color:var(--panel-text);
  }
  .hero-eyebrow .bar{ width:36px; height:1px; background:var(--panel-text); opacity:.8 }

  .hero-title{
    margin-top:46px; margin-bottom:28px;
    position:relative; display:block; color:var(--panel-text);
  }
  .hero-title .welcome{
    display:block;
    font-size:clamp(34px, 4.4vw, 60px); font-weight:300; letter-spacing:-.02em; line-height:1.05;
    opacity:0; animation:rise 1s .45s ease forwards;
    color:var(--panel-text);
  }
  .hero-title .brand{
    display:block; position:relative;
    font-size:clamp(54px, 7.8vw, 120px); font-weight:500; letter-spacing:-.035em;
    line-height:.92; margin-top:10px;
    opacity:0; animation:rise 1s .65s ease forwards;
    color:var(--orange);
    white-space:nowrap;
  }
  .hero-title .underline{ display:none }
  @keyframes expand{ to{ width:100% } }
  @keyframes rise{ to{ opacity:1; transform:translateY(0) } }

  .hero-subline{
    font-size:14px; letter-spacing:.04em; line-height:1.6; font-weight:400;
    max-width:520px; opacity:0; animation:rise .8s 1.6s ease forwards;
    color:var(--panel-text);
  }
  .hero-subline em{
    font-style:normal; color:var(--panel-text); padding:0 2px;
    border-bottom:1px solid currentColor;
  }

  .hero-meta{
    display:flex; align-items:center; gap:0;
    margin-top:48px; padding-top:24px; border-top:1px solid currentColor;
    opacity:0; animation:rise .8s 1.8s ease forwards;
    flex-wrap:wrap; color:var(--panel-text);
  }
  .hero-meta .spec{
    flex:1; min-width:140px; padding:6px 24px 6px 0;
    border-right:1px solid currentColor;
  }
  .hero-meta .spec:last-child{ border-right:0; padding-right:0 }
  .hero-meta .spec + .spec{ padding-left:24px }
  .spec .k{ font-size:10px; letter-spacing:.22em; text-transform:uppercase; opacity:.7; display:block; margin-bottom:6px; color:var(--panel-text) }
  .spec .v{ font-size:18px; font-weight:400; letter-spacing:-.005em; color:var(--panel-text); opacity:1 }
  .spec .v small{ font-size:11px; opacity:.8; letter-spacing:.05em; margin-left:3px; font-weight:300 }

  .hero-ctas{
    display:flex; gap:14px; margin-top:36px; flex-wrap:wrap;
    opacity:0; animation:rise .8s 2s ease forwards;
  }
  /* CTAs adapt to panel text color */
  .hero-content .btn{ color:var(--panel-text); border-color:currentColor }
  .hero-content .btn--fill{ background:var(--panel-text); border-color:var(--panel-text); color:var(--panel-bg) }
  .hero-content .btn--fill:hover{ filter:brightness(.92) }

  /* hero scroll cue — hidden, slider already has bottom UI */
  .scroll-cue{ display:none }

  @media (max-width:1180px) and (min-width:1101px){
    .hero-title .brand{ font-size:clamp(48px, 6.8vw, 100px) }
    .hero-title .welcome{ font-size:clamp(28px, 3.8vw, 50px) }
  }
  @media (max-width:1100px){
    .hero{ grid-template-columns:1fr; }
    .hero-slider{ height:54vh }
    .hero-content{ padding:60px var(--pad) 80px; min-height:0 }
    .hero-title .welcome{ font-size:clamp(26px, 5.5vw, 50px) }
    .hero-title .brand{ font-size:clamp(48px, 11vw, 100px) }
  }

  /* ============================================================
     2. BRAND STATEMENT
     ============================================================ */
  .statement{
    position:relative; padding: clamp(90px, 14vw, 200px) 0;
    background:var(--statement-bg); color:var(--statement-text); overflow:hidden;
    transition:background .35s ease, color .35s ease;
  }
  .statement .grid{
    display:grid; grid-template-columns: 1fr 1.05fr; gap: clamp(40px, 8vw, 120px);
    align-items:start;
  }
  .statement-figure{
    position:relative; aspect-ratio: 4/5; overflow:hidden;
    transform:translateY(60px); /* asymmetric drop */
  }
  .statement-figure img{
    width:100%; height:100%; object-fit:cover;
    filter:sepia(.35) saturate(.65) contrast(.95) brightness(.95);
  }
  .statement-figure .cap{
    position:absolute; left:0; bottom:0; right:0;
    padding:14px 18px; font-size:10px; letter-spacing:.22em; text-transform:uppercase;
    color:#fff; background:linear-gradient(0deg, rgba(0,0,0,.55), transparent);
    display:flex; justify-content:space-between;
  }

  .statement-copy{ position:relative; padding-top:0 }
  .statement-marker{
    display:flex; align-items:baseline; gap:20px; margin-bottom:36px;
  }
  .statement-marker .num{
    font-size:clamp(96px, 14vw, 200px); font-weight:300; line-height:.85; letter-spacing:-.04em;
    color:var(--statement-text);
    position:relative;
  }
  .statement-marker .num .dot{ color:var(--orange) }
  .statement-marker .label{
    font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--statement-text);
    writing-mode:vertical-rl; transform:rotate(180deg);
    border-left:1px solid var(--orange); padding-left:14px;
    height:120px; display:flex; align-items:center;
  }

  .statement-quote{
    font-size:clamp(34px, 4.8vw, 68px); line-height:1.05; font-weight:300; letter-spacing:-.025em;
    max-width:680px; color:var(--statement-text);
  }
  .statement-quote em{ font-style:normal; color:var(--orange) }

  .statement-body{
    margin-top:36px; font-size:16px; line-height:1.7; color:color-mix(in srgb, var(--statement-text) 75%, transparent); max-width:480px;
  }
  .statement-meta{
    margin-top:48px; display:flex; gap:48px; flex-wrap:wrap;
    padding-top:24px; border-top:1px solid color-mix(in srgb, var(--statement-text) 18%, transparent);
  }
  .statement-meta div{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--statement-text) }
  .statement-meta div b{ display:block; font-weight:500; font-size:24px; letter-spacing:-.01em; text-transform:none; margin-bottom:4px }

  @media (max-width:880px){
    .statement .grid{ grid-template-columns:1fr }
    .statement-figure{ transform:none; aspect-ratio:4/3 }
    .statement-marker .label{ display:none }
  }

  /* ============================================================
     3. PRODUCT GRID — horizontal scroll
     ============================================================ */
  .products{
    background:var(--products-bg); color:var(--products-text); padding:120px 0 100px; position:relative;
    border-top:1px solid color-mix(in srgb, var(--products-text) 12%, transparent);
    transition:background .35s ease, color .35s ease;
  }
  .products-head h2{ color:var(--products-text) }
  .products .eyebrow{ color:var(--products-text); opacity:.85 }
  .scroll-btn{
    width:48px; height:48px; border-radius:50%; border:1px solid var(--products-text); color:var(--products-text);
    display:grid; place-items:center; transition:all .2s ease; background:transparent;
  }
  .scroll-btn:hover{ background:var(--products-text); color:var(--products-bg) }
  .products-head{
    display:flex; align-items:flex-end; justify-content:space-between; gap:40px;
    padding-inline:var(--pad); margin-bottom:56px; max-width:var(--maxw); margin-inline:auto;
  }
  .products-head h2{
    font-size:clamp(36px, 5vw, 64px); font-weight:300; letter-spacing:-.025em; line-height:1; max-width:600px;
  }
  .products-head .nav-controls{ display:flex; gap:8px; align-items:center }
  .scroll-btn{
    width:48px; height:48px; border-radius:50%; border:1px solid var(--products-text); color:var(--products-text);
    display:grid; place-items:center; transition:all .2s ease; background:transparent;
  }
  .scroll-btn:hover{ background:var(--products-text); color:var(--products-bg) }
  .scroll-btn svg{ width:14px; height:14px }

  .product-track{
    display:flex; gap:24px; overflow-x:auto; padding:0 var(--pad) 30px;
    scroll-snap-type:x mandatory; scroll-padding-left:var(--pad);
    scrollbar-width:none;
  }
  .product-track::-webkit-scrollbar{ display:none }

  .product-card{
    flex:0 0 clamp(280px, 32vw, 460px); scroll-snap-align:start;
    position:relative; overflow:hidden; cursor:pointer;
  }
  .product-card .ph{
    aspect-ratio: 3/4; overflow:hidden; background:#eee;
  }
  .product-card .ph img{
    width:100%; height:100%; object-fit:cover;
    transition:transform 1s cubic-bezier(.2,.7,.2,1);
  }
  .product-card:hover .ph img{ transform:scale(1.04) }

  .product-card .num{
    position:absolute; top:18px; left:18px; z-index:2;
    font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:#fff; opacity:.85;
  }

  .product-card .overlay{
    position:absolute; left:0; right:0; bottom:0;
    padding:22px 22px 24px;
    display:flex; align-items:flex-end; justify-content:space-between; gap:16px;
    color:#fff;
    background:linear-gradient(0deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,.2) 60%, transparent 100%);
    transform:translateY(50%); transition:transform .4s ease;
  }
  .product-card:hover .overlay{ transform:translateY(0) }
  .product-card .overlay h3{
    font-size:24px; font-weight:400; letter-spacing:-.01em;
  }
  .product-card .overlay .sub{
    font-size:11px; letter-spacing:.22em; text-transform:uppercase; opacity:.7; margin-top:4px;
  }
  .product-card .cta{
    width:42px; height:42px; border-radius:50%; background:var(--orange);
    display:grid; place-items:center; color:#000; flex-shrink:0;
    transform:scale(.7); opacity:0; transition:all .35s ease;
  }
  .product-card:hover .cta{ transform:scale(1); opacity:1 }

  .product-foot{
    display:flex; justify-content:flex-end; padding:0 var(--pad);
    max-width:var(--maxw); margin:24px auto 0;
    font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:#666;
  }

  /* ============================================================
     4. 13 LAYERS — editorial infographic (themed)
     ============================================================ */
  .layers{
    background:var(--layers-bg); padding:130px 0 140px; position:relative;
    border-top:1px solid color-mix(in srgb, var(--layers-text) 12%, transparent);
    color:var(--layers-text);
    transition:background .35s ease, color .35s ease;
  }
  .layers .eyebrow{ color:var(--layers-text); opacity:.85 }
  .layers-head{
    display:grid; grid-template-columns:1fr 1.4fr; gap:60px; align-items:end;
    padding-inline:var(--pad); margin-bottom:80px; max-width:var(--maxw); margin-inline:auto;
  }
  .layers-head .left{ display:flex; flex-direction:column; gap:14px }
  .layers-head h2{
    font-size:clamp(40px, 6vw, 88px); font-weight:300; letter-spacing:-.03em; line-height:.95; color:var(--layers-text);
  }
  .layers-head h2 em{ font-style:normal; color:#000 }
  .layers-head .right{
    font-size:15px; line-height:1.7; color:color-mix(in srgb, var(--layers-text) 88%, transparent); max-width:520px;
  }
  .layers-head .right .pill-meta{
    margin-top:18px; display:inline-flex; gap:24px; font-size:11px;
    letter-spacing:.22em; text-transform:uppercase; color:var(--layers-text);
  }
  .layers-head .right .pill-meta span{ position:relative; padding-left:14px }
  .layers-head .right .pill-meta span::before{
    content:""; position:absolute; left:0; top:50%; width:6px; height:6px; border-radius:50%;
    background:#000; transform:translateY(-50%);
  }

  .layer-track-wrap{
    position:relative; padding-inline:var(--pad); max-width:var(--maxw); margin-inline:auto;
  }
  .layer-track{
    display:flex; gap:0; overflow-x:auto; scrollbar-width:none;
    padding-bottom:30px; position:relative;
  }
  .layer-track::-webkit-scrollbar{ display:none }

  .layer-card{
    flex:0 0 clamp(180px, 18vw, 230px);
    position:relative; padding:28px 22px 28px 0;
    border-top:1px solid var(--layers-text); color:var(--layers-text);
  }
  .layer-card::before{
    content:""; position:absolute; top:-5px; left:0;
    width:9px; height:9px; border-radius:50%; background:var(--layers-text);
  }
  .layer-card.is-spring::before,
  .layer-card.is-memory::before{ background:#000 }

  .layer-card .idx{
    font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:color-mix(in srgb, var(--layers-text) 70%, transparent);
    margin-bottom:10px;
  }
  .layer-card .idx b{ color:var(--layers-text); font-weight:400 }
  .layer-card h4{
    font-size:18px; font-weight:400; letter-spacing:-.01em; line-height:1.2;
    margin-bottom:6px; color:var(--layers-text);
  }
  .layer-card .gr{
    font-size:13px; color:color-mix(in srgb, var(--layers-text) 85%, transparent); line-height:1.5; min-height:38px;
  }
  .layer-card .mm{
    margin-top:18px; font-size:11px; letter-spacing:.18em; text-transform:uppercase;
    display:flex; justify-content:space-between; color:var(--layers-text); padding-top:8px;
    border-top:1px solid color-mix(in srgb, var(--layers-text) 25%, transparent);
  }
  .layer-card .mm b{ font-weight:500 }

  .layer-scale{
    margin-top:8px; padding-inline:var(--pad); max-width:var(--maxw); margin-inline:auto;
    display:flex; justify-content:space-between; font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:color-mix(in srgb, var(--layers-text) 75%, transparent);
  }

  @media (max-width:880px){
    .layers-head{ grid-template-columns:1fr; gap:30px }
  }

  /* ============================================================
     5. WHY — 3 USPs
     ============================================================ */
  .why{
    background:var(--why-bg); color:var(--why-text); padding: 130px 0 140px; position:relative;
    border-top:1px solid color-mix(in srgb, var(--why-text) 12%, transparent);
    transition:background .35s ease, color .35s ease;
  }
  .why-eyebrow{
    text-align:center; margin-bottom:30px;
    font-size:11px; letter-spacing:.32em; text-transform:uppercase; color:var(--why-text);
    display:flex; align-items:center; justify-content:center; gap:14px;
  }
  .why-eyebrow::before, .why-eyebrow::after{
    content:""; width:40px; height:1px; background:var(--orange);
  }
  .why-title{
    text-align:center; font-size:clamp(32px, 4vw, 56px); font-weight:300; letter-spacing:-.025em;
    line-height:1.1; max-width:880px; margin: 0 auto 100px; color:var(--why-text);
  }
  .why-grid{
    display:grid; grid-template-columns:repeat(3,1fr);
    border-top:1px solid color-mix(in srgb, var(--why-text) 12%, transparent);
  }
  .usp{
    padding:60px 40px 60px 40px;
    border-right:1px solid color-mix(in srgb, var(--why-text) 12%, transparent);
    display:flex; flex-direction:column; gap:18px;
    min-height:340px; position:relative; color:var(--why-text);
  }
  .usp:last-child{ border-right:0 }
  .usp .glyph{
    font-size:clamp(80px, 9vw, 130px); font-weight:300; line-height:.85; letter-spacing:-.04em;
    color:var(--why-text);
  }
  .usp .glyph .accent{ color:var(--orange); font-size:.55em; vertical-align:super; margin-left:2px; letter-spacing:0 }
  .usp h4{
    margin-top:auto; font-size:11px; letter-spacing:.22em; text-transform:uppercase; font-weight:500;
  }
  .usp p{ font-size:15px; line-height:1.65; color:color-mix(in srgb, var(--why-text) 78%, transparent); max-width:280px }
  .usp .sup{ font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:color-mix(in srgb, var(--why-text) 65%, transparent) }

  @media (max-width:880px){
    .why-grid{ grid-template-columns:1fr; border-top:0 }
    .usp{ border-right:0; border-top:1px solid color-mix(in srgb, var(--why-text) 12%, transparent); padding:48px var(--pad); min-height:0 }
  }

  /* ============================================================
     6. FOOTER CTA — LIGHT
     ============================================================ */
  .cta-final{
    position:relative; background:var(--cta-bg); color:var(--cta-text); overflow:hidden;
    padding: clamp(120px, 16vw, 200px) 0;
    border-top:1px solid color-mix(in srgb, var(--cta-text) 12%, transparent);
    transition:background .35s ease, color .35s ease;
  }
  .cta-final::before{
    content:""; position:absolute; inset:0;
    background:
      radial-gradient(circle at 85% 110%, rgba(241,140,0,.18), transparent 55%),
      radial-gradient(circle at 10% -10%, rgba(241,140,0,.06), transparent 50%);
    pointer-events:none;
  }
  .cta-inner{
    position:relative; z-index:2; max-width:var(--maxw); margin-inline:auto;
    padding-inline:var(--pad);
    display:grid; grid-template-columns: 1fr auto; gap:60px; align-items:end;
  }
  .cta-final .eyebrow{ color:var(--cta-text); opacity:.6 }
  .cta-final h2{
    margin-top:18px;
    font-size:clamp(48px, 7vw, 120px); font-weight:300; letter-spacing:-.035em; line-height:.96;
    color:var(--cta-text);
  }
  .cta-final h2 em{ font-style:normal; color:var(--orange) }
  .cta-final .lead{
    margin-top:24px; font-size:16px; line-height:1.6; color:color-mix(in srgb, var(--cta-text) 75%, transparent); max-width:520px;
  }
  .cta-final .btn{ color:var(--cta-text); border-color:currentColor }
  .cta-final .btn--fill{ background:var(--orange); border-color:var(--orange); color:#000 }
  .cta-buttons{ display:flex; flex-direction:column; gap:18px; align-items:flex-end }

  .btn--xl{
    padding:22px 36px; font-size:13px; letter-spacing:.2em;
    border-radius:34px;
  }

  @media (max-width:880px){
    .cta-inner{ grid-template-columns:1fr }
    .cta-buttons{ align-items:flex-start }
  }

  /* ---------- full editorial footer (matches existing site) ---------- */
  .site-footer{
    background:var(--footer-bg); color:var(--footer-text); padding: 80px var(--pad) 32px;
    border-top:1px solid color-mix(in srgb, var(--footer-text) 12%, transparent);
    transition:background .35s ease, color .35s ease;
  }
  .site-footer .cols{
    max-width:var(--maxw); margin-inline:auto;
    display:grid; grid-template-columns: repeat(4, 1fr); gap:50px;
    padding-bottom:60px;
  }
  .site-footer h5{
    font-size:11px; letter-spacing:.22em; text-transform:uppercase; font-weight:500;
    margin-bottom:24px; color:var(--footer-text);
  }
  .site-footer ul{ list-style:none; display:flex; flex-direction:column; gap:14px }
  .site-footer ul a{
    font-size:15px; color:var(--footer-text); font-weight:400; letter-spacing:-.005em;
    position:relative; transition:color .2s;
  }
  .site-footer ul a:hover{ color:var(--orange) }

  .cert-badge{
    width:120px; height:120px; border-radius:50%; background:#1d4f9c; color:#fff;
    display:grid; place-items:center; text-align:center;
    font-size:10px; letter-spacing:.04em; text-transform:uppercase; line-height:1.05;
    border:2px solid #1d4f9c;
    position:relative;
  }
  .cert-badge::before{
    content:""; position:absolute; inset:5px; border-radius:50%; border:1px solid rgba(255,255,255,.4);
  }
  .cert-badge .inner{ display:flex; flex-direction:column; gap:4px; padding:0 6px; position:relative; z-index:1 }
  .cert-badge .iso{ font-size:9px; opacity:.85; letter-spacing:.08em }
  .cert-badge .main{ font-size:13px; font-weight:500; letter-spacing:.02em }
  .cert-badge .sub{ font-size:9px; opacity:.85; letter-spacing:.08em }

  .site-footer .bottom{
    max-width:var(--maxw); margin-inline:auto;
    display:flex; justify-content:space-between; align-items:flex-end; gap:30px; flex-wrap:wrap;
    padding-top:32px; border-top:1px solid color-mix(in srgb, var(--footer-text) 12%, transparent);
    font-size:13px; color:color-mix(in srgb, var(--footer-text) 70%, transparent);
  }
  .site-footer .brand-mark{ display:flex; flex-direction:column; gap:2px }
  .site-footer .brand-mark .logo{ font-size:24px }
  .site-footer .brand-mark small{ font-size:11px; letter-spacing:.18em; color:color-mix(in srgb, var(--footer-text) 65%, transparent); text-transform:lowercase; margin-left:0; opacity:.9; padding-left:2px }

  @media (max-width:880px){
    .site-footer .cols{ grid-template-columns:1fr 1fr; gap:40px }
  }
  @media (max-width:520px){
    .site-footer .cols{ grid-template-columns:1fr }
  }
/* ── Full-bleed breakout (sections need this) ── */
.hero,
.statement,
.products,
.layers,
.why,
.cta-final,
.site-footer {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  box-sizing: border-box !important;
}
.elementor-column-wrap,
.elementor-widget-wrap,
.elementor-widget-html,
.elementor-column,
.elementor-section { overflow: visible !important; }

/* ── CHIC STROM single line ── */
.hero-title .brand {
  white-space: nowrap !important;
  font-size: clamp(36px, 5.2vw, 90px) !important;
}
.hero-title .welcome { font-size: clamp(28px, 3.4vw, 52px) !important; }

/* ── Admin bar ── */
.admin-bar .nav { top: 32px !important; }
@media screen and (max-width: 782px) { .admin-bar .nav { top: 46px !important; } }
/* ── Why section alignment ── */
section.why { padding-left: 0 !important; padding-right: 0 !important; }
section.why .why-eyebrow,
section.why .why-title {
  padding-left: clamp(20px,4vw,56px);
  padding-right: clamp(20px,4vw,56px);
  box-sizing: border-box;
}
section.why .why-grid {
  display: grid !important;
  grid-template-columns: repeat(3,1fr) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
section.why .usp { min-width: 0; }
/* ── Why grid — constrained & centered (matches design) ── */
section.why { padding-left: 0 !important; padding-right: 0 !important; }
section.why .why-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  max-width: 1480px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-top: 1px solid rgba(0,0,0,.12) !important;
}
section.why .usp { min-width: 0 !important; }
/* ── Why: reset Eskil-injected margins/text-align ── */
section.why .usp { justify-content: flex-start !important; min-height: 340px !important; }
section.why .usp .glyph { margin: 0 !important; text-align: left !important; }
section.why .usp p { margin: 0 !important; text-align: left !important; }
section.why .usp h4 { margin: auto 0 0 0 !important; text-align: left !important; }
section.why .usp .sup { margin: 0 !important; text-align: left !important; }
/* ── Why section — full reset to match design (beats Eskil) ── */
section.why { padding-left: 0 !important; padding-right: 0 !important; }
section.why .why-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  width: 100% !important;
  border-top: 1px solid rgba(0,0,0,.12) !important;
}
section.why .why-grid .usp {
  padding: 60px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  min-height: 340px !important;
  justify-content: flex-start !important;
  border-right: 1px solid rgba(0,0,0,.12) !important;
  min-width: 0 !important;
}
section.why .why-grid .usp:last-child { border-right: 0 !important; }
section.why .why-grid .usp .glyph {
  white-space: nowrap !important;
  line-height: .85 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
section.why .why-grid .usp p {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  max-width: 280px !important;
}
section.why .why-grid .usp h4 {
  margin: auto 0 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
section.why .why-grid .usp .sup {
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}
/* ── Products shortcode (dynamic) wrapper ── */
.products .elementor-widget-shortcode { padding-bottom: 100px; }
.products .product-track { padding-top: 0; }
/* ── Products overlay — fix Eskil heading color injection ── */
.product-card .overlay h3 { color: #fff !important; }
.product-card .overlay .sub { color: rgba(255,255,255,.7) !important; }
.product-card .num { color: #fff !important; }
.product-card .cta { color: #000 !important; }
/* ── Native CTA widget overrides ── */
.cta-final.e-con { background: var(--cta-bg) !important; padding: clamp(120px,16vw,200px) 0 !important; position: relative; overflow: hidden; }
.cta-final .cta-inner.e-con { max-width: 1480px !important; margin: 0 auto !important; padding-inline: clamp(20px,4vw,56px) !important; display: flex !important; flex-wrap: wrap; gap: 60px; align-items: flex-end; justify-content: space-between; }
.cta-final .cta-copy { flex: 1 1 520px; }
.cta-final .eyebrow .elementor-heading-title { font-size: 11px !important; letter-spacing: .22em; text-transform: uppercase; font-weight: 400; color: var(--cta-text) !important; opacity: .6; }
.cta-final .cta-title .elementor-heading-title { font-size: clamp(48px,7vw,120px) !important; font-weight: 300 !important; letter-spacing: -.035em; line-height: .96 !important; color: var(--cta-text) !important; margin-top: 18px; }
.cta-final .cta-title em { font-style: normal; color: var(--orange) !important; }
.cta-final .lead { margin-top: 24px; }
.cta-final .lead p { font-size: 16px !important; line-height: 1.6 !important; color: rgba(0,0,0,.75) !important; max-width: 520px; margin: 0 !important; }
.cta-final .cta-buttons { flex: 0 0 auto; display: flex !important; flex-direction: column; gap: 18px; align-items: flex-end; width: auto !important; }
.cta-final .cta-buttons .elementor-widget-button .elementor-button { display: inline-flex; align-items: center; gap: 14px; padding: 22px 36px !important; border-radius: 34px !important; border: 1px solid currentColor; text-transform: uppercase; letter-spacing: .2em; font-size: 13px; font-weight: 500; background: transparent; color: var(--cta-text); transition: all .25s ease; }
.cta-final .cta-buttons .btn--fill .elementor-button { background: var(--orange) !important; border-color: var(--orange) !important; color: #000 !important; }
.cta-final .cta-buttons .elementor-button:hover { transform: translateX(2px); }
/* ── Native CTA widget overrides ── */
.cta-final.e-con { background: var(--cta-bg) !important; padding: clamp(120px,16vw,200px) 0 !important; position: relative; overflow: hidden; }
.cta-final .cta-inner.e-con { max-width: 1480px !important; margin: 0 auto !important; padding-inline: clamp(20px,4vw,56px) !important; display: flex !important; flex-wrap: wrap; gap: 60px; align-items: flex-end; justify-content: space-between; }
.cta-final .cta-copy { flex: 1 1 520px; }
.cta-final .eyebrow .elementor-heading-title { font-size: 11px !important; letter-spacing: .22em; text-transform: uppercase; font-weight: 400; color: var(--cta-text) !important; opacity: .6; }
.cta-final .cta-title .elementor-heading-title { font-size: clamp(48px,7vw,120px) !important; font-weight: 300 !important; letter-spacing: -.035em; line-height: .96 !important; color: var(--cta-text) !important; margin-top: 18px; }
.cta-final .cta-title em { font-style: normal; color: var(--orange) !important; }
.cta-final .lead { margin-top: 24px; }
.cta-final .lead p { font-size: 16px !important; line-height: 1.6 !important; color: rgba(0,0,0,.75) !important; max-width: 520px; margin: 0 !important; }
.cta-final .cta-buttons { flex: 0 0 auto; display: flex !important; flex-direction: column; gap: 18px; align-items: flex-end; width: auto !important; }
.cta-final .cta-buttons .elementor-widget-button .elementor-button { display: inline-flex; align-items: center; gap: 14px; padding: 22px 36px !important; border-radius: 34px !important; border: 1px solid currentColor; text-transform: uppercase; letter-spacing: .2em; font-size: 13px; font-weight: 500; background: transparent; color: var(--cta-text); transition: all .25s ease; }
.cta-final .cta-buttons .btn--fill .elementor-button { background: var(--orange) !important; border-color: var(--orange) !important; color: #000 !important; }
.cta-final .cta-buttons .elementor-button:hover { transform: translateX(2px); }
/* ── Native CTA (ID-scoped) ── */
#ctaFinal { background: var(--cta-bg) !important; padding: clamp(120px,16vw,200px) 0 !important; position: relative; overflow: hidden; max-width: 100% !important; }
#ctaFinal::before { content:''; position:absolute; inset:0; pointer-events:none; background: radial-gradient(circle at 85% 110%, rgba(241,140,0,.18), transparent 55%), radial-gradient(circle at 10% -10%, rgba(241,140,0,.06), transparent 50%); }
#ctaInner { max-width: 1480px !important; margin: 0 auto !important; padding-inline: clamp(20px,4vw,56px) !important; display: flex !important; flex-direction: row !important; flex-wrap: wrap; gap: 60px; align-items: flex-end; justify-content: space-between; position: relative; z-index: 2; }
#ctaCopy { flex: 1 1 520px; display: flex; flex-direction: column; }
#ctaCopy .eyebrow .elementor-heading-title { font-size: 11px !important; letter-spacing: .22em; text-transform: uppercase; font-weight: 400 !important; color: #000 !important; opacity: .6; }
#ctaCopy .cta-title .elementor-heading-title { font-size: clamp(48px,7vw,120px) !important; font-weight: 300 !important; letter-spacing: -.035em; line-height: .96 !important; color: #000 !important; margin-top: 18px; }
#ctaCopy .cta-title em { font-style: normal; color: var(--orange) !important; }
#ctaCopy .cta-lead { margin-top: 24px; }
#ctaCopy .cta-lead p { font-size: 16px !important; line-height: 1.6 !important; color: rgba(0,0,0,.75) !important; max-width: 520px; margin: 0 !important; }
#ctaButtons { flex: 0 0 auto; display: flex !important; flex-direction: column; gap: 18px; align-items: flex-end; }
#ctaButtons .elementor-button { display: inline-flex !important; align-items: center; gap: 14px; padding: 22px 36px !important; border-radius: 34px !important; border: 1px solid #000 !important; text-transform: uppercase; letter-spacing: .2em; font-size: 13px !important; font-weight: 500 !important; background: transparent !important; color: #000 !important; transition: all .25s ease; }
#ctaButtons .csbtn-fill .elementor-button { background: var(--orange) !important; border-color: var(--orange) !important; color: #000 !important; }
#ctaButtons .elementor-button:hover { transform: translateX(2px); }
/* ── Native Statement ── */
#stmt { background: var(--statement-bg) !important; padding: clamp(90px,14vw,200px) 0 !important; max-width: 100% !important; }
#stmtGrid { max-width: 1480px !important; margin: 0 auto !important; padding-inline: clamp(20px,4vw,56px) !important; display: flex !important; flex-direction: row !important; gap: clamp(40px,8vw,120px); align-items: flex-start; flex-wrap: wrap; }
#stmtFig { flex: 1 1 380px; position: relative; }
#stmtFig .stmt-img img { width: 100%; aspect-ratio: 4/5; object-fit: cover; filter: sepia(.35) saturate(.65) contrast(.95) brightness(.95); display:block; }
#stmtFig .stmt-cap { position: absolute; left:0; right:0; bottom:0; padding:14px 18px; display:flex; justify-content:space-between; font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:#fff; background:linear-gradient(0deg, rgba(0,0,0,.55), transparent); }
#stmtCopy { flex: 1 1 440px; display: flex !important; flex-direction: column; }
#stmtMarker { display: flex !important; flex-direction: row !important; align-items: baseline; gap: 20px; margin-bottom: 36px; width: auto !important; }
#stmtMarker .stmt-num .elementor-heading-title { font-size: clamp(96px,14vw,200px) !important; font-weight:300 !important; line-height:.85 !important; letter-spacing:-.04em; color:#000 !important; }
#stmtMarker .stmt-num .dot { color: var(--orange) !important; }
#stmtMarker .stmt-label { writing-mode: vertical-rl; transform: rotate(180deg); border-left:1px solid var(--orange); padding-left:14px; height:120px; display:flex; align-items:center; font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:#000; }
#stmtMarker .stmt-label p { margin:0 !important; }
#stmtCopy .stmt-quote .elementor-heading-title { font-size: clamp(34px,4.8vw,68px) !important; line-height:1.05 !important; font-weight:300 !important; letter-spacing:-.025em; max-width:680px; color:#000 !important; }
#stmtCopy .stmt-quote em { font-style: normal; color: var(--orange) !important; }
#stmtCopy .stmt-body { margin-top: 36px; }
#stmtCopy .stmt-body p { font-size:16px !important; line-height:1.7 !important; color: rgba(0,0,0,.75) !important; max-width:480px; margin:0 !important; }
#stmtCopy .stmt-meta { margin-top:48px; padding-top:24px; border-top:1px solid rgba(0,0,0,.18); display:flex; gap:48px; flex-wrap:wrap; }
#stmtCopy .stmt-meta .m { font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#000; }
#stmtCopy .stmt-meta .m b { display:block; font-weight:500; font-size:24px; letter-spacing:-.01em; text-transform:none; margin-bottom:4px; }
@media (max-width:880px){ #stmtMarker .stmt-label { display:none; } }
/* ── Native Why ── */
#whySec { background: var(--why-bg) !important; padding: 130px 0 140px !important; max-width: 100% !important; border-top: 1px solid rgba(0,0,0,.12); }
#whySec .why-eyebrow2 .elementor-heading-title { text-align:center; font-size:11px !important; letter-spacing:.32em; text-transform:uppercase; color:#000 !important; display:flex; align-items:center; justify-content:center; gap:14px; font-weight:400 !important; }
#whySec .why-eyebrow2 .elementor-heading-title::before, #whySec .why-eyebrow2 .elementor-heading-title::after { content:''; width:40px; height:1px; background:var(--orange); }
#whySec .why-title2 .elementor-heading-title { text-align:center; font-size:clamp(32px,4vw,56px) !important; font-weight:300 !important; letter-spacing:-.025em; line-height:1.1 !important; max-width:880px; margin:30px auto 100px !important; color:#000 !important; }
#whyGrid2 { display:grid !important; grid-template-columns:repeat(3,1fr) !important; max-width:1480px !important; margin:0 auto !important; padding:0 !important; width:100% !important; border-top:1px solid rgba(0,0,0,.12); }
#whyGrid2 > .e-con { padding:60px 40px !important; display:flex !important; flex-direction:column !important; gap:18px; min-height:340px; justify-content:flex-start; border-right:1px solid rgba(0,0,0,.12); min-width:0; }
#whyGrid2 > .e-con:last-child { border-right:0; }
#whyGrid2 .usp-glyph { margin:0 !important; }
#whyGrid2 .usp-glyph p { font-size:clamp(80px,9vw,130px) !important; font-weight:300 !important; line-height:.85 !important; letter-spacing:-.04em; color:#000 !important; margin:0 !important; white-space:nowrap; text-align:left; }
#whyGrid2 .usp-glyph .accent { color:var(--orange) !important; font-size:.55em; vertical-align:super; margin-left:2px; letter-spacing:0; }
#whyGrid2 .usp-p p { font-size:15px !important; line-height:1.65 !important; color:rgba(0,0,0,.78) !important; max-width:280px; margin:0 !important; text-align:left; }
#whyGrid2 .usp-h4 { margin-top:auto !important; }
#whyGrid2 .usp-h4 .elementor-heading-title { font-size:11px !important; letter-spacing:.22em; text-transform:uppercase; font-weight:500 !important; color:#000 !important; text-align:left; }
#whyGrid2 .usp-sup, #whyGrid2 .usp-sup p { font-size:10px !important; letter-spacing:.22em; text-transform:uppercase; color:rgba(0,0,0,.65) !important; margin:0 !important; text-align:left; }
@media (max-width:880px){ #whyGrid2 { grid-template-columns:1fr !important; } #whyGrid2 > .e-con { border-right:0; border-top:1px solid rgba(0,0,0,.12); } }
/* ── Native Why ── */
#whySec { background: var(--why-bg) !important; padding: 130px 0 140px !important; max-width: 100% !important; border-top: 1px solid rgba(0,0,0,.12); }
#whySec .why-eyebrow2 .elementor-heading-title { text-align:center; font-size:11px !important; letter-spacing:.32em; text-transform:uppercase; color:#000 !important; display:flex; align-items:center; justify-content:center; gap:14px; font-weight:400 !important; }
#whySec .why-eyebrow2 .elementor-heading-title::before, #whySec .why-eyebrow2 .elementor-heading-title::after { content:''; width:40px; height:1px; background:var(--orange); }
#whySec .why-title2 .elementor-heading-title { text-align:center; font-size:clamp(32px,4vw,56px) !important; font-weight:300 !important; letter-spacing:-.025em; line-height:1.1 !important; max-width:880px; margin:30px auto 100px !important; color:#000 !important; }
#whyGrid2 { display:grid !important; grid-template-columns:repeat(3,1fr) !important; max-width:1480px !important; margin:0 auto !important; padding:0 !important; width:100% !important; border-top:1px solid rgba(0,0,0,.12); }
#whyGrid2 > .e-con { padding:60px 40px !important; display:flex !important; flex-direction:column !important; gap:18px; min-height:340px; justify-content:flex-start; border-right:1px solid rgba(0,0,0,.12); min-width:0; }
#whyGrid2 > .e-con:last-child { border-right:0; }
#whyGrid2 .usp-glyph { margin:0 !important; }
#whyGrid2 .usp-glyph, #whyGrid2 .usp-glyph .elementor-widget-container { font-size:clamp(80px,9vw,130px) !important; font-weight:300 !important; line-height:.85 !important; letter-spacing:-.04em; color:#000 !important; margin:0 !important; white-space:nowrap; text-align:left; }
#whyGrid2 .usp-glyph .accent { color:var(--orange) !important; font-size:.55em; vertical-align:super; margin-left:2px; letter-spacing:0; }
#whyGrid2 .usp-p p { font-size:15px !important; line-height:1.65 !important; color:rgba(0,0,0,.78) !important; max-width:280px; margin:0 !important; text-align:left; }
#whyGrid2 .usp-h4 { margin-top:auto !important; }
#whyGrid2 .usp-h4 .elementor-heading-title { font-size:11px !important; letter-spacing:.22em; text-transform:uppercase; font-weight:500 !important; color:#000 !important; text-align:left; }
#whyGrid2 .usp-sup, #whyGrid2 .usp-sup p { font-size:10px !important; letter-spacing:.22em; text-transform:uppercase; color:rgba(0,0,0,.65) !important; margin:0 !important; text-align:left; }
@media (max-width:880px){ #whyGrid2 { grid-template-columns:1fr !important; } #whyGrid2 > .e-con { border-right:0; border-top:1px solid rgba(0,0,0,.12); } }
/* ── Products design (full-bleed slider) ── */
/* Track widget breaks out full viewport width, starts flush-left with pad */
.products .elementor-widget-shortcode { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; padding: 0 !important; }
#productTrack { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 0 30px clamp(20px,4vw,56px) !important; box-sizing: border-box; }
/* Card aspect + sizing (taller, design-faithful) */
.product-card { flex: 0 0 clamp(280px,30vw,460px) !important; aspect-ratio: auto !important; }
.product-card .ph { aspect-ratio: 3/4 !important; }
/* num always visible top-left even on light photos */
.product-card .num { color: #fff !important; text-shadow: 0 1px 6px rgba(0,0,0,.45); opacity: 1 !important; }
/* faint top gradient so num reads on any photo */
.product-card .ph::after { content:''; position:absolute; inset:0 0 auto 0; height:90px; background:linear-gradient(180deg, rgba(0,0,0,.35), transparent); pointer-events:none; z-index:1; }
.product-card .ph { position: relative; }
/* hide drag hint foot (also removed from shortcode) */
.product-foot { display: none !important; }
/* ── Products design (full-bleed slider) ── */
.cs-track-widget { position: relative; width: 100vw !important; max-width: 100vw !important; left: 50%; margin-left: -50vw !important; padding: 0 !important; }
.cs-track-widget .elementor-widget-container { padding: 0 !important; }
#productTrack { width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 0 30px clamp(20px,4vw,56px) !important; box-sizing: border-box; }
.product-card { flex: 0 0 clamp(280px,30vw,460px) !important; aspect-ratio: auto !important; }
.product-card .ph { aspect-ratio: 3/4 !important; position: relative; }
.product-card .num { color: #fff !important; text-shadow: 0 1px 6px rgba(0,0,0,.45); opacity: 1 !important; z-index: 2; }
.product-card .ph::after { content:''; position:absolute; inset:0 0 auto 0; height:90px; background:linear-gradient(180deg, rgba(0,0,0,.35), transparent); pointer-events:none; z-index:1; }
.product-foot { display: none !important; }
/* ── Products title lift (raise titles off the bottom edge) ── */
.product-card .overlay { padding-bottom: 40px !important; }
.product-card .overlay h3 { line-height: 1.1; }
/* ── Statement figure fix (image fills, caption pinned inside) ── */
#stmtFig { position: relative !important; aspect-ratio: 4/5; overflow: hidden; }
#stmtFig .stmt-img, #stmtFig .stmt-img .elementor-widget-container, #stmtFig .stmt-img img {
  width: 100% !important; height: 100% !important; margin: 0 !important;
}
#stmtFig .stmt-img img { object-fit: cover !important; aspect-ratio: auto !important; display: block; }
#stmtFig .stmt-cap {
  position: absolute !important; left: 0; right: 0; bottom: 0; z-index: 3; margin: 0 !important; width: 100% !important;
}

/* ── Mobile fix α: hero-meta 3 στοιχεία σε 1 γραμμή ── */
@media (max-width:880px){
  .hero-meta{ flex-wrap:nowrap; }
  .hero-meta .spec{ min-width:0; padding-right:10px; }
  .hero-meta .spec + .spec{ padding-left:10px; }
  .spec .v{ font-size:14px; }
}/* End custom CSS */