
/* ===== BEGIN index.css ===== */
:root{--accent:#6D3B3B;--ink:#1D1010;--muted:#854848;--bg:#FBEFEF;--surface:#F2E8E8;--line:rgba(29,16,16,.12);--shadow:0 20px 60px rgba(29,16,16,.09);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,sans-serif;line-height:1.6;overflow-x:hidden}body.menu-open{overflow:hidden}a{text-decoration:none;color:inherit}button,input{font:inherit}button{cursor:pointer;border:0}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:1000;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav-wrap{width:min(1320px,calc(100% - 40px));min-height:78px;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:10px;font-family:"Space Grotesk";font-weight:700;letter-spacing:.08em;white-space:nowrap}.brand-mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--ink);color:var(--accent);font-size:15px}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:5px}.nav-link,.has-dropdown>button{background:none;padding:11px 12px;color:var(--ink);font-weight:600;font-size:14px;display:flex;align-items:center;gap:7px;white-space:nowrap}.nav-link i{font-size:9px}.nav-link:hover,.nav-link.active,.has-dropdown:hover>button{color:#623434}.nav-item{position:relative}.dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(-5px);min-width:190px;padding:8px;background:var(--bg);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;opacity:0;visibility:hidden;transition:.2s ease}.nav-item:hover .dropdown,.nav-item.open .dropdown{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.dropdown a{display:block;padding:10px 12px;border-radius:9px;font-size:13px}.dropdown a:hover,.dropdown a.active{background:var(--surface)}.nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.icon-btn,.pill-btn{background:var(--surface);color:var(--ink);height:38px;min-width:38px;border-radius:11px;display:grid;place-items:center}.pill-btn{padding:0 11px;font-size:11px;font-weight:800}.cart-btn{position:relative}.cart-count{position:absolute;top:-5px;right:-5px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#EF4444;color:#FFFFFF;font-size:9px;font-weight:800}.login-link{font-size:14px;font-weight:700;padding:10px 14px}.menu-btn{display:none;background:var(--surface);width:40px;height:40px;border-radius:11px}.mobile-drawer{display:none}.hero{min-height:calc(100vh - 78px);display:grid;align-items:center;background:radial-gradient(circle at 78% 45%,rgba(235,167,167,.42),transparent 34%),var(--bg);position:relative;overflow:hidden}.hero-grid{width:min(1240px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:75px 0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:#623434}.eyebrow>span{display:inline-block;width:22px;height:1px;background:currentColor;vertical-align:middle;margin-right:8px}.hero h1{font:700 clamp(48px,6vw,82px)/.96 "Space Grotesk";letter-spacing:-.055em;margin:20px 0}.hero h1 em,.section-head em,.repair-copy em{font-style:normal;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:12px;text-underline-offset:-3px}.hero-copy>p{font-size:18px;color:var(--muted);max-width:570px}.hero-actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:13px;font-weight:800;font-size:13px;transition:.25s ease}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(29,16,16,.16)}.btn-ghost{border:1px solid var(--line)}.btn-ghost:hover{background:var(--surface)}.hero-trust{display:flex;gap:22px;font-size:12px;color:var(--muted)}.hero-trust i{margin-right:5px;color:#8E4C4C}.hero-visual{height:560px;position:relative;display:grid;place-items:center}.glow{position:absolute;width:420px;height:420px;border-radius:50%;background:var(--accent);filter:blur(5px);opacity:.65}.phone-scene{position:relative;width:300px;height:440px;perspective:1000px}.phone{position:absolute;inset:15px;border:9px solid #1D1010;border-radius:42px;overflow:hidden;box-shadow:0 35px 80px rgba(0,0,0,.28);transform:rotate(-7deg) rotateY(-13deg);background:#160C0C}.phone img{width:100%;height:100%;object-fit:cover}.orbit{position:absolute;border:1px solid rgba(29,16,16,.2);border-radius:50%;inset:-35px;transform:rotate(-25deg) scaleX(1.3)}.orbit-b{inset:-80px;transform:rotate(55deg) scaleX(1.3)}.float-tag{position:absolute;z-index:3;background:rgba(251,245,245,.9);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow);padding:13px 15px;border-radius:15px;display:grid}.tag-one{top:90px;left:20px}.tag-two{right:0;bottom:90px}.float-tag small{font-size:10px;color:var(--muted)}.float-tag strong{font-size:12px}.category-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.category-strip .container{display:grid;grid-template-columns:1fr 2.6fr;align-items:center}.category-intro{padding:25px 0}.category-intro span{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#623434}.category-intro h2{font:600 21px "Space Grotesk";margin:4px 0}.category-list{display:grid;grid-template-columns:repeat(4,1fr)}.category-list a{min-height:105px;padding:20px;border-left:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-content:center;transition:.25s}.category-list a:hover{background:var(--bg);transform:translateY(-3px)}.category-list span{grid-row:1/3;width:40px;height:40px;border-radius:12px;background:var(--bg);display:grid;place-items:center}.category-list b{font-size:13px}.category-list small{font-size:11px;color:var(--muted)}.section-pad{padding:100px 0}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-head h2,.repair-copy h2,.booking h2{font:600 clamp(32px,4vw,52px)/1.03 "Space Grotesk";letter-spacing:-.04em;margin:12px 0 0;max-width:680px}.text-link{font-size:13px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:5px}.product-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.product{background:var(--surface);border-radius:var(--radius);overflow:hidden;transition:.35s}.product:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.product-featured{grid-row:span 2}.product-image{height:275px;position:relative;overflow:hidden;background:#E7D3D3}.product-featured .product-image{height:480px}.product-image img{width:100%;height:100%;object-fit:cover;transition:.6s}.product:hover .product-image img{transform:scale(1.06)}.badge{position:absolute;z-index:2;top:16px;left:16px;background:var(--ink);color:var(--bg);font-size:9px;letter-spacing:.12em;font-weight:800;padding:7px 9px;border-radius:7px}.badge.muted{background:rgba(251,245,245,.88);color:var(--ink)}.product-info{padding:18px;display:grid;grid-template-columns:1fr auto;gap:9px}.product-info small{font-size:10px;color:var(--muted)}.product-info h3{font:600 19px "Space Grotesk";margin:3px 0}.product-info>strong{font-size:16px}.product-meta{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:5px;font-size:11px}.product-meta span{color:#623434}.product-meta b{color:var(--muted)}.add-cart{background:none;font-weight:800;font-size:11px;border-bottom:1px solid var(--ink);padding:2px}.repair-section{background:var(--ink);color:var(--bg)}.repair-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.repair-copy p{color:rgba(251,245,245,.65);max-width:480px}.repair-copy .eyebrow{color:var(--accent)}.timeline{position:relative;padding-left:50px}.timeline-line{position:absolute;left:14px;top:10px;bottom:10px;width:1px;background:rgba(251,245,245,.2)}.step{position:relative;display:grid;grid-template-columns:45px 1fr;gap:18px;padding:0 0 32px}.step:last-child{padding-bottom:0}.step>span{width:30px;height:30px;border:1px solid rgba(251,245,245,.35);border-radius:50%;display:grid;place-items:center;font-size:9px;z-index:1;background:var(--ink)}.step h3{font:600 19px "Space Grotesk";margin:2px 0}.step p{margin:0;color:rgba(251,245,245,.55);font-size:13px}.brands{background:var(--surface)}.brand-grid{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-grid>div{height:130px;display:flex;align-items:center;justify-content:center;gap:5px;border-right:1px solid var(--line);font:600 18px "Space Grotesk";filter:grayscale(1);opacity:.75;transition:.2s}.brand-grid>div:last-child{border-right:0}.brand-grid>div:hover{filter:none;opacity:1;transform:translateY(-3px)}.brand-grid i{font-size:28px}.brand-grid small{font-size:10px;align-self:flex-end;margin-bottom:34px}.stats-testimonials{background:var(--bg)}.stats-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center}.stats{display:grid;grid-template-columns:1fr 1fr;gap:25px}.stat{border-top:1px solid var(--line);padding-top:18px}.stat strong{display:block;font:600 clamp(34px,5vw,58px) "Space Grotesk"}.stat span{font-size:12px;color:var(--muted)}.testimonial{padding:40px;background:var(--surface);border-radius:var(--radius);position:relative}.quote-mark{font:700 75px Georgia;line-height:.6;color:#623434}.testimonial blockquote{font:500 25px/1.35 "Space Grotesk";margin:20px 0 30px;letter-spacing:-.02em}.reviewer{display:flex;align-items:center;gap:10px}.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--accent);font-size:11px;font-weight:800}.reviewer strong{display:block;font-size:12px}.reviewer small{display:block;font-size:10px;color:var(--muted)}.stars{margin-left:auto;color:#623434;font-size:12px}.newsletter{padding-top:20px}.booking{background:var(--accent);border-radius:30px;padding:55px;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.booking .eyebrow{color:#764040}.booking p{margin-bottom:0;color:rgba(29,16,16,.65)}.booking form label{display:block;font-size:11px;font-weight:800;margin-bottom:8px}.input-row{display:flex;gap:8px}.input-row input{flex:1;border:1px solid rgba(29,16,16,.25);background:rgba(255,255,255,.45);padding:14px;border-radius:12px;outline:none}.input-row input:focus{border-color:var(--ink)}.form-error{display:block;color:#EF4444;font-size:11px;min-height:17px;margin-top:6px}.booking-link{border-top:1px solid rgba(29,16,16,.18);margin-top:12px;padding-top:15px;font-size:11px;display:flex;justify-content:space-between}.booking-link a{font-weight:800}.footer{background:var(--ink);color:var(--bg);padding:70px 0 20px}.footer .brand-mark{background:var(--accent);color:var(--ink)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:45px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start}.footer p{color:rgba(251,245,245,.55);font-size:12px}.footer h3{font:600 14px "Space Grotesk"}.footer-grid a:not(.brand){font-size:12px;color:rgba(251,245,245,.65);margin:5px 0}.socials{display:flex;gap:8px;margin-top:15px}.socials a{width:32px;height:32px;border:1px solid rgba(251,245,245,.18);border-radius:9px;display:grid;place-items:center}.footer-bottom{margin-top:50px;padding-top:20px;border-top:1px solid rgba(251,245,245,.12);display:flex;justify-content:space-between;font-size:10px;color:rgba(251,245,245,.45)}.back-top{position:fixed;right:20px;bottom:20px;width:43px;height:43px;border-radius:12px;background:var(--accent);color:var(--ink);z-index:50;opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s}.back-top.show{opacity:1;visibility:visible;transform:none}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);background:var(--ink);color:var(--bg);padding:12px 18px;border-radius:12px;font-size:12px;opacity:0;pointer-events:none;transition:.25s;z-index:2000}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:1023px){.nav-wrap{grid-template-columns:1fr auto}.desktop-nav,.login-link{display:none}.nav-actions{grid-column:2}.menu-btn{display:grid;place-items:center}.hero-grid{gap:25px}.category-strip .container{grid-template-columns:1fr}.category-list a:first-child{border-left:0}.product-grid{grid-template-columns:1fr 1fr}.product-featured{grid-row:auto}.product-featured .product-image{height:360px}.booking{padding:40px}}@media(max-width:767px){.container,.nav-wrap,.hero-grid{width:min(100% - 28px,1180px)}.nav-wrap{min-height:68px;gap:8px}.brand{font-size:14px}.brand-mark{width:33px;height:33px}.nav-actions{gap:5px}.nav-actions .pill-btn{display:grid}.icon-btn,.pill-btn,.menu-btn{height:36px;min-width:36px}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:65px 0 50px}.hero h1{font-size:49px}.hero-copy>p{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.hero-trust{flex-direction:column;gap:8px}.hero-visual{height:410px}.phone-scene{transform:scale(.75)}.tag-one{left:0;top:45px}.tag-two{right:0;bottom:35px}.category-list{grid-template-columns:1fr 1fr}.category-list a{border-left:0;border-top:1px solid var(--line)}.category-list a:nth-child(odd){border-right:1px solid var(--line)}.section-pad{padding:65px 0}.section-head{display:block}.text-link{display:inline-block;margin-top:18px}.product-grid{grid-template-columns:1fr}.product-featured .product-image,.product-image{height:290px}.repair-layout,.stats-layout,.booking{grid-template-columns:1fr;gap:35px}.brand-grid{grid-template-columns:1fr 1fr}.brand-grid>div{border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.brand-grid>div:nth-child(2n){border-right:0}.stats{gap:15px}.testimonial blockquote{font-size:20px}.booking{padding:30px 22px}.input-row{flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}}@media(max-width:1023px){.mobile-drawer{position:fixed;inset:0;z-index:1500;background:var(--bg);height:100vh;width:100vw;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s cubic-bezier(.7,0,.2,1);overflow-y:auto;padding:18px 18px 22px}.mobile-drawer.open{transform:translateX(0)}.drawer-top{display:flex;justify-content:space-between;align-items:center;min-height:50px;border-bottom:1px solid var(--line)}.drawer-close{width:38px;height:38px;border-radius:10px;background:var(--surface);color:var(--ink)}.mobile-nav{padding:22px 0;display:flex;flex-direction:column}.mobile-nav>a,.mobile-group>button{padding:16px 4px;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:18px;font-family:"Space Grotesk";font-weight:600;color:var(--ink);display:flex;justify-content:space-between;align-items:center}.mobile-group>button i{font-size:11px;transition:.2s}.mobile-group.open>button i{transform:rotate(180deg)}.mobile-group>div{max-height:0;overflow:hidden;transition:max-height .28s ease;padding:0}.mobile-group.open>div{max-height:220px}.mobile-group>div a{padding:11px 16px;font-size:14px;color:var(--muted)}.drawer-login{margin-top:auto;background:var(--ink);color:var(--bg);padding:16px;border-radius:13px;text-align:center;font-weight:800;font-size:13px;flex:none}.site-header{z-index:1200}}

/* Responsive drawer alignment fix: vertical submenus and full-width menu rows */
@media (max-width:1023px){
  .mobile-nav{width:100%;padding:18px 0 24px;}
  .mobile-nav>a,
  .mobile-group>button{width:100%;min-height:62px;padding:18px 4px;border-bottom:1px solid var(--line);box-sizing:border-box;}
  .mobile-group{width:100%;}
  .mobile-group>div{width:100%;display:flex;flex-direction:column;align-items:stretch;}
  .mobile-group.open>div{max-height:260px;padding:4px 0 8px;}
  .mobile-group>div a{display:flex;width:100%;min-height:44px;align-items:center;padding:10px 18px;border-bottom:1px solid var(--line);box-sizing:border-box;color:var(--muted);font-size:14px;}
  .mobile-group>div a:last-child{border-bottom:0;}
  .mobile-group>div a:hover,.mobile-group>div a:focus-visible{background:var(--surface);color:var(--ink);}
  .mobile-group>button:focus-visible,.mobile-nav>a:focus-visible{outline:2px solid currentColor;outline-offset:-2px;}
}


/* =========================================================
   HERO V2 — SCROLLTRIGGER / GLOW / FLOATING
   ========================================================= */
.hero-v2{position:relative;min-height:calc(100vh - 78px);height:auto;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 76% 45%,rgba(235,167,167,.18),transparent 30%),radial-gradient(circle at 20% 80%,rgba(235,167,167,.08),transparent 28%),var(--bg)}
.hero-glow{position:absolute;border-radius:50%;pointer-events:none;z-index:-2;filter:blur(70px);will-change:transform}.hero-glow-a{width:430px;height:430px;right:10%;top:18%;background:var(--accent);opacity:.16}.hero-glow-b{width:260px;height:260px;left:8%;bottom:5%;background:var(--accent);opacity:.09}
.hero-orb{position:absolute;border:1px solid var(--line);border-radius:50%;pointer-events:none;z-index:-1}.orb-a{width:360px;height:360px;right:12%;top:14%}.orb-b{width:600px;height:600px;right:-12%;top:-12%;opacity:.45}
.hero-v2 .hero-grid{position:relative;z-index:2;width:min(1240px,calc(100% - 40px));margin:0 auto;padding:65px 0 50px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px;align-items:center}.hero-v2 .hero-copy{position:relative;z-index:4}.hero-v2 .hero-eyebrow{display:flex;align-items:center;gap:8px;opacity:0}.hero-v2 .hero-eyebrow>span{width:24px;height:1px;margin:0;background:currentColor}
.hero-title{margin:20px 0 24px;font-family:"Space Grotesk",sans-serif;font-size:clamp(50px,6vw,86px);line-height:.94;letter-spacing:-.065em;font-weight:700;max-width:720px;overflow:hidden}.hero-title span{display:block;color:var(--ink)}.hero-title-line{display:block;width:0;height:9px;margin-top:-5px;background:var(--accent);border-radius:999px}.hero-description{max-width:590px;margin:0;font-size:18px;line-height:1.7;color:var(--muted);opacity:0}.hero-v2 .hero-actions,.hero-v2 .hero-trust{opacity:0}
.hero-v2 .hero-btn{position:relative;overflow:hidden}.hero-v2 .hero-btn::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.12);transform:translateX(-105%);transition:transform .45s ease}.hero-v2 .hero-btn:hover::after{transform:translateX(105%)}
.hero-visual-v2{height:590px;position:relative;display:grid;place-items:center;perspective:1200px}.hero-light-ring{position:absolute;width:440px;height:440px;border-radius:50%;border:1px solid rgba(209,117,117,.25);box-shadow:0 0 80px rgba(209,117,117,.14),inset 0 0 70px rgba(209,117,117,.08);will-change:transform}.hero-product-stage{position:relative;width:360px;height:500px;transform-style:preserve-3d;will-change:transform}.hero-product-shadow{position:absolute;width:310px;height:120px;left:30px;bottom:10px;border-radius:50%;background:var(--accent);filter:blur(45px);opacity:.28;transform:rotate(-8deg)}
.hero-phone{position:absolute;overflow:hidden;border:9px solid #160C0C;border-radius:44px;background:#160C0C;box-shadow:0 45px 80px rgba(0,0,0,.28),0 0 50px rgba(209,117,117,.12);transform-style:preserve-3d}.hero-phone img,.hero-floating-phone img{width:100%;height:100%;object-fit:cover;display:block}.phone-main{width:285px;height:445px;left:35px;top:28px;z-index:4;transform:rotate(-7deg) rotateY(-14deg) translateZ(40px)}.hero-floating-phone{position:absolute;overflow:hidden;border:6px solid #160C0C;border-radius:30px;background:#160C0C;box-shadow:0 30px 60px rgba(0,0,0,.25);z-index:3}.phone-secondary{width:150px;height:235px;right:-12px;bottom:42px;transform:rotate(9deg) rotateY(12deg) translateZ(15px)}
.hero-ring{position:absolute;border:1px solid var(--line);border-radius:50%;pointer-events:none}.ring-one{width:430px;height:180px;left:-35px;top:155px;transform:rotate(-35deg)}.ring-two{width:500px;height:210px;left:-70px;top:130px;transform:rotate(35deg);opacity:.55}
.hero-floating-card{position:absolute;z-index:8;display:flex;align-items:center;gap:11px;padding:13px 15px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(18px);box-shadow:var(--shadow);will-change:transform}.rating-card{left:0;top:105px}.drop-card{right:-5px;bottom:95px;display:grid;gap:3px}.quality-card{left:35px;bottom:55px;font-size:11px;color:var(--muted)}.quality-card i{color:#623434}.floating-icon{width:35px;height:35px;border-radius:10px;display:grid;place-items:center;background:var(--accent);color:var(--ink)}.hero-floating-card strong{display:block;font-size:12px}.hero-floating-card small{display:block;font-size:9px;color:var(--muted)}.drop-card strong{font-size:11px}
.hero-scroll-indicator{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:5;display:flex;align-items:center;gap:9px;font-size:9px;letter-spacing:.16em;color:var(--muted);opacity:.7}.hero-scroll-indicator i{animation:heroScrollArrow 1.6s ease-in-out infinite}@keyframes heroScrollArrow{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
html.dark .hero-v2{background:radial-gradient(circle at 76% 45%,rgba(209,117,117,.18),transparent 31%),radial-gradient(circle at 20% 80%,rgba(209,117,117,.07),transparent 30%),var(--bg)}html.dark .hero-glow-a{opacity:.23}html.dark .hero-glow-b{opacity:.13}html.dark .hero-floating-card{background:rgba(33,18,18,.78)}html.dark .hero-phone,html.dark .hero-floating-phone{border-color:#080707}html.dark .hero-product-shadow{opacity:.42}
@media(max-width:1023px){.hero-v2{min-height:auto}.hero-v2 .hero-grid{padding:65px 0 45px;grid-template-columns:1fr 1fr;gap:25px}.hero-title{font-size:clamp(43px,7vw,68px)}.hero-description{font-size:16px}.hero-visual-v2{height:500px}.hero-product-stage{transform:scale(.84)}.hero-light-ring{transform:scale(.84)}.rating-card{left:-10px;top:70px}.drop-card{right:-10px;bottom:70px}.quality-card{left:0;bottom:25px}.hero-scroll-indicator{display:none}}
@media(max-width:767px){.hero-v2{min-height:auto}.hero-v2 .hero-grid{width:min(100% - 28px,1180px);padding:52px 0 25px;display:grid;grid-template-columns:1fr;gap:0}.hero-title{margin:17px 0 20px;font-size:clamp(43px,13vw,58px);line-height:.96}.hero-title-line{height:7px;margin-top:-3px}.hero-description{font-size:15px;line-height:1.65}.hero-v2 .hero-actions{flex-direction:column;align-items:stretch;margin:25px 0}.hero-v2 .hero-trust{flex-direction:column;gap:8px}.hero-visual-v2{height:420px;margin-top:10px}.hero-product-stage{width:300px;height:390px;transform:scale(.78)}.hero-light-ring{width:330px;height:330px}.phone-main{width:235px;height:365px;left:35px;top:15px}.phone-secondary{width:125px;height:195px;right:-8px;bottom:30px}.rating-card{left:0;top:40px;transform:scale(.88)}.drop-card{right:0;bottom:45px;transform:scale(.88)}.quality-card{display:none}.hero-orb,.hero-ring{opacity:.5}.orb-a{width:250px;height:250px;right:-80px}.orb-b{width:400px;height:400px;right:-160px}}
@media(prefers-reduced-motion:reduce){.hero-scroll-indicator i{animation:none}.hero-glow,.hero-product-stage,.hero-light-ring,.hero-floating-card{transform:none!important}}

/* Mobile hero image: use portrait source and keep the complete composition visible */
.phone-main picture {
    display: block;
    width: 100%;
    height: 100%;
}

.phone-main picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 767px) {
    .hero-v2 {
        overflow: hidden;
    }

    .hero-visual-v2 {
        height: 455px;
        margin-top: 10px;
        overflow: visible;
    }

    .hero-product-stage {
        width: 292px;
        height: 390px;
        transform: none !important;
        overflow: visible;
    }

    .phone-main {
        width: 228px;
        height: 348px;
        left: 32px;
        top: 12px;
        border-radius: 32px;
        transform: rotate(-4deg) rotateY(-7deg) translateZ(20px) !important;
    }

    .phone-main picture,
    .phone-main picture img {
        width: 100%;
        height: 100%;
    }

    .phone-main picture img {
        object-fit: cover;
        object-position: center center;
    }

    .phone-secondary {
        width: 112px;
        height: 174px;
        right: -4px;
        bottom: 20px;
    }

    .hero-floating-card.rating-card {
        left: -2px;
        top: 26px;
    }

    .hero-floating-card.drop-card {
        right: -2px;
        bottom: 34px;
    }
}

/* =========================================================
   SECTION 2 — EDITORIAL EXPERIENCE / NO-CARD DESIGN
   ========================================================= */
.experience-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin:0;
  padding:0;
  background:linear-gradient(180deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 90%,var(--accent)) 100%);
}
.experience-wrap{
  position:relative;
  z-index:2;
  width:min(1240px,calc(100% - 40px));
  min-height:720px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  align-items:center;
  gap:72px;
  padding:90px 0 72px;
}
.experience-bg-word{
  position:absolute;
  z-index:0;
  left:-3%;
  bottom:70px;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(130px,19vw,280px);
  line-height:.75;
  font-weight:700;
  letter-spacing:-.08em;
  white-space:nowrap;
  color:transparent;
  -webkit-text-stroke:1px color-mix(in srgb,var(--ink) 10%,transparent);
  pointer-events:none;
  user-select:none;
}
.experience-line-top{
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:var(--line);
  transform-origin:left;
}
.experience-visual{
  position:relative;
  height:570px;
  display:grid;
  place-items:center;
}
.experience-image{
  position:relative;
  z-index:3;
  width:min(440px,82%);
  height:535px;
  overflow:hidden;
  clip-path:polygon(10% 0,88% 4%,100% 91%,77% 100%,8% 94%,0 13%);
  transform:rotate(-5deg);
  filter:drop-shadow(0 35px 55px rgba(0,0,0,.25));
  will-change:transform;
}
.experience-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 35%,rgba(0,0,0,.16));
  pointer-events:none;
}
.experience-image img{
  width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.08);
  transition:transform 1s cubic-bezier(.2,.7,.2,1);
}
.experience-section:hover .experience-image img{transform:scale(1.14)}
.experience-glow{
  position:absolute;
  z-index:1;
  width:430px;height:430px;
  border-radius:50%;
  background:var(--accent);
  opacity:.16;
  filter:blur(65px);
  will-change:transform;
}
.experience-orbit{
  position:absolute;
  z-index:2;
  width:510px;height:220px;
  border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);
  border-radius:50%;
  pointer-events:none;
}
.experience-orbit.orbit-a{transform:rotate(-28deg)}
.experience-orbit.orbit-b{width:560px;height:260px;transform:rotate(26deg);opacity:.5}
.experience-number{
  position:absolute;
  z-index:5;
  left:2%;top:7%;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(70px,9vw,115px);
  line-height:1;
  font-weight:700;
  color:var(--accent);
  letter-spacing:-.08em;
  mix-blend-mode:normal;
}
.experience-tag{
  position:absolute;
  z-index:6;
  right:1%;bottom:7%;
  padding:10px 0;
  font-size:9px;
  font-weight:700;
  letter-spacing:.18em;
  color:var(--muted);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.experience-copy{position:relative;z-index:3}
.experience-copy .eyebrow{opacity:0}
.experience-copy h2{
  margin:18px 0 24px;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(42px,5.1vw,72px);
  line-height:.98;
  letter-spacing:-.065em;
  max-width:690px;
  opacity:0;
}
.experience-copy h2 em{font-style:normal;color:var(--muted)}
.experience-copy p{
  max-width:590px;
  margin:0 0 34px;
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
  opacity:0;
}
.experience-points{
  border-top:1px solid var(--line);
  opacity:0;
}
.experience-point{
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:16px;
  align-items:center;
  min-height:72px;
  border-bottom:1px solid var(--line);
  transition:padding .35s ease,background .35s ease;
}
.experience-point:hover{padding-left:12px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,transparent),transparent)}
.experience-point>span{font-size:11px;color:var(--accent);font-weight:700}
.experience-point strong{font-size:14px}
.experience-point small{font-size:11px;color:var(--muted)}
.experience-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:28px;
  color:var(--ink);
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  opacity:0;
  transition:gap .3s ease,color .3s ease;
}
.experience-link:hover{gap:16px;color:var(--accent)}
.experience-marquee{
  position:relative;
  z-index:4;
  display:flex;
  width:max-content;
  white-space:nowrap;
  overflow:hidden;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  font-family:"Space Grotesk",sans-serif;
  font-size:12px;
  font-weight:600;
  letter-spacing:.18em;
  color:var(--muted);
}
.experience-marquee>div{display:block;padding:18px 0;animation:experienceMarquee 26s linear infinite}
.experience-marquee span{color:var(--accent);padding:0 24px}
@keyframes experienceMarquee{to{transform:translateX(-100%)}}
html.dark .experience-section{background:linear-gradient(180deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 92%,#B86D6D) 100%)}
html.dark .experience-glow{opacity:.23}
@media(max-width:1023px){
 .experience-wrap{grid-template-columns:1fr 1fr;gap:30px;min-height:650px;padding:70px 0 55px}
 .experience-visual{height:500px}
 .experience-image{height:455px;width:85%}
 .experience-orbit{width:430px;height:190px}
 .experience-copy h2{font-size:clamp(38px,5.8vw,58px)}
 .experience-copy p{font-size:15px}
 .experience-point{grid-template-columns:34px 1fr;gap:10px;min-height:66px}
 .experience-point small{grid-column:2}
}
@media(max-width:767px){
 .experience-wrap{width:calc(100% - 28px);display:flex;flex-direction:column;gap:25px;min-height:0;padding:58px 0 42px}
 .experience-bg-word{font-size:34vw;bottom:280px;left:-7%}
 .experience-visual{width:100%;height:410px;order:1}
 .experience-image{width:76%;height:380px;transform:rotate(-4deg)}
 .experience-glow{width:310px;height:310px}
 .experience-orbit{width:360px;height:155px}
 .experience-orbit.orbit-b{width:390px;height:180px}
 .experience-number{left:4%;top:1%;font-size:70px}
 .experience-tag{right:3%;bottom:2%;font-size:8px}
 .experience-copy{order:2}
 .experience-copy h2{font-size:clamp(39px,11vw,54px);margin:14px 0 20px}
 .experience-copy p{font-size:15px;line-height:1.65;margin-bottom:25px}
 .experience-point{grid-template-columns:34px 1fr;min-height:70px}
 .experience-point small{font-size:10px}
 .experience-marquee{font-size:10px}
 .experience-marquee>div{padding:14px 0}
}
@media(prefers-reduced-motion:reduce){
 .experience-marquee>div{animation:none}
 .experience-image img{transition:none}
}


/* =========================================================
   SECTION 3 — HORIZONTAL COLLECTION / RESPONSIVE
   ========================================================= */
.collection-scroll{position:relative;background:var(--bg);overflow:hidden;color:var(--ink)}
.collection-scroll-sticky{position:relative;overflow:hidden}
.collection-scroll-head{height:42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.collection-marquee{height:100%;display:flex;align-items:center;justify-content:space-around;white-space:nowrap;gap:38px;font-size:10px;letter-spacing:.22em;font-weight:800;color:var(--muted);text-transform:uppercase}
.collection-marquee b{color:var(--accent);font-size:12px}
.collection-track{display:flex;align-items:center;gap:5vw;width:max-content;min-height:720px;padding:55px 7vw 70px;will-change:transform}
.collection-panel{flex:0 0 auto;position:relative}
.collection-intro-panel{width:min(620px,48vw);min-height:585px;display:flex;align-items:center}
.collection-panel-inner{position:relative;padding:20px 0}
.collection-panel .eyebrow{display:flex;align-items:center;gap:10px;color:var(--accent);font-size:11px;letter-spacing:.18em;font-weight:800}
.collection-panel .eyebrow>span{width:25px;height:1px;background:currentColor}
.collection-intro-panel h2{font-size:clamp(48px,6vw,82px);line-height:.94;letter-spacing:-.055em;margin:22px 0 18px}
.collection-intro-panel h2 em,.collection-panel h3 em{font-style:normal;color:var(--accent)}
.collection-hint{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.16em;color:var(--muted);font-weight:800}
.collection-hint i{color:var(--accent)}
.collection-index{margin-top:105px;font-size:12px;color:var(--accent);font-weight:800;letter-spacing:.1em}
.collection-kicker{display:block;margin-top:25px;font-size:10px;letter-spacing:.18em;font-weight:800;color:var(--muted)}
.collection-intro-panel h3{font-size:clamp(45px,5.2vw,70px);line-height:.94;letter-spacing:-.05em;margin:15px 0 18px}
.collection-intro-panel>p{max-width:430px;color:var(--muted);font-size:15px;line-height:1.7}
.collection-image-panel{width:430px;height:510px;display:flex;align-items:center}
.collection-image-panel.panel-wide{width:620px;height:430px}
.collection-image-panel.panel-offset{margin-top:85px}
.collection-image-wrap{position:relative;width:100%;height:100%;overflow:hidden;clip-path:polygon(5% 0,100% 5%,95% 100%,0 94%);background:var(--surface)}
.collection-image-wrap img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.08);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.collection-image-panel:hover img{transform:scale(1.16)}
.collection-image-label{position:absolute;left:18px;bottom:12px;font-size:10px;letter-spacing:.16em;color:var(--ink);background:var(--bg);padding:7px 10px}
.collection-end-panel{width:420px;min-height:510px;display:flex;align-items:center}
.collection-end-panel h3{font-size:clamp(48px,5vw,72px);line-height:.94;letter-spacing:-.05em;margin:18px 0 30px}
.collection-progress{position:absolute;left:7vw;right:7vw;bottom:25px;height:1px;background:var(--line)}
.collection-progress span{display:block;width:0;height:100%;background:var(--accent);transform-origin:left}
html.dark .collection-scroll{background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--bg) 90%,#B86D6D))}

@media(max-width:1023px){
 .collection-track{min-height:650px;padding:48px 5vw 65px;gap:7vw}
 .collection-intro-panel{width:64vw;min-height:510px}
 .collection-image-panel{width:52vw;height:430px}
 .collection-image-panel.panel-wide{width:72vw;height:360px}
 .collection-intro-panel h2{font-size:clamp(43px,7vw,68px)}
 .collection-intro-panel h3{font-size:clamp(42px,6.5vw,60px)}
}

@media(max-width:767px){
 .collection-scroll{margin:0;padding:0;width:100%;overflow:hidden;position:relative}
 .collection-scroll-sticky{height:100vh;min-height:100vh;overflow:hidden;position:relative}
 .collection-scroll-head{height:32px;position:absolute;top:0;left:0;right:0;z-index:10;background:var(--bg)}
 .collection-marquee{justify-content:flex-start;gap:27px;padding-left:22px;font-size:8px;animation:collectionTicker 18s linear infinite}
 @keyframes collectionTicker{to{transform:translateX(-40%)}}

 /* Mobile uses vertical page scrolling to drive the horizontal gallery.
    This keeps the images reachable on phones while preserving the desktop
    pinned horizontal experience. */
 .collection-track{
   position:absolute;
   left:0;
   top:32px;
   width:max-content;
   max-width:none;
   min-height:calc(100vh - 32px);
   height:calc(100vh - 32px);
   padding:40px 14px 65px;
   gap:38px;
   align-items:flex-start;
   overflow:visible;
   will-change:transform;
 }
 .collection-panel{scroll-snap-align:none}
 .collection-intro-panel{width:calc(100vw - 28px);min-width:calc(100vw - 28px);min-height:calc(100vh - 110px);height:calc(100vh - 110px);display:block}
 .collection-panel-inner{padding:5px 0}
 .collection-panel .eyebrow{font-size:9px;letter-spacing:.15em}
 .collection-intro-panel h2{font-size:clamp(41px,12vw,56px);line-height:.95;margin:17px 0 16px}
 .collection-hint{font-size:8px;margin-bottom:0}
 .collection-index{margin-top:108px}
 .collection-kicker{margin-top:24px;font-size:9px}
 .collection-intro-panel h3{font-size:clamp(40px,11vw,54px);margin:14px 0 17px}
 .collection-intro-panel>p{font-size:13px;line-height:1.65;max-width:310px}
 .collection-image-panel{width:82vw;min-width:82vw;height:440px}
 .collection-image-panel.panel-wide{width:92vw;min-width:92vw;height:330px}
 .collection-image-panel.panel-offset{margin-top:60px}
 .collection-end-panel{width:88vw;min-width:88vw;min-height:440px}
 .collection-end-panel h3{font-size:50px}
 .collection-progress{left:14px;right:14px;bottom:20px;z-index:12}
}

@media(prefers-reduced-motion:reduce){
 .collection-marquee{animation:none}
}


/* =========================================================
   MOBILE HERO — NEVER CLIP THE MAIN PHONE IMAGE
   ========================================================= */
@media (max-width: 767px) {
    .hero-product-stage,
    .hero-phone,
    .hero-phone picture {
        max-height: none;
    }

    .hero-product-stage {
        margin-bottom: 12px;
    }
}

/* SECTION 4-6 REDESIGN */
.section4-orbit,.section5-repair,.section6-brands{position:relative;overflow:hidden}
.section4-orbit{background:var(--bg)}
.orbit-wrap{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:.72fr 1.28fr;gap:40px;align-items:center;min-height:680px}
.orbit-heading h2,.repair-path-intro h2,.brands-intro h2{font:600 clamp(38px,5vw,66px)/.96 "Space Grotesk";letter-spacing:-.055em;margin:15px 0 20px}
.orbit-heading h2 em,.repair-path-intro h2 em,.brands-intro h2 em{font-style:normal;color:#623434}
.orbit-heading p,.repair-path-intro p{max-width:390px;color:var(--muted);font-size:15px}
.orbit-stage{height:610px;position:relative;isolation:isolate}
.orbit-sun{position:absolute;left:50%;top:50%;width:150px;height:150px;transform:translate(-50%,-50%);border-radius:50%;background:var(--accent);filter:blur(34px);opacity:.45;z-index:-1;animation:orbitPulse 4s ease-in-out infinite}
.orbit-path{position:absolute;left:50%;top:50%;border:1px solid color-mix(in srgb,var(--ink) 16%,transparent);border-radius:50%;transform:translate(-50%,-50%) rotate(-14deg);pointer-events:none}
.orbit-path-a{width:510px;height:300px}.orbit-path-b{width:390px;height:530px;transform:translate(-50%,-50%) rotate(42deg)}
.orbit-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;display:grid;gap:5px;z-index:2;pointer-events:none}.orbit-center span{font-size:9px;letter-spacing:.22em;font-weight:900;color:#623434}.orbit-center strong{font:600 21px/1 "Space Grotesk";letter-spacing:-.03em}
.orbit-product{position:absolute;width:220px;display:grid;grid-template-columns:42px 1fr;grid-template-rows:150px auto;column-gap:10px;transition:transform .35s ease}.orbit-product:hover{transform:translateY(-8px) rotate(-1deg)}
.orbit-product img{grid-column:1/-1;width:100%;height:150px;object-fit:cover;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%);transition:transform .5s ease}.orbit-product:hover img{transform:scale(1.04)}
.orbit-product>span{font:700 12px "Space Grotesk";color:#623434;padding-top:10px}.orbit-product>div{padding-top:8px;border-bottom:1px solid var(--line);padding-bottom:10px}.orbit-product small{display:block;font-size:8px;letter-spacing:.16em;color:var(--muted);font-weight:800}.orbit-product strong{font:600 17px "Space Grotesk"}.orbit-product-a{left:2%;top:8%}.orbit-product-b{right:0;top:20%}.orbit-product-c{left:7%;bottom:7%}.orbit-product-d{right:2%;bottom:2%}
.section5-repair{background:var(--ink);color:var(--bg)}
.repair-path-wrap{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center;min-height:640px}.section5-repair .eyebrow{color:var(--accent)}.section5-repair .repair-path-intro p{color:rgba(251,245,245,.62)}.section5-repair .text-link{color:var(--bg);border-color:rgba(251,245,245,.45);margin-top:20px;display:inline-block}
.repair-path-rail{position:relative;padding:10px 0}.repair-path-line{position:absolute;left:30px;top:24px;bottom:24px;width:1px;background:rgba(251,245,245,.16)}.repair-path-line span{display:block;width:5px;height:70px;background:var(--accent);margin-left:-2px;border-radius:8px;transform-origin:top}
.repair-node{position:relative;display:grid;grid-template-columns:60px 1fr 45px;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid rgba(251,245,245,.12)}.repair-node:last-child{border-bottom:0}.node-no{width:60px;height:60px;border:1px solid rgba(251,245,245,.18);border-radius:50%;display:grid;place-items:center;background:var(--ink);font:700 12px "Space Grotesk";z-index:1}.repair-node small{font-size:8px;letter-spacing:.18em;color:var(--accent);font-weight:800}.repair-node h3{font:600 25px "Space Grotesk";margin:2px 0}.repair-node p{margin:0;color:rgba(251,245,245,.55);font-size:12px;max-width:440px}.repair-node>i{font-size:18px;color:var(--accent);justify-self:end}
.section6-brands{background:var(--surface)}.brands-surface{width:min(1180px,calc(100% - 40px));margin:auto;min-height:560px;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.brands-intro p{color:var(--muted)}.brands-rail{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.brand-word{min-height:150px;display:flex;flex-direction:column;justify-content:center;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s;position:relative;overflow:hidden}.brand-word:nth-child(2n){border-right:0}.brand-word:nth-child(n+5){border-bottom:0}.brand-word:hover{background:var(--bg);transform:translateY(-4px)}.brand-word b,.brand-word span{font:600 25px "Space Grotesk";letter-spacing:-.04em}.brand-word small{font-size:9px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase}.brand-word i{font-size:31px}.brand-footline{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:22px;color:var(--muted);font-size:8px;letter-spacing:.18em;font-weight:800}
@keyframes orbitPulse{50%{transform:translate(-50%,-50%) scale(1.14);opacity:.28}}
@media(max-width:1023px){.orbit-wrap,.repair-path-wrap,.brands-surface{grid-template-columns:1fr;gap:35px;min-height:0}.orbit-wrap{padding:80px 0}.orbit-stage{height:600px}.repair-path-wrap{padding:80px 0}.brands-surface{padding:80px 0}.brands-intro{max-width:680px}}
@media(max-width:767px){.orbit-wrap,.repair-path-wrap,.brands-surface{width:calc(100% - 28px)}.orbit-wrap{padding:58px 0 54px;gap:12px}.orbit-heading h2,.repair-path-intro h2,.brands-intro h2{font-size:43px}.orbit-heading p,.repair-path-intro p{font-size:14px}.orbit-stage{height:610px;margin-top:5px}.orbit-path-a{width:360px;height:230px}.orbit-path-b{width:290px;height:400px}.orbit-product{width:155px;grid-template-rows:105px auto}.orbit-product img{height:105px}.orbit-product strong{font-size:14px}.orbit-product-a{left:0;top:6%}.orbit-product-b{right:0;top:25%}.orbit-product-c{left:0;bottom:19%}.orbit-product-d{right:0;bottom:3%}.orbit-center strong{font-size:16px}.repair-path-wrap{padding:58px 0 54px;gap:28px}.repair-node{grid-template-columns:46px 1fr 26px;gap:12px;padding:19px 0}.node-no{width:46px;height:46px;font-size:10px}.repair-node h3{font-size:20px}.repair-node p{font-size:11px}.repair-path-line{left:23px}.section6-brands .brands-surface{padding:58px 0 54px;gap:30px}.brands-rail{grid-template-columns:1fr 1fr}.brand-word{min-height:120px;padding:16px}.brand-word b,.brand-word span{font-size:19px}.brand-word i{font-size:25px}.brand-footline{gap:10px;flex-wrap:wrap;justify-content:flex-start;padding-top:16px}.brand-footline span{font-size:7px}}

/* === Sections 6–8: distinct editorial patterns === */
.section6-constellation,.section7-proof,.section8-typewriter{position:relative;overflow:hidden}
.section6-constellation{background:var(--bg)}
.brand-constellation{display:grid;grid-template-columns:.8fr 1.2fr;column-gap:70px;row-gap:24px;align-items:center}
.brand-constellation-head{max-width:480px}
.brand-constellation-head h2,.proof-top h2,.typewriter-copy h2{font:600 clamp(44px,5.2vw,76px)/.94 "Space Grotesk";letter-spacing:-.055em;margin:18px 0}
.brand-constellation-head h2 em,.proof-top h2 em{font-style:normal;color:var(--accent)}
.brand-constellation-head p,.proof-top p,.typewriter-copy p{max-width:470px;color:var(--muted);font-size:14px;line-height:1.8}
.brand-field{height:520px;position:relative;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.brand-ghost{position:absolute;right:0;top:8px;font:800 9px "Space Grotesk";letter-spacing:.2em;color:var(--muted);opacity:.7}
.brand-node{position:absolute;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;gap:6px;transition:transform .45s cubic-bezier(.2,.7,.2,1),color .3s}
.brand-node small{font:800 8px "Space Grotesk";letter-spacing:.16em;color:var(--muted)}
.brand-node strong{font:600 clamp(26px,3vw,44px)/1 "Space Grotesk";letter-spacing:-.04em}
.brand-node span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.brand-node i{font-size:24px}
.brand-node:hover{transform:translateX(12px);color:var(--accent)}
.brand-node-a{left:7%;top:14%}.brand-node-b{right:5%;top:25%}.brand-node-c{left:28%;top:47%}.brand-node-d{right:11%;bottom:12%}.brand-node-e{left:4%;bottom:8%}.brand-node-f{right:35%;top:5%}
.brand-field-line{position:absolute;background:var(--line);transform-origin:left center}.line-a{width:72%;height:1px;left:10%;top:38%;transform:rotate(-9deg)}.line-b{width:58%;height:1px;left:27%;top:68%;transform:rotate(14deg)}
.brand-marquee{grid-column:1/-1;overflow:hidden;border-top:1px solid var(--line);padding-top:15px;white-space:nowrap;color:var(--muted);font:800 9px "Space Grotesk";letter-spacing:.22em}
.brand-marquee span{display:inline-block;animation:voltivaMarquee 24s linear infinite}
@keyframes voltivaMarquee{to{transform:translateX(-100%)}}

.section7-proof{background:var(--surface);color:var(--ink)}
.proof-wrap{position:relative}
.proof-top{display:flex;align-items:end;justify-content:space-between;gap:40px;border-bottom:1px solid var(--line);padding-bottom:35px}
.proof-top p{margin:0}
.proof-numbers{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.proof-number{padding:34px 24px 32px 0;border-right:1px solid var(--line)}
.proof-number:not(:first-child){padding-left:24px}.proof-number:last-child{border-right:0}
.proof-number strong{display:block;font:600 clamp(54px,7vw,100px)/.9 "Space Grotesk";letter-spacing:-.07em}
.proof-number span{display:block;margin-top:13px;color:var(--muted);font:800 9px "Space Grotesk";letter-spacing:.16em;text-transform:uppercase}
.proof-quote{margin:0;padding:48px 0 42px;display:grid;grid-template-columns:100px 1fr;column-gap:30px;border-bottom:1px solid var(--line)}
.proof-quote-mark{font:700 100px/.65 Georgia;color:var(--accent)}
.proof-quote blockquote{margin:0;max-width:850px;font:500 clamp(23px,3vw,40px)/1.25 "Space Grotesk";letter-spacing:-.03em}
.proof-quote figcaption{grid-column:2;display:flex;align-items:center;gap:18px;margin-top:25px;font-size:11px}
.proof-quote figcaption strong{font-size:12px}.proof-quote figcaption span{color:var(--muted)}.proof-quote figcaption b{color:var(--accent);letter-spacing:.12em}
.proof-running{overflow:hidden;white-space:nowrap;padding-top:17px;color:var(--muted);font:800 8px "Space Grotesk";letter-spacing:.25em}.proof-running span{display:inline-block;animation:voltivaMarquee 28s linear infinite}

.section8-typewriter{background:var(--ink);color:var(--bg)}
.typewriter-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;min-height:500px}
.typewriter-copy .eyebrow{color:var(--accent)}
.typewriter-copy h2{font-size:clamp(45px,6vw,86px);max-width:760px;color:var(--bg);min-height:1.9em}
.typewriter-prefix{color:var(--accent);font-size:.55em;vertical-align:.08em}
.typewriter-caret{display:inline-block;width:3px;height:.8em;background:var(--accent);margin-left:5px;vertical-align:-.02em;animation:typeCaret .8s steps(1) infinite}
@keyframes typeCaret{50%{opacity:0}}
.typewriter-copy p{color:color-mix(in srgb,var(--bg) 62%,transparent)}
.typewriter-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:25px;font:800 9px "Space Grotesk";letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb,var(--bg) 72%,transparent)}
.typewriter-meta i{color:var(--accent);margin-right:6px}
.typewriter-form-wrap{border-top:1px solid color-mix(in srgb,var(--bg) 22%,transparent);border-bottom:1px solid color-mix(in srgb,var(--bg) 22%,transparent);padding:24px 0}
.form-line-label{font:800 8px "Space Grotesk";letter-spacing:.2em;color:color-mix(in srgb,var(--bg) 52%,transparent);margin-bottom:12px}
.type-input-row{display:flex;border-bottom:1px solid color-mix(in srgb,var(--bg) 35%,transparent)}
.type-input-row input{flex:1;border:0;background:transparent;color:var(--bg);padding:14px 2px;font:500 15px "Space Grotesk";outline:none}
.type-input-row input::placeholder{color:color-mix(in srgb,var(--bg) 42%,transparent)}
.type-input-row input:focus{border:0;outline:0}
.type-input-row .btn{border-radius:0;margin:0 0 8px 12px}
.typewriter-form-wrap .form-error{min-height:18px}
.repair-prompt{display:flex;justify-content:space-between;gap:20px;padding-top:18px;font-size:11px;color:color-mix(in srgb,var(--bg) 58%,transparent)}
.repair-prompt a{color:var(--bg);font-weight:800;text-decoration:none}.repair-prompt a:hover{color:var(--accent)}

@media(max-width:1023px){
 .brand-constellation{grid-template-columns:1fr;gap:45px}.brand-field{height:500px}
 .proof-top{display:block}.proof-top p{margin-top:20px}.typewriter-wrap{grid-template-columns:1fr;gap:45px;min-height:0}
}
@media(max-width:767px){
 .section-pad{padding:58px 0 54px}
 .brand-constellation{width:calc(100% - 28px);gap:30px}.brand-constellation-head h2,.proof-top h2,.typewriter-copy h2{font-size:44px}
 .brand-constellation-head p,.proof-top p,.typewriter-copy p{font-size:13px}
 .brand-field{height:500px;border-left:0}
 .brand-node strong{font-size:24px}.brand-node-a{left:0}.brand-node-b{right:0}.brand-node-c{left:17%;top:45%}.brand-node-d{right:0}.brand-node-e{left:0}.brand-node-f{right:20%;top:4%}
 .brand-field-line{opacity:.8}
 .proof-wrap,.typewriter-wrap{width:calc(100% - 28px)}
 .proof-numbers{grid-template-columns:1fr}.proof-number,.proof-number:not(:first-child){padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}
 .proof-number:last-child{border-bottom:0}.proof-number strong{font-size:64px}
 .proof-quote{grid-template-columns:45px 1fr;column-gap:12px;padding:36px 0}.proof-quote-mark{font-size:65px}.proof-quote blockquote{font-size:21px}.proof-quote figcaption{grid-column:2;display:block}.proof-quote figcaption b{display:block;margin-top:8px}
 .typewriter-wrap{gap:28px}.typewriter-copy h2{font-size:45px;min-height:2.6em}.typewriter-meta{gap:12px;font-size:8px}.type-input-row{display:block}.type-input-row input{width:100%;padding:14px 0}.type-input-row .btn{width:100%;margin:8px 0 0;border-radius:10px}.repair-prompt{flex-direction:column;gap:10px}
}


/* =========================================================
   GLOBAL LIGHT MODE + TYPOGRAPHY ACCESSIBILITY OVERRIDES
   ========================================================= */
:root{
  --accent:#6D3B3B;
  --ink:#1D1010;
  --muted:#432424;
  --bg:#FBEFEF;
  --surface:#F5E9E9;
  --line:rgba(29,16,16,.16);
  --shadow:0 20px 60px rgba(29,16,16,.10);
}

/* Keep light-mode text dark and readable */
html:not(.dark) body{background:#FBEFEF;color:#1D1010}
html:not(.dark) .site-header{background:rgba(238,223,223,.94);color:#1D1010}
html:not(.dark) .nav-link,
html:not(.dark) .has-dropdown>button,
html:not(.dark) .login-link,
html:not(.dark) .brand,
html:not(.dark) .icon-btn,
html:not(.dark) .pill-btn{color:#1D1010}
html:not(.dark) .hero{background:radial-gradient(circle at 78% 45%,rgba(235,167,167,.58),transparent 34%),#FBEFEF}
html:not(.dark) .category-strip,
html:not(.dark) .brands,
html:not(.dark) .product,
html:not(.dark) .testimonial,
html:not(.dark) .dropdown,
html:not(.dark) .float-tag{background:#F5E9E9;color:#1D1010}
html:not(.dark) .category-list a:hover{background:#FBEFEF}
html:not(.dark) .repair-section{background:#E8D4D4;color:#1D1010}
html:not(.dark) .repair-copy p,
html:not(.dark) .step p{color:#432424}
html:not(.dark) .timeline-line{background:rgba(29,16,16,.22)}
html:not(.dark) .step>span{background:#FBEFEF;border-color:rgba(29,16,16,.35);color:#1D1010}
html:not(.dark) .footer{background:#E7D2D2;color:#1D1010}
html:not(.dark) .footer p,
html:not(.dark) .footer-grid a:not(.brand),
html:not(.dark) .footer-bottom{color:#432424}
html:not(.dark) .socials a{border-color:rgba(29,16,16,.22);color:#1D1010}
html:not(.dark) .footer-bottom{border-top-color:rgba(29,16,16,.16)}
html:not(.dark) .booking{color:#1D1010}
html:not(.dark) .booking p,
html:not(.dark) .booking .eyebrow{color:#432424}
html:not(.dark) .booking .input-row input{color:#1D1010;background:rgba(255,255,255,.55)}
html:not(.dark) .booking-link{color:#1D1010}
html:not(.dark) .badge.muted{background:rgba(238,223,223,.94);color:#1D1010}
html:not(.dark) .product-meta b,
html:not(.dark) .float-tag small,
html:not(.dark) .product-info small,
html:not(.dark) .category-list small,
html:not(.dark) .reviewer small,
html:not(.dark) .stat span{color:#432424}

/* Small UI/caption text increased by 4px */
html body small,
html body .eyebrow,
html body .hero-trust,
html body .category-intro span,
html body .category-list small,
html body .product-info small,
html body .product-meta,
html body .badge,
html body .float-tag small,
html body .form-error,
html body .booking form label,
html body .booking-link,
html body .footer p,
html body .footer-grid a:not(.brand),
html body .footer-bottom,
html body .reviewer small,
html body .stat span,
html body .text-link{
  font-size:calc(1em + 4px);
}

/* Preserve sensible sizing for tiny decorative UI */
html body .cart-count{font-size:11px}
html body .pill-btn{font-size:15px}
html body .badge{line-height:1.2}

/* Stronger readability in light mode */
html:not(.dark) .eyebrow,
html:not(.dark) .category-intro span,
html:not(.dark) .category-list small,
html:not(.dark) .product-info small,
html:not(.dark) .product-meta,
html:not(.dark) .hero-trust,
html:not(.dark) .text-link,
html:not(.dark) .stat span,
html:not(.dark) .reviewer small,
html:not(.dark) .footer p,
html:not(.dark) .footer-grid a:not(.brand),
html:not(.dark) .footer-bottom{
  color:#311B1B;
}


/* FINAL PAGE-LEVEL CONTRAST PATCH */
html:not(.dark) .section5-repair,
html:not(.dark) .section8-typewriter{
  background:#190E0E !important;
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair h1,html:not(.dark) .section5-repair h2,html:not(.dark) .section5-repair h3,
html:not(.dark) .section5-repair p,html:not(.dark) .section5-repair small,
html:not(.dark) .section5-repair .repair-path-intro p,html:not(.dark) .section5-repair .repair-node p,
html:not(.dark) .section5-repair .text-link,
html:not(.dark) .section8-typewriter h1,html:not(.dark) .section8-typewriter h2,
html:not(.dark) .section8-typewriter h3,html:not(.dark) .section8-typewriter p,
html:not(.dark) .section8-typewriter small,html:not(.dark) .section8-typewriter .typewriter-copy p,
html:not(.dark) .section8-typewriter .repair-prompt,html:not(.dark) .section8-typewriter .repair-prompt a{
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair .repair-node p,
html:not(.dark) .section8-typewriter .typewriter-copy p,
html:not(.dark) .section8-typewriter .typewriter-meta,
html:not(.dark) .section8-typewriter .form-line-label,
html:not(.dark) .section8-typewriter .repair-prompt{
  color:#D8B7B7 !important;
}
html:not(.dark) .section5-repair .eyebrow,
html:not(.dark) .section5-repair .repair-node small,
html:not(.dark) .section5-repair .repair-node>i,
html:not(.dark) .section8-typewriter .eyebrow,
html:not(.dark) .section8-typewriter .typewriter-prefix,
html:not(.dark) .section8-typewriter .typewriter-meta i{
  color:#B86D6D !important;
}
html.dark .section5-repair,
html.dark .section8-typewriter{background:#F29191 !important;color:#F6EDED !important}
html.dark .section5-repair p,html.dark .section8-typewriter p,
html.dark .section8-typewriter .typewriter-copy p{
   color:#D8B7B7 !important;
    font-size:13px !important;
}html.dark .section8-typewriter .typewriter-meta,
html.dark .section8-typewriter .form-line-label{
   color:#D8B7B7 !important;
    
}html.dark .section8-typewriter .repair-prompt{
  color:#D8B7B7 !important;
}


/* =========================================================
   SECTION 7 — PROOF IN MOTION / EDITORIAL V2
   No cards, no empty blocks: continuous content + motion.
   ========================================================= */
.proof-v2{
  position:relative;
  overflow:hidden;
  background:var(--surface);
  color:var(--ink);
  isolation:isolate;
}
.proof-v2::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 78% 18%, rgba(109,59,59,.12), transparent 22%),
    radial-gradient(circle at 18% 82%, rgba(109,59,59,.08), transparent 25%),
    linear-gradient(90deg, transparent 0 49.8%, var(--line) 50%, transparent 50.2%);
  pointer-events:none;
}
.proof-v2::after{
  content:"";
  position:absolute;
  width:42vw;
  height:42vw;
  max-width:620px;
  max-height:620px;
  right:-16vw;
  top:8%;
  border:1px solid var(--line);
  border-radius:50%;
  box-shadow:0 0 0 45px rgba(109,59,59,.025),0 0 0 90px rgba(109,59,59,.018);
  z-index:-1;
  animation:proofV2Float 9s ease-in-out infinite;
  pointer-events:none;
}
@keyframes proofV2Float{
  0%,100%{transform:translate3d(0,0,0) rotate(0deg)}
  50%{transform:translate3d(-22px,18px,0) rotate(5deg)}
}
.proof-v2-wrap{
  position:relative;
  width:min(1180px,calc(100% - 48px));
  margin:0 auto;
  padding:clamp(68px,8vw,112px) 0 0;
}
.proof-v2-head{
  display:grid;
  grid-template-columns:190px minmax(0,1fr) 250px;
  gap:clamp(28px,5vw,76px);
  align-items:end;
  padding-bottom:clamp(44px,6vw,72px);
  border-bottom:1px solid var(--line);
}
.proof-v2-kicker{
  align-self:start;
  display:flex;
  align-items:center;
  gap:14px;
  padding-top:10px;
  color:var(--accent);
  font:800 11px/1.5 "Space Grotesk",sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.proof-v2-kicker-line{
  width:30px;
  height:1px;
  background:currentColor;
  flex:0 0 auto;
}
.proof-v2-intro h2{
  margin:0;
  color:var(--ink);
  font:600 clamp(48px,6.3vw,88px)/.9 "Space Grotesk",sans-serif;
  letter-spacing:-.065em;
}
.proof-v2-intro h2 em{
  display:inline-block;
  color:var(--accent);
  font-style:normal;
}
.proof-v2-intro p{
  max-width:560px;
  margin:26px 0 0;
  color:var(--muted);
  font-size:15px;
  line-height:1.75;
}
.proof-v2-orb{
  position:relative;
  width:190px;
  height:190px;
  margin-left:auto;
  display:grid;
  place-items:center;
}
.proof-orb-ring{
  position:absolute;
  inset:0;
  border:1px solid var(--line);
  border-radius:50%;
}
.proof-orb-ring.ring-1{
  animation:proofRing 12s linear infinite;
}
.proof-orb-ring.ring-2{
  inset:25px;
  border-style:dashed;
  animation:proofRingReverse 8s linear infinite;
}
.proof-orb-core{
  width:62px;
  height:62px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--ink);
  color:var(--surface);
  font:700 23px "Space Grotesk",sans-serif;
  box-shadow:0 0 0 9px color-mix(in srgb,var(--surface) 80%,transparent);
}
.proof-orb-label{
  position:absolute;
  right:-3px;
  bottom:14px;
  color:var(--muted);
  font:800 8px/1.5 "Space Grotesk",sans-serif;
  letter-spacing:.18em;
  text-align:right;
}
@keyframes proofRing{to{transform:rotate(360deg)}}
@keyframes proofRingReverse{to{transform:rotate(-360deg)}}

.proof-v2-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid var(--line);
}
.proof-v2-stat{
  min-height:190px;
  display:grid;
  grid-template-columns:44px 1fr auto;
  align-items:center;
  gap:18px;
  padding:28px 30px 30px 0;
  border-right:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.proof-v2-stat + .proof-v2-stat{padding-left:30px}
.proof-v2-stat:last-child{border-right:0}
.proof-v2-stat::after{
  content:"";
  position:absolute;
  left:0;
  right:30px;
  bottom:0;
  height:2px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.proof-v2-stat:hover::after{transform:scaleX(1)}
.proof-v2-index{
  align-self:start;
  padding-top:4px;
  color:var(--accent);
  font:800 10px "Space Grotesk",sans-serif;
  letter-spacing:.1em;
}
.proof-v2-stat-main strong{
  display:block;
  color:var(--ink);
  font:600 clamp(55px,6vw,84px)/.86 "Space Grotesk",sans-serif;
  letter-spacing:-.07em;
}
.proof-v2-stat-main span{
  display:block;
  margin-top:13px;
  color:var(--muted);
  font:800 10px "Space Grotesk",sans-serif;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.proof-v2-stat>i{
  color:var(--accent);
  font-size:17px;
  transition:transform .35s ease;
}
.proof-v2-stat:hover>i{transform:translateY(-5px) rotate(-8deg)}

.proof-v2-quote{
  margin:0;
  display:grid;
  grid-template-columns:100px minmax(0,1fr) 130px;
  gap:30px;
  align-items:start;
  padding:clamp(48px,6vw,78px) 0 clamp(44px,5vw,64px);
  border-bottom:1px solid var(--line);
}
.proof-v2-quote-mark{
  color:var(--accent);
  font:700 100px/.65 Georgia,serif;
}
.proof-v2-quote-copy blockquote{
  max-width:900px;
  margin:0;
  color:var(--ink);
  font:500 clamp(25px,3.15vw,43px)/1.18 "Space Grotesk",sans-serif;
  letter-spacing:-.035em;
}
.proof-v2-quote-copy figcaption{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
  margin-top:27px;
  color:var(--muted);
  font-size:11px;
}
.proof-v2-quote-copy figcaption strong{color:var(--ink);font-size:12px}
.proof-v2-quote-copy figcaption b{color:var(--accent);letter-spacing:.12em}
.proof-v2-quote-note{
  align-self:end;
  color:var(--muted);
  font:800 9px/1.6 "Space Grotesk",sans-serif;
  letter-spacing:.2em;
  text-align:right;
}
.proof-v2-running{
  overflow:hidden;
  white-space:nowrap;
  padding:17px 0 20px;
  color:var(--muted);
  font:800 9px "Space Grotesk",sans-serif;
  letter-spacing:.22em;
}
.proof-v2-running span{
  display:inline-block;
  animation:proofMarquee 22s linear infinite;
}
@keyframes proofMarquee{to{transform:translateX(-35%)}}

/* Make the section visibly populated without artificial vertical gaps. */
.proof-v2 .proof-v2-head,
.proof-v2 .proof-v2-stats,
.proof-v2 .proof-v2-quote,
.proof-v2 .proof-v2-running{margin:0}

html:not(.dark) .proof-v2{
  background:#FBEFEF !important;
  color:#190E0E !important;
}
html:not(.dark) .proof-v2-intro h2,
html:not(.dark) .proof-v2-stat-main strong,
html:not(.dark) .proof-v2-quote-copy blockquote{color:#190E0E !important}
html:not(.dark) .proof-v2-intro p,
html:not(.dark) .proof-v2-stat-main span,
html:not(.dark) .proof-v2-quote-copy figcaption,
html:not(.dark) .proof-v2-quote-note,
html:not(.dark) .proof-v2-running{color:#522C2C !important}
html.dark .proof-v2{
  background:#F29191 !important;
  color:#F6EDED !important;
}
html.dark .proof-v2-intro h2,
html.dark .proof-v2-stat-main strong,
html.dark .proof-v2-quote-copy blockquote{color:#F6EDED !important}
html.dark .proof-v2-intro p,
html.dark .proof-v2-stat-main span,
html.dark .proof-v2-quote-copy figcaption,
html.dark .proof-v2-quote-note,
html.dark .proof-v2-running{color:#D8B7B7 !important}

@media (max-width:900px){
  .proof-v2-wrap{width:calc(100% - 32px);padding-top:58px}
  .proof-v2-head{
    grid-template-columns:1fr 170px;
    gap:28px;
  }
  .proof-v2-kicker{grid-column:1/-1}
  .proof-v2-intro{grid-column:1}
  .proof-v2-orb{grid-column:2;grid-row:2;width:150px;height:150px}
  .proof-v2-stats{grid-template-columns:1fr}
  .proof-v2-stat,
  .proof-v2-stat + .proof-v2-stat{
    min-height:135px;
    padding:24px 0;
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .proof-v2-stat:last-child{border-bottom:0}
  .proof-v2-stat::after{right:0}
  .proof-v2-quote{grid-template-columns:55px 1fr;gap:16px}
  .proof-v2-quote-note{display:none}
}
@media (max-width:560px){
  .proof-v2-wrap{width:calc(100% - 28px);padding-top:48px}
  .proof-v2-head{
    display:grid;
    grid-template-columns:1fr;
    gap:26px;
  }
  .proof-v2-kicker,.proof-v2-intro,.proof-v2-orb{grid-column:auto;grid-row:auto}
  .proof-v2-intro h2{font-size:clamp(45px,14vw,64px)}
  .proof-v2-intro p{font-size:14px;margin-top:20px}
  .proof-v2-orb{width:125px;height:125px;margin:2px 0 0 auto}
  .proof-orb-core{width:50px;height:50px;font-size:18px}
  .proof-orb-ring.ring-2{inset:18px}
  .proof-v2-stat{grid-template-columns:34px 1fr auto;gap:12px}
  .proof-v2-stat-main strong{font-size:56px}
  .proof-v2-stat-main span{font-size:9px;margin-top:10px}
  .proof-v2-quote{grid-template-columns:36px 1fr;gap:12px;padding:40px 0}
  .proof-v2-quote-mark{font-size:60px}
  .proof-v2-quote-copy blockquote{font-size:22px}
  .proof-v2-quote-copy figcaption{gap:8px 12px;line-height:1.4}
}
@media (prefers-reduced-motion:reduce){
  .proof-v2::after,.proof-orb-ring,.proof-v2-running span{animation:none}
}


/* =========================================================
   FOOTER REBUILD + SECTION 8 FORM VISIBILITY
   Clean alignment, larger utility type, no low-contrast copy.
   ========================================================= */
.footer{
  background:#0F0808;
  color:#F6EDED;
  padding:64px 0 22px;
  overflow:hidden;
}
.footer-shell{
  display:grid;
  grid-template-columns:minmax(300px,1.05fr) minmax(0,1fr);
  gap:90px;
  align-items:start;
}
.footer-intro{min-width:0}
.footer-kicker{
  display:flex;
  align-items:center;
  gap:12px;
  font:800 12px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.18em;
  color:#BD8585;
  margin-bottom:24px;
}
.footer-kicker i{width:28px;height:1px;background:#BD8585;display:block}
.footer-brand{display:inline-flex;margin-bottom:22px}
.footer-intro h2{
  margin:0;
  font:600 clamp(42px,5vw,72px)/.94 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;
  color:#F6EDED;
}
.footer-intro h2 em{font-style:normal;color:#BD8585}
.footer-intro>p{
  max-width:430px;
  margin:22px 0 0;
  color:#D9B8B8;
  font-size:16px;
  line-height:1.7;
}
.footer-links{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:34px;
  padding-top:8px;
}
.footer-column{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
}
.footer-column-label{
  font:800 11px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.18em;
  color:#BD8585;
  margin-bottom:18px;
}
.footer-column a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  padding:9px 0;
  border-bottom:1px solid rgba(246,237,237,.12);
  color:#F6EDED !important;
  text-decoration:none;
  font:600 15px/1.35 "Space Grotesk",sans-serif;
}
.footer-column a i{font-size:11px;opacity:.65;transition:transform .25s ease}
.footer-column a:hover i{transform:translate(4px,-2px);opacity:1}
.footer-visit p{
  margin:0 0 16px;
  color:#D9B8B8;
  font:500 15px/1.65 "Space Grotesk",sans-serif;
}
.footer .socials{margin-top:25px;gap:9px}
.footer .socials a{
  width:38px;height:38px;
  border:1px solid rgba(246,237,237,.22);
  border-radius:50%;
  color:#F6EDED;
  display:grid;place-items:center;
  transition:transform .25s ease,border-color .25s ease;
}
.footer .socials a:hover{transform:translateY(-3px);border-color:#BD8585}
.footer-bottom{
  margin-top:52px;
  padding-top:18px;
  border-top:1px solid rgba(246,237,237,.16);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  color:#C79696 !important;
  font:500 13px/1.4 "Space Grotesk",sans-serif;
}
.footer-bottom a{color:#F6EDED !important;text-decoration:none}
.footer-bottom i{font-size:10px;margin-left:5px}

/* Section 8: always keep the email field visible in dark mode */
html.dark .section8-typewriter .typewriter-form-wrap{
  border-top-color:rgba(246,237,237,.22);
  border-bottom-color:rgba(246,237,237,.22);
}
html.dark .section8-typewriter .form-line-label{color:#E1C8C8 !important;  font-size:13px !important;}
html.dark .section8-typewriter .type-input-row{
  border-bottom-color:rgba(246,237,237,.30);
}
html.dark .section8-typewriter .type-input-row input{
  display:block !important;
  min-height:52px;
  background:#211212 !important;
  color:#F6EDED !important;
  border:1px solid rgba(246,237,237,.18) !important;
  border-radius:8px 0 0 8px;
  padding:16px 22px !important;
}
html.dark .section8-typewriter .type-input-row input::placeholder{
  color:#C79696 !important;
  opacity:1;
}
html.dark .section8-typewriter .type-input-row .btn{
  min-height:52px;
}
html.dark .section8-typewriter .repair-prompt{
  color:#D9B8B8 !important;
}
html.dark .section8-typewriter .repair-prompt a{color:#F6EDED !important}

@media(max-width:1023px){
  .footer-shell{grid-template-columns:1fr;gap:45px}
  .footer-links{gap:26px}
}
@media(max-width:767px){
  .footer{padding:52px 0 20px}
  .footer-shell{gap:38px}
  .footer-kicker{font-size:11px}
  .footer-intro h2{font-size:44px}
  .footer-intro>p{font-size:15px}
  .footer-links{grid-template-columns:1fr 1fr;gap:34px 22px}
  .footer-visit{grid-column:1/-1;border-top:1px solid rgba(246,237,237,.12);padding-top:22px}
  .footer-column a,.footer-visit p{font-size:14px}
  .footer-bottom{margin-top:38px;align-items:flex-start;flex-direction:column;gap:9px;font-size:12px}
}

/* =========================================================
   SECTION 7 — EDITORIAL PROOF RESTRUCTURE
   ========================================================= */
.proof-editorial{position:relative;overflow:hidden}
.proof-editorial::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 82% 18%,rgba(189,133,133,.12),transparent 24%),linear-gradient(90deg,transparent 0 49.8%,rgba(161,86,86,.08) 50%,transparent 50.2%)}
.proof-editorial-wrap{position:relative;padding-top:74px;padding-bottom:0}
.proof-editorial-top{display:grid;grid-template-columns:190px minmax(0,1.25fr) minmax(260px,.7fr);gap:42px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:48px}
.proof-editorial-kicker{display:flex;gap:12px;align-items:center;align-self:start;margin-top:14px;color:var(--accent);font:800 12px/1.2 "Space Grotesk",sans-serif;letter-spacing:.18em}
.proof-editorial-kicker span{width:28px;height:1px;background:currentColor}
.proof-overline{display:block;margin-bottom:14px;color:var(--muted);font:800 10px/1.2 "Space Grotesk",sans-serif;letter-spacing:.22em}
.proof-editorial-heading h2{margin:0;font:600 clamp(56px,6.5vw,96px)/.86 "Space Grotesk",sans-serif;letter-spacing:-.065em;color:var(--ink)}
.proof-editorial-heading h2 em{font-style:normal;color:var(--accent)}
.proof-editorial-lead{max-width:390px;margin:0 0 7px;color:var(--body);font-size:16px;line-height:1.7}
.proof-editorial-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:360px;border-bottom:1px solid var(--line)}
.proof-editorial-metrics{display:grid;grid-template-columns:repeat(3,1fr);align-self:stretch}
.proof-metric{position:relative;display:grid;grid-template-rows:auto 1fr auto;padding:30px 26px 28px 0;border-right:1px solid var(--line);min-height:330px;transition:transform .35s ease}
.proof-metric+.proof-metric{padding-left:26px}
.proof-metric:hover{transform:translateY(-7px)}
.proof-metric-no{font:800 10px/1 "Space Grotesk",sans-serif;letter-spacing:.18em;color:var(--accent)}
.proof-metric div{align-self:center}
.proof-metric strong{display:block;color:var(--ink);font:600 clamp(50px,5vw,78px)/.9 "Space Grotesk",sans-serif;letter-spacing:-.06em}
.proof-metric div span{display:block;margin-top:13px;color:var(--body);font:800 9px/1.3 "Space Grotesk",sans-serif;letter-spacing:.16em;text-transform:uppercase}
.proof-metric i{justify-self:start;color:var(--accent);font-size:16px}
.proof-editorial-quote{position:relative;margin:0;padding:44px 0 38px 52px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.quote-orbit{position:absolute;width:260px;height:260px;right:-34px;top:50%;transform:translateY(-50%);border:1px solid rgba(189,133,133,.22);border-radius:50%}
.quote-orbit span{position:absolute;inset:25px;border:1px dashed rgba(189,133,133,.2);border-radius:50%}
.quote-orbit span:nth-child(2){inset:68px;border-style:solid}
.quote-orbit b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--section-bg);font:700 20px "Space Grotesk",sans-serif}
.proof-quote-mark{position:relative;z-index:1;color:var(--accent);font:500 86px/.7 Georgia,serif}
.proof-editorial-quote blockquote{position:relative;z-index:1;max-width:610px;margin:20px 0 25px;color:var(--ink);font:500 clamp(25px,2.35vw,38px)/1.13 "Space Grotesk",sans-serif;letter-spacing:-.035em}
.proof-editorial-quote figcaption{position:relative;z-index:1;display:flex;align-items:center;gap:13px;color:var(--body);font-size:12px}
.proof-editorial-quote figcaption strong{color:var(--ink)}
.proof-editorial-quote figcaption b{color:var(--accent);letter-spacing:.12em;margin-left:4px}
.proof-editorial-strip{overflow:hidden;display:flex;gap:22px;align-items:center;white-space:nowrap;padding:17px 0;color:var(--muted);font:800 10px/1 "Space Grotesk",sans-serif;letter-spacing:.2em}
.proof-editorial-strip i{font-style:normal;color:var(--accent)}
.proof-editorial-strip span{animation:proofRail 20s linear infinite}
@keyframes proofRail{to{transform:translateX(-80px)}}
html:not(.dark) .proof-editorial{background:#FBEFEF!important;color:#190E0E}
html.dark .proof-editorial{background:#F29191!important;color:#F6EDED}
html:not(.dark) .proof-editorial-lead,html:not(.dark) .proof-metric div span,html:not(.dark) .proof-editorial-quote figcaption,html:not(.dark) .proof-overline,html:not(.dark) .proof-editorial-strip{color:#522C2C}
html.dark .proof-editorial-lead,html.dark .proof-metric div span,html.dark .proof-editorial-quote figcaption,html.dark .proof-overline,html.dark .proof-editorial-strip{color:#D8B7B7}

/* =========================================================
   FOOTER — CLEAN FOUR-COLUMN OPTICAL-STYLE STRUCTURE
   ========================================================= */
.cv-footer{background:#240707;color:#FCE0E0;padding:62px 0 22px;overflow:hidden}
.cv-footer-main{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.15fr;gap:64px;padding-bottom:58px}
.cv-footer-brand .footer-brand{margin:0 0 22px}
.cv-footer-brand .brand-text strong{color:#FEF8F8}
.cv-footer-brand .brand-text small{color:#CF9191}
.cv-footer-brand>p{max-width:355px;margin:0;color:#E4B8B8;font-size:15px;line-height:1.7}
.footer-socials{display:flex;gap:9px;margin-top:24px}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(238,180,180,.24);border-radius:50%;display:grid;place-items:center;color:#F58989;text-decoration:none;transition:.25s ease}
.footer-socials a:hover{transform:translateY(-3px);border-color:#F58989}
.cv-footer-col{display:flex;flex-direction:column;align-items:flex-start}
.cv-footer-col h3{margin:4px 0 21px;color:#FEF8F8;font:700 15px/1.2 "Space Grotesk",sans-serif}
.cv-footer-col a{color:#E4B8B8;text-decoration:none;font:500 14px/1.4 "Space Grotesk",sans-serif;padding:7px 0;transition:.2s ease}
.cv-footer-col a:hover{color:#FEF8F8;transform:translateX(3px)}
.cv-footer-contact p{display:flex;align-items:flex-start;gap:11px;margin:0 0 14px;color:#E4B8B8;font:500 14px/1.55 "Space Grotesk",sans-serif}
.cv-footer-contact p i{width:17px;color:#F58989;text-align:center;margin-top:3px}
.cv-footer-bottom{position:relative;border-top:1px solid rgba(228,184,184,.16);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#C58F8F;font:500 12px/1.4 "Space Grotesk",sans-serif}
.cv-footer-bottom>div{display:flex;gap:25px}
.cv-footer-bottom a{color:#E4B8B8;text-decoration:none}
.footer-top{position:absolute;right:0;bottom:28px;width:58px;height:58px;border:1px solid #E83434;border-radius:50%;background:transparent;color:#FEF8F8;display:grid;place-items:center;cursor:pointer;transform:translateY(0);transition:.25s ease}
.footer-top span{position:absolute;bottom:7px;font-size:7px;letter-spacing:.15em;opacity:.9}
.footer-top i{position:absolute;top:10px;font-size:14px}
.footer-top:hover{transform:translateY(-4px);background:rgba(232,52,52,.12)}

@media(max-width:1000px){
 .proof-editorial-top{grid-template-columns:150px 1fr;gap:30px}.proof-editorial-lead{grid-column:2}.proof-editorial-grid{grid-template-columns:1fr}.proof-editorial-quote{border-top:1px solid var(--line);padding-left:0}.cv-footer-main{grid-template-columns:1.2fr 1fr 1fr;gap:40px}.cv-footer-contact{grid-column:1/-1;border-top:1px solid rgba(228,184,184,.16);padding-top:28px;display:grid;grid-template-columns:repeat(2,1fr);column-gap:30px}.cv-footer-contact h3{grid-column:1/-1}}
@media(max-width:700px){
 .proof-editorial-wrap{padding-top:48px}.proof-editorial-top{display:block;padding-bottom:35px}.proof-editorial-kicker{margin-bottom:26px}.proof-editorial-heading h2{font-size:clamp(48px,14vw,68px)}.proof-editorial-lead{margin-top:22px;font-size:14px}.proof-editorial-grid{display:block}.proof-editorial-metrics{display:block}.proof-metric,.proof-metric+.proof-metric{min-height:0;padding:24px 0;border-right:0;border-bottom:1px solid var(--line);grid-template-columns:35px 1fr auto;grid-template-rows:auto}.proof-metric div{align-self:start}.proof-metric strong{font-size:56px}.proof-metric i{align-self:end}.proof-editorial-quote{padding:42px 0}.proof-editorial-quote blockquote{font-size:24px}.quote-orbit{width:190px;height:190px;right:-45px}.cv-footer{padding-top:48px}.cv-footer-main{grid-template-columns:1fr 1fr;gap:36px 24px;padding-bottom:42px}.cv-footer-brand{grid-column:1/-1}.cv-footer-contact{grid-column:1/-1;display:block}.cv-footer-bottom{align-items:flex-start;flex-direction:column;padding-right:0;padding-bottom:78px}.cv-footer-bottom>div{gap:18px}.footer-top{right:0;bottom:15px}}

/* =========================================================
   FINAL POLISH — SECTION 7 COMPACT PROOF + NO-BLUE FOOTER
   ========================================================= */
.proof-modern{
  position:relative;
  overflow:hidden;
  padding:56px 0 0 !important;
  background:var(--bg);
}
.proof-modern::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0 49.95%,rgba(109,59,59,.07) 50%,transparent 50.05%);
}
.proof-modern-wrap{position:relative;z-index:1}
.proof-modern-head{
  display:grid;
  grid-template-columns:180px minmax(0,1.2fr) minmax(250px,.75fr);
  gap:34px;
  align-items:end;
  padding-bottom:34px;
  border-bottom:1px solid var(--line);
}
.proof-modern-kicker{
  align-self:start;
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:10px;
  color:var(--accent);
  font:800 11px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.16em;
}
.proof-modern-kicker span{width:24px;height:1px;background:currentColor}
.proof-modern-title .proof-overline{
  display:block;
  margin-bottom:9px;
  color:var(--muted);
  font:800 9px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.2em;
}
.proof-modern-title h2{
  margin:0;
  color:var(--ink);
  font:600 clamp(42px,4.8vw,68px)/.92 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;
}
.proof-modern-title h2 em{font-style:normal;color:var(--accent)}
.proof-modern-lead{
  max-width:370px;
  margin:0 0 2px;
  color:var(--body,var(--muted));
  font-size:14px;
  line-height:1.65;
}
.proof-modern-content{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:0;
  border-bottom:1px solid var(--line);
}
.proof-modern-stats{display:grid;grid-template-columns:repeat(3,1fr)}
.proof-modern-stat{
  min-height:245px;
  padding:24px 24px 22px 0;
  border-right:1px solid var(--line);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:transform .3s ease,background .3s ease;
}
.proof-modern-stat + .proof-modern-stat{padding-left:24px}
.proof-modern-stat:hover{transform:translateY(-4px);background:rgba(109,59,59,.035)}
.proof-modern-stat-top{display:flex;justify-content:space-between;align-items:center}
.proof-modern-stat-top span{font:800 10px/1 "Space Grotesk",sans-serif;letter-spacing:.16em;color:var(--accent)}
.proof-modern-stat-top i{font-size:14px;color:var(--accent)}
.proof-modern-stat strong{display:block;color:var(--ink);font:600 clamp(48px,4.2vw,68px)/.9 "Space Grotesk",sans-serif;letter-spacing:-.06em}
.proof-modern-stat>span:last-child{
  color:var(--muted);
  font:800 12px/1.3 "Space Grotesk",sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.proof-modern-quote{
  position:relative;
  margin:0;
  padding:28px 0 26px 34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
}
.proof-modern-quote::after{
  content:"";
  position:absolute;
  width:210px;height:210px;
  right:-90px;top:50%;
  transform:translateY(-50%);
  border:1px solid rgba(109,59,59,.2);
  border-radius:50%;
}
.proof-modern-quote-head{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}
.proof-modern-quote-head span{color:var(--muted);font:800 9px/1.2 "Space Grotesk",sans-serif;letter-spacing:.17em}
.proof-modern-quote-head div{color:var(--accent);font:500 58px/.5 Georgia,serif}
.proof-modern-quote blockquote{
  position:relative;z-index:1;
  max-width:520px;
  margin:12px 0 18px;
  color:var(--ink);
  font:500 clamp(20px,1.8vw,27px)/1.18 "Space Grotesk",sans-serif;
  letter-spacing:-.025em;
}
.proof-modern-quote figcaption{position:relative;z-index:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:11px}
.proof-modern-quote figcaption strong{color:var(--ink)}
.proof-modern-quote figcaption b{color:var(--accent);letter-spacing:.1em}
.proof-modern-rail{
  display:flex;
  align-items:center;
  gap:18px;
  min-height:46px;
  overflow:hidden;
  white-space:nowrap;
  color:var(--muted);
  font:800 9px/1 "Space Grotesk",sans-serif;
  letter-spacing:.18em;
}
.proof-modern-rail i{font-style:normal;color:var(--accent)}
html:not(.dark) .proof-modern{background:#FBEFEF!important;color:#190E0E}
html:not(.dark) .proof-modern-title h2,
html:not(.dark) .proof-modern-stat strong,
html:not(.dark) .proof-modern-quote blockquote{color:#190E0E!important}
html:not(.dark) .proof-modern-lead,
html:not(.dark) .proof-modern-stat>span:last-child,
html:not(.dark) .proof-modern-quote-head span,
html:not(.dark) .proof-modern-quote figcaption,
html:not(.dark) .proof-modern-rail{color:#522C2C!important}
html:not(.dark) .proof-modern-title h2 em,
html:not(.dark) .proof-modern-kicker,
html:not(.dark) .proof-modern-stat-top span,
html:not(.dark) .proof-modern-stat-top i,
html:not(.dark) .proof-modern-quote-head div,
html:not(.dark) .proof-modern-quote figcaption b,
html:not(.dark) .proof-modern-rail i{color:#623434!important}
html.dark .proof-modern{background:#F29191!important;color:#F6EDED}
html.dark .proof-modern-title h2,
html.dark .proof-modern-stat strong,
html.dark .proof-modern-quote blockquote{color:#F6EDED!important}
html.dark .proof-modern-lead,
html.dark .proof-modern-stat>span:last-child,
html.dark .proof-modern-quote-head span,
html.dark .proof-modern-quote figcaption,
html.dark .proof-modern-rail{color:#D8B7B7!important}
html.dark .proof-modern-title h2 em,
html.dark .proof-modern-kicker,
html.dark .proof-modern-stat-top span,
html.dark .proof-modern-stat-top i,
html.dark .proof-modern-quote-head div,
html.dark .proof-modern-quote figcaption b,
html.dark .proof-modern-rail i{color:#B86D6D!important}

/* Footer: compact, aligned, neutral palette. No blue and no footer TOP circle. */
.cv-footer{
  margin:0!important;
  padding:46px 0 18px!important;
  background:#E8D4D4!important;
  color:#190E0E!important;
  border-top:1px solid rgba(25,14,14,.12);
}
.cv-footer-main{
  grid-template-columns:1.35fr .8fr .95fr 1.1fr!important;
  gap:42px!important;
  padding-bottom:38px!important;
}
.cv-footer-brand .footer-brand{margin:0 0 16px!important}
.cv-footer-brand .brand-text strong{color:#190E0E!important}
.cv-footer-brand .brand-text small{color:#623434!important;font-size:11px!important}
.cv-footer-brand>p{max-width:330px;margin:0;color:#522C2C!important;font-size:14px!important;line-height:1.6!important}
.footer-socials{gap:8px!important;margin-top:18px!important}
.footer-socials a{
  width:34px!important;height:34px!important;
  border:1px solid rgba(25,14,14,.2)!important;
  color:#190E0E!important;
  background:transparent!important;
}
.footer-socials a:hover{border-color:#623434!important;color:#623434!important}
.cv-footer-col{align-items:flex-start!important}
.cv-footer-col h3{margin:3px 0 14px!important;color:#190E0E!important;font-size:14px!important}
.cv-footer-col a{padding:4px 0!important;color:#522C2C!important;font-size:13px!important;line-height:1.35!important}
.cv-footer-col a:hover{color:#190E0E!important}
.cv-footer-contact p{gap:9px!important;margin:0 0 9px!important;color:#522C2C!important;font-size:13px!important;line-height:1.45!important}
.cv-footer-contact p i{width:15px!important;color:#623434!important;margin-top:2px!important}
.cv-footer-contact h3{font-size:14px!important}
.cv-footer-bottom{
  border-top:1px solid rgba(25,14,14,.14)!important;
  padding-top:16px!important;
  color:#6D3B3B!important;
  font-size:11px!important;
}
.cv-footer-bottom a{color:#3E2222!important}
.footer-top{display:none!important}
html.dark .cv-footer{background:#0F0808!important;color:#F6EDED!important;border-top-color:rgba(246,237,237,.12)!important}
html.dark .cv-footer-brand .brand-text strong,
html.dark .cv-footer-col h3{color:#F6EDED!important}
html.dark .cv-footer-brand .brand-text small{color:#B86D6D!important}
html.dark .cv-footer-brand>p,
html.dark .cv-footer-col a,
html.dark .cv-footer-contact p{color:#D8B7B7!important}
html.dark .cv-footer-col a:hover{color:#F6EDED!important}
html.dark .footer-socials a{border-color:rgba(246,237,237,.2)!important;color:#F6EDED!important}
html.dark .footer-socials a:hover{border-color:#B86D6D!important;color:#B86D6D!important}
html.dark .cv-footer-contact p i{color:#B86D6D!important}
html.dark .cv-footer-bottom{border-top-color:rgba(246,237,237,.14)!important;color:#C79696!important}
html.dark .cv-footer-bottom a{color:#F6EDED!important}

@media(max-width:1000px){
  .proof-modern-head{grid-template-columns:145px 1fr;gap:26px}
  .proof-modern-lead{grid-column:2}
  .proof-modern-content{grid-template-columns:1fr}
  .proof-modern-quote{border-top:1px solid var(--line);padding-left:0}
  .cv-footer-main{grid-template-columns:1.2fr 1fr 1fr!important;gap:30px!important}
  .cv-footer-contact{grid-column:1/-1!important;border-top:1px solid rgba(25,14,14,.12);padding-top:22px;display:grid;grid-template-columns:repeat(2,1fr);column-gap:24px}
  html.dark .cv-footer-contact{border-top-color:rgba(246,237,237,.12)}
  .cv-footer-contact h3{grid-column:1/-1}
}
@media(max-width:700px){
  .proof-modern{padding-top:42px!important}
  .proof-modern-head{display:block;padding-bottom:25px}
  .proof-modern-kicker{margin-bottom:18px}
  .proof-modern-title h2{font-size:clamp(40px,12vw,58px)}
  .proof-modern-lead{margin-top:18px;font-size:14px}
  .proof-modern-stats{grid-template-columns:1fr}
  .proof-modern-stat,.proof-modern-stat+.proof-modern-stat{min-height:0;padding:20px 0;border-right:0;border-bottom:1px solid var(--line)}
  .proof-modern-stat strong{font-size:52px;margin:18px 0 10px}
  .proof-modern-quote{padding:28px 0 26px}
  .proof-modern-quote blockquote{font-size:22px;margin-top:10px}
  .proof-modern-rail{min-height:42px;gap:14px}
  .cv-footer{padding:38px 0 16px!important}
  .cv-footer-main{grid-template-columns:1fr 1fr!important;gap:28px 22px!important;padding-bottom:28px!important}
  .cv-footer-brand{grid-column:1/-1}
  .cv-footer-brand>p{font-size:13px!important}
  .cv-footer-contact{grid-column:1/-1!important;display:block!important;padding-top:20px!important}
  .cv-footer-contact p{font-size:12px!important;margin-bottom:9px!important}
  .cv-footer-bottom{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
}

/* =========================================================
   VOLTIVA FINAL GLOBAL CORRECTIONS
   1. Footer typography is identical in light/dark mode.
   2. Mobile drawer Login / Register is always visible.
   3. Navigation active state is handled by index.js.
   4. Home 1 content typography is never below 14px.
   ========================================================= */

/* Footer: keep exactly the same readable scale in both themes. */
.cv-footer,
.cv-footer * {
  font-size: inherit;
}
.cv-footer-brand .brand-text strong { font-size: 15px !important; }
.cv-footer-brand .brand-text small { font-size: 14px !important; }
.cv-footer-brand > p { font-size: 14px !important; line-height: 1.65 !important; }
.cv-footer-col h3 { font-size: 15px !important; }
.cv-footer-col a { font-size: 14px !important; line-height: 1.45 !important; }
.cv-footer-contact p { font-size: 14px !important; line-height: 1.5 !important; }
.cv-footer-bottom { font-size: 14px !important; line-height: 1.5 !important; }
.cv-footer-bottom a { font-size: 14px !important; }
.footer-socials a { font-size: 15px !important; }

/* Never let a theme override make footer text smaller. */
html.dark .cv-footer-brand .brand-text strong,
html.dark .cv-footer-brand .brand-text small,
html.dark .cv-footer-brand > p,
html.dark .cv-footer-col h3,
html.dark .cv-footer-col a,
html.dark .cv-footer-contact p,
html.dark .cv-footer-bottom,
html.dark .cv-footer-bottom a {
  font-size: inherit !important;
}

/* Mobile footer uses the same minimum readable scale. */
@media (max-width: 700px) {
  .cv-footer-brand .brand-text strong { font-size: 15px !important; }
  .cv-footer-brand .brand-text small { font-size: 14px !important; }
  .cv-footer-brand > p { font-size: 14px !important; }
  .cv-footer-col h3 { font-size: 15px !important; }
  .cv-footer-col a { font-size: 14px !important; }
  .cv-footer-contact p { font-size: 14px !important; }
  .cv-footer-bottom,
  .cv-footer-bottom a { font-size: 14px !important; }
}

/* Mobile/tablet Login button: visible and high contrast in both themes. */
.drawer-login {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 56px !important;
  padding: 15px 18px !important;
  margin-top: auto !important;
  border: 1px solid var(--line);
  background: var(--ink) !important;
  color: var(--bg) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html.dark .drawer-login {
  background: #F6EDED !important;
  color: #F29191 !important;
  border-color: #F6EDED !important;
}
html:not(.dark) .drawer-login {
  background: #190E0E !important;
  color: #F6EDED !important;
  border-color: #190E0E !important;
}
.drawer-login i { font-size: 14px !important; }

/* Home 1: content copy must never fall below 14px.
   Navigation/controls and cart badges are intentionally excluded. */
.home-page p,
.home-page li,
.home-page label,
.home-page small,
.home-page .eyebrow,
.home-page .section-kicker,
.home-page .section-label,
.home-page .hero-description,
.home-page .category-list a,
.home-page .product-copy,
.home-page .testimonial blockquote,
.home-page .reviewer strong,
.home-page .reviewer small,
.home-page .stats span,
.home-page .booking p,
.home-page .booking label,
.home-page .form-error,
.home-page .cv-footer,
.home-page .cv-footer p,
.home-page .cv-footer a,
.home-page .cv-footer h3 {
  font-size: 14px !important;
}
.home-page .cart-count { font-size: 9px !important; }

/* Active navbar: make the current page unmistakable in both themes. */
.nav-link.active,
.has-dropdown.active > button,
.mobile-nav > a.active,
.mobile-group.active > button {
  color: #623434 !important;
  font-weight: 800 !important;
  position: relative;
}
html.dark .nav-link.active,
html.dark .has-dropdown.active > button,
html.dark .mobile-nav > a.active,
html.dark .mobile-group.active > button {
  color: #D17575 !important;
}
.desktop-nav > .nav-item.has-dropdown.active > button::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 4px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
}
@media (max-width: 1023px) {
  .mobile-nav > a.active,
  .mobile-group.active > button {
    background: color-mix(in srgb, var(--accent) 10%, transparent);
    border-radius: 8px;
  }
}

/* ===== END index.css ===== */

/* ===== BEGIN global-theme.css ===== */

:root{--page-bg:#FBEFEF;--page-ink:#1D1010}
html:not(.dark) body{background:var(--page-bg);color:var(--page-ink)}
html.dark body{background:#F29191;color:#F6EDED}
html:not(.dark) small{color:#311B1B}


/* =========================================================
   GLOBAL LIGHT-MODE CONTRAST + TYPOGRAPHY SYSTEM
   Applied across every Voltiva page.
   ========================================================= */
:root{
  --page-bg:#FBEFEF;
  --page-ink:#190E0E;
  --light-bg:#FBEFEF;
  --light-surface:#F4EAEA;
  --light-ink:#190E0E;
  --light-muted:#522C2C;
  --light-line:rgba(25,14,14,.18);
}
html:not(.dark){
  --bg:#FBEFEF !important;
  --page-bg:#FBEFEF;
  --ink:#190E0E !important;
  --muted:#522C2C !important;
  --surface:#F4EAEA !important;
  --line:rgba(25,14,14,.18) !important;
  --shadow:0 20px 60px rgba(25,14,14,.10);
}
html:not(.dark) body{
  background:#FBEFEF !important;
  color:#190E0E !important;
}
html:not(.dark) body *,
html:not(.dark) .site-header,
html:not(.dark) .mobile-drawer{
  --text-dark:#190E0E;
}
html:not(.dark) p,
html:not(.dark) li,
html:not(.dark) label,
html:not(.dark) .muted,
html:not(.dark) .text-muted{
  color:#522C2C !important;
}
html:not(.dark) h1,
html:not(.dark) h2,
html:not(.dark) h3,
html:not(.dark) h4,
html:not(.dark) h5,
html:not(.dark) h6,
html:not(.dark) strong,
html:not(.dark) b,
html:not(.dark) a,
html:not(.dark) button,
html:not(.dark) .nav-link,
html:not(.dark) .brand,
html:not(.dark) .login-link{
  color:#190E0E;
}
html:not(.dark) small{
  font-size:14px !important;
  color:#3E2222 !important;
}
html:not(.dark) .eyebrow,
html:not(.dark) .category-intro span,
html:not(.dark) .section-kicker,
html:not(.dark) .section-label,
html:not(.dark) .hero-trust,
html:not(.dark) .category-list small,
html:not(.dark) .float-tag small,
html:not(.dark) .product-meta,
html:not(.dark) .rating,
html:not(.dark) .step p,
html:not(.dark) .footer p,
html:not(.dark) .footer a,
html:not(.dark) .footer-bottom,
html:not(.dark) .form-note{
  font-size:calc(100% + 4px) !important;
  color:#3E2222 !important;
}
html:not(.dark) .eyebrow,
html:not(.dark) .category-intro span{
  color:#552E2E !important;
}
html:not(.dark) input,
html:not(.dark) textarea,
html:not(.dark) select{
  color:#190E0E !important;
  background:#F4EAEA !important;
  border-color:rgba(25,14,14,.24) !important;
}
html:not(.dark) input::placeholder,
html:not(.dark) textarea::placeholder{
  color:#6D3B3B !important;
  opacity:1;
}
html:not(.dark) .site-header{
  background:rgba(238,223,223,.94) !important;
  border-color:rgba(25,14,14,.18) !important;
}
html:not(.dark) .dropdown,
html:not(.dark) .mobile-drawer{
  background:#FBEFEF !important;
  color:#190E0E !important;
}
html:not(.dark) .dropdown a:hover,
html:not(.dark) .dropdown a.active,
html:not(.dark) .icon-btn,
html:not(.dark) .pill-btn{
  background:#F4EAEA !important;
  color:#190E0E !important;
}
html:not(.dark) .btn-primary{
  background:#190E0E !important;
  color:#FBEFEF !important;
}
html:not(.dark) .btn-ghost{
  color:#190E0E !important;
  border-color:rgba(25,14,14,.28) !important;
}
html:not(.dark) .float-tag{
  background:rgba(244,234,234,.94) !important;
  color:#190E0E !important;
}


/* =========================================================
   FINAL CONTRAST / NON-YELLOW PALETTE
   Light mode: ECEEDF background + dark readable text.
   Dark mode: near-black background + bright readable text.
   ========================================================= */
:root{
  --accent:#6D3B3B;
  --ink:#190E0E;
  --muted:#522C2C;
  --bg:#FBEFEF;
  --surface:#F4EAEA;
  --line:rgba(25,14,14,.18);
}
html.dark{
  --accent:#B86D6D;
  --ink:#F6EDED;
  --muted:#D8B7B7;
  --bg:#F29191;
  --surface:#211212;
  --line:rgba(246,237,237,.17);
}

/* Never use the pale/yellow accent for readable copy. */
html:not(.dark) .hero-title-line,
html:not(.dark) .experience-marquee span,
html:not(.dark) .collection-panel .eyebrow,
html:not(.dark) .collection-intro-panel h2 em,
html:not(.dark) .collection-panel h3 em,
html:not(.dark) .orbit-heading h2 em,
html:not(.dark) .repair-path-intro h2 em,
html:not(.dark) .brands-intro h2 em,
html:not(.dark) .brand-constellation-head h2 em,
html:not(.dark) .proof-top h2 em,
html:not(.dark) .proof-quote-mark,
html:not(.dark) .quality-card i,
html:not(.dark) .hero-trust i,
html:not(.dark) .orbit-center span,
html:not(.dark) .orbit-product>span,
html:not(.dark) .brand-node:hover{
  color:#623434 !important;
}

/* All normal light-mode copy is dark. */
html:not(.dark) body,
html:not(.dark) p,
html:not(.dark) li,
html:not(.dark) label,
html:not(.dark) small,
html:not(.dark) .muted,
html:not(.dark) .text-muted,
html:not(.dark) .eyebrow,
html:not(.dark) .section-kicker,
html:not(.dark) .section-label{
  color:#3E2222;
}

/* The two intentionally dark editorial sections need light copy in light mode.
   These rules come after the global p/h overrides, so no text disappears. */
html:not(.dark) .section5-repair,
html:not(.dark) .section8-typewriter{
  background:#190E0E !important;
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair h1,
html:not(.dark) .section5-repair h2,
html:not(.dark) .section5-repair h3,
html:not(.dark) .section5-repair h4,
html:not(.dark) .section5-repair strong,
html:not(.dark) .section5-repair p,
html:not(.dark) .section5-repair small,
html:not(.dark) .section5-repair .repair-path-intro p,
html:not(.dark) .section5-repair .repair-node p,
html:not(.dark) .section5-repair .text-link,
html:not(.dark) .section5-repair .node-no,
html:not(.dark) .section8-typewriter h1,
html:not(.dark) .section8-typewriter h2,
html:not(.dark) .section8-typewriter h3,
html:not(.dark) .section8-typewriter p,
html:not(.dark) .section8-typewriter small,
html:not(.dark) .section8-typewriter .typewriter-copy p,
html:not(.dark) .section8-typewriter .repair-prompt,
html:not(.dark) .section8-typewriter .repair-prompt a{
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair .eyebrow,
html:not(.dark) .section8-typewriter .eyebrow,
html:not(.dark) .section5-repair .repair-node small,
html:not(.dark) .section5-repair .repair-node>i,
html:not(.dark) .section8-typewriter .typewriter-prefix,
html:not(.dark) .section8-typewriter .typewriter-meta i{
  color:#B86D6D !important;
}
html:not(.dark) .section5-repair .repair-node p,
html:not(.dark) .section8-typewriter .typewriter-copy p,
html:not(.dark) .section8-typewriter .typewriter-meta,
html:not(.dark) .section8-typewriter .form-line-label,
html:not(.dark) .section8-typewriter .repair-prompt{
  color:#D8B7B7 !important;
}
html:not(.dark) .section8-typewriter .type-input-row input{
  color:#F6EDED !important;
}
html:not(.dark) .section8-typewriter .type-input-row input::placeholder{
  color:#C69595 !important;
}

/* Dark mode: every section keeps a strong text/background contrast. */
html.dark p,
html.dark li,
html.dark label,
html.dark small,
html.dark .muted,
html.dark .text-muted{
  color:#D8B7B7;
}
html.dark h1,html.dark h2,html.dark h3,html.dark h4,html.dark h5,html.dark h6,
html.dark strong,html.dark b,html.dark a,html.dark button{
  color:#F6EDED;
}
html.dark .section5-repair,
html.dark .section8-typewriter{
  background:#F29191 !important;
  color:#F6EDED !important;
}
html.dark .section5-repair p,
html.dark .section8-typewriter p,
html.dark .section8-typewriter .typewriter-copy p,
html.dark .section8-typewriter .typewriter-meta,
html.dark .section8-typewriter .form-line-label,
html.dark .section8-typewriter .repair-prompt{
  color:#D8B7B7 !important;
}
html.dark .section5-repair .eyebrow,
html.dark .section5-repair .repair-node small,
html.dark .section5-repair .repair-node>i,
html.dark .section8-typewriter .eyebrow,
html.dark .section8-typewriter .typewriter-prefix,
html.dark .section8-typewriter .typewriter-meta i{
  color:#B86D6D !important;
}

/* Keep light-mode section backgrounds consistently ECEEDF where the section is not
   intentionally dark. */
html:not(.dark) .experience-section,
html:not(.dark) .collection-scroll,
html:not(.dark) .section4-orbit,
html:not(.dark) .section6-constellation{
  background:#FBEFEF !important;
}


/* =========================================================
   FINAL FOOTER + NEWSLETTER CONTRAST / ALIGNMENT PATCH
   Loaded last so theme overrides cannot reduce readability.
   ========================================================= */
.footer{
  background:#0F0808 !important;
  color:#F6EDED !important;
  padding:64px 0 22px !important;
  overflow:hidden;
}
.footer-shell{
  display:grid;
  grid-template-columns:minmax(300px,1.05fr) minmax(0,1fr);
  gap:90px;
  align-items:start;
}
.footer-kicker{color:#BD8585 !important;font-size:12px !important}
.footer-kicker i{background:#BD8585 !important}
.footer-intro h2{color:#F6EDED !important}
.footer-intro h2 em{color:#BD8585 !important}
.footer-intro>p{color:#D9B8B8 !important;font-size:16px !important;line-height:1.7}
.footer-column-label{color:#BD8585 !important;font-size:11px !important}
.footer-column a{color:#F6EDED !important;font-size:15px !important}
.footer-visit p{color:#D9B8B8 !important;font-size:15px !important;line-height:1.65}
.footer .socials a{color:#F6EDED !important;border-color:rgba(246,237,237,.22) !important}
.footer-bottom{color:#C79696 !important;font-size:13px !important}
.footer-bottom a{color:#F6EDED !important}

/* Dark mode newsletter field: never transparent-on-dark */
html.dark .section8-typewriter .typewriter-form-wrap{border-color:rgba(246,237,237,.22) !important}
html.dark .section8-typewriter .form-line-label{color:#E1C8C8 !important;font-size:11px !important}
html.dark .section8-typewriter .type-input-row{border-bottom-color:rgba(246,237,237,.30) !important}
html.dark .section8-typewriter .type-input-row input{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  min-height:52px !important;
  background:#211212 !important;
  color:#F6EDED !important;
  border:1px solid rgba(246,237,237,.18) !important;
  border-radius:8px 0 0 8px !important;
  padding:14px 15px !important;
}
html.dark .section8-typewriter .type-input-row input::placeholder{
  color:#C79696 !important;opacity:1 !important
}
html.dark .section8-typewriter .type-input-row .btn{min-height:52px !important}
html.dark .section8-typewriter .repair-prompt{color:#D9B8B8 !important;font-size:14px !important}
html.dark .section8-typewriter .repair-prompt a{color:#F6EDED !important}

/* Make all footer utility copy readable in both themes */
html:not(.dark) .footer{background:#0F0808 !important;color:#F6EDED !important}
html:not(.dark) .footer p,
html:not(.dark) .footer a,
html:not(.dark) .footer h2,
html:not(.dark) .footer h3,
html:not(.dark) .footer-bottom{color:#F6EDED !important}
html:not(.dark) .footer-intro>p,
html:not(.dark) .footer-visit p{color:#D9B8B8 !important}
html:not(.dark) .footer-kicker,
html:not(.dark) .footer-column-label{color:#BD8585 !important}
html:not(.dark) .footer-bottom{color:#C79696 !important}

/* Small labels across the typewriter area are intentionally larger */
html.dark .section8-typewriter .typewriter-meta{font-size:11px !important;color:#D9B8B8 !important}
html.dark .section8-typewriter .typewriter-copy p{color:#D9B8B8 !important;font-size:16px !important}
html.dark .section8-typewriter .typewriter-copy h2{color:#F6EDED !important}

@media(max-width:1023px){
  .footer-shell{grid-template-columns:1fr;gap:45px}
  .footer-links{gap:26px}
}
@media(max-width:767px){
  .footer{padding:52px 0 20px !important}
  .footer-shell{gap:38px}
  .footer-intro h2{font-size:44px}
  .footer-intro>p{font-size:15px !important}
  .footer-links{grid-template-columns:1fr 1fr;gap:34px 22px}
  .footer-visit{grid-column:1/-1;padding-top:22px}
  .footer-column a,.footer-visit p{font-size:14px !important}
  .footer-bottom{margin-top:38px;align-items:flex-start;flex-direction:column;gap:9px;font-size:12px !important}
  html.dark .section8-typewriter .type-input-row{display:block}
  html.dark .section8-typewriter .type-input-row input{width:100%;border-radius:8px !important}
}

/* =========================================================
   FINAL OVERRIDES — shared across all Voltiva pages
   ========================================================= */
.cv-footer-brand .brand-text strong{font-size:15px !important}
.cv-footer-brand .brand-text small{font-size:14px !important}
.cv-footer-brand>p{font-size:14px !important;line-height:1.65 !important}
.cv-footer-col h3{font-size:15px !important}
.cv-footer-col a{font-size:14px !important;line-height:1.45 !important}
.cv-footer-contact p{font-size:14px !important;line-height:1.5 !important}
.cv-footer-bottom,.cv-footer-bottom a{font-size:14px !important;line-height:1.5 !important}
@media(max-width:700px){
  .cv-footer-brand .brand-text strong{font-size:15px !important}
  .cv-footer-brand .brand-text small{font-size:14px !important}
  .cv-footer-brand>p{font-size:14px !important}
  .cv-footer-col h3{font-size:15px !important}
  .cv-footer-col a{font-size:14px !important}
  .cv-footer-contact p{font-size:14px !important}
  .cv-footer-bottom,.cv-footer-bottom a{font-size:14px !important}
}
.drawer-login{
  display:flex !important;align-items:center;justify-content:center;gap:9px;
  min-height:56px !important;padding:15px 18px !important;margin-top:auto !important;
  border:1px solid var(--line);background:#190E0E !important;color:#F6EDED !important;
  font-size:15px !important;font-weight:800 !important;opacity:1 !important;visibility:visible !important;
}
html.dark .drawer-login{background:#F6EDED !important;color:#F29191 !important;border-color:#F6EDED !important}
html:not(.dark) .drawer-login{background:#190E0E !important;color:#F6EDED !important;border-color:#190E0E !important}
.drawer-login i{font-size:14px !important}
.nav-link.active,.has-dropdown.active>button,.mobile-nav>a.active,.mobile-group.active>button{
  color:#623434 !important;font-weight:800 !important;position:relative;
}
html.dark .nav-link.active,html.dark .has-dropdown.active>button,html.dark .mobile-nav>a.active,html.dark .mobile-group.active>button{color:#D17575 !important}
.desktop-nav>.nav-item.has-dropdown.active>button::after{
  content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;border-radius:2px;background:currentColor;
}
@media(max-width:1023px){
 .mobile-nav>a.active,.mobile-group.active>button{background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:8px}
}
/* Home 1 content text floor: 14px minimum, excluding the tiny cart badge. */
.home-page p,.home-page li,.home-page label,.home-page small,
.home-page .eyebrow,.home-page .section-kicker,.home-page .section-label,
.home-page .hero-description,.home-page .category-list a,
.home-page .testimonial blockquote,.home-page .reviewer strong,.home-page .reviewer small,
.home-page .stats span,.home-page .booking p,.home-page .booking label,.home-page .form-error{
 font-size:14px !important;
}
.home-page .cart-count{font-size:9px !important}

/* ===== END global-theme.css ===== */

/* ===== BEGIN cursor.css ===== */
/* Voltiva global custom cursor */
@media (pointer: fine) and (min-width: 1024px) {
  html.has-custom-cursor,
  html.has-custom-cursor body,
  html.has-custom-cursor a,
  html.has-custom-cursor button,
  html.has-custom-cursor input,
  html.has-custom-cursor textarea,
  html.has-custom-cursor select {
    cursor: none !important;
  }

  .voltiva-cursor,
  .voltiva-cursor-ring {
    position: fixed;
    left: 0;
    top: 0;
    pointer-events: none;
    z-index: 2147483647;
    opacity: 0;
    transform: translate3d(-100px,-100px,0);
    will-change: transform;
  }

  .voltiva-cursor {
    width: 7px;
    height: 7px;
    margin: -3.5px 0 0 -3.5px;
    border-radius: 50%;
    background: #D17575;
    box-shadow: 0 0 18px rgba(209,117,117,.7);
    transition: width .2s ease, height .2s ease, margin .2s ease, opacity .2s ease;
  }

  .voltiva-cursor-ring {
    width: 34px;
    height: 34px;
    margin: -17px 0 0 -17px;
    border: 1px solid rgba(209,117,117,.72);
    border-radius: 50%;
    transition: width .25s ease, height .25s ease, margin .25s ease, border-color .25s ease, background .25s ease, opacity .25s ease;
  }

  html:not(.dark) .voltiva-cursor {
    background: #904E4E;
    box-shadow: 0 0 16px rgba(235,167,167,.85);
  }

  html:not(.dark) .voltiva-cursor-ring {
    border-color: rgba(94,51,51,.55);
  }

  .voltiva-cursor.is-visible,
  .voltiva-cursor-ring.is-visible {
    opacity: 1;
  }

  .voltiva-cursor.is-hover {
    width: 4px;
    height: 4px;
    margin: -2px 0 0 -2px;
  }

  .voltiva-cursor-ring.is-hover {
    width: 54px;
    height: 54px;
    margin: -27px 0 0 -27px;
    background: rgba(209,117,117,.08);
    border-color: #D17575;
  }

  .voltiva-cursor-ring.is-press {
    width: 42px;
    height: 42px;
    margin: -21px 0 0 -21px;
  }
}

@media (pointer: coarse), (max-width: 1023px) {
  .voltiva-cursor,
  .voltiva-cursor-ring {
    display: none !important;
  }
}

/* ===== END cursor.css ===== */

/* ===== BEGIN about.css ===== */
/* =========================================================
   VOLTIVA ABOUT — editorial motion system
   Loaded after the shared theme so this page can safely reuse
   the existing navbar, footer, RTL and dark/light controls.
   ========================================================= */
.about-page{--about-accent:#CA6868;--about-accent-dark:#693939;--about-dark:#120A0A;--about-light:#EFDFDF;--about-card:#F7EFEF;--about-line:rgba(27,15,15,.14);--about-muted:#683838;background:var(--about-light);color:#1D1010;font-size:16px}
.about-page *{box-sizing:border-box}.about-page img{max-width:100%;display:block}.about-page a{color:inherit}.about-page .site-header{z-index:1000}.about-container{width:min(1180px,calc(100% - 44px));margin-inline:auto}.about-section{position:relative;overflow:hidden}.about-page h1,.about-page h2,.about-page h3{font-family:"Space Grotesk",Inter,sans-serif;line-height:1.03;letter-spacing:-.035em;margin:0}.about-page h1{font-size:clamp(42px,5.8vw,76px)}.about-page h2{font-size:clamp(34px,4.4vw,58px)}.about-page h3{font-size:24px}.about-page p{font-size:16px;line-height:1.7}.about-page em{font-style:normal;color:#A84F4F}.about-kicker{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;color:#EEE0E0;margin-bottom:22px}.about-kicker span{color:var(--about-accent)}.about-kicker i{width:28px;height:1px;background:currentColor;opacity:.7}.about-kicker.dark-text{color:#5C3232}.about-kicker.dark-text b{color:#361D1D}.about-actions{display:flex;gap:12px;flex-wrap:wrap}.about-btn{min-height:48px;padding:12px 18px;border-radius:999px;display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:800;transition:transform .3s ease,background .3s ease,border-color .3s ease}.about-btn:hover{transform:translateY(-3px)}.about-btn.solid{background:var(--about-accent);color:#160C0C}.about-btn.ghost{border:1px solid rgba(255,255,255,.42);color:#FFFFFF;background:rgba(255,255,255,.04)}

/* 01 — hero */
.about-hero{min-height:calc(100svh - 74px);background:#0C0808;color:#FFFFFF;display:flex;align-items:center}.about-hero-bg,.hero-shade,.hero-noise{position:absolute;inset:0}.about-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{background:linear-gradient(90deg,rgba(9,5,5,.92) 0%,rgba(9,5,5,.72) 42%,rgba(9,5,5,.28) 75%,rgba(9,5,5,.52) 100%)}.hero-noise{opacity:.12;background-image:radial-gradient(rgba(255,255,255,.45) .6px,transparent .7px);background-size:5px 5px;mix-blend-mode:overlay}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:50px;align-items:center;padding:82px 0 74px}.hero-copy{max-width:610px}.kinetic-title{max-width:680px}.kinetic-title em{display:block}.hero-lead{max-width:580px;color:#DFC3C3;margin:22px 0 28px}.hero-art{height:570px;position:relative;perspective:1300px}.hero-device{position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.42);transform-style:preserve-3d}.hero-device img{width:100%;height:100%;object-fit:cover}.device-one{width:390px;height:490px;right:48px;top:25px;transform:rotateY(-14deg) rotateZ(5deg)}.device-two{width:280px;height:350px;right:310px;bottom:34px;transform:rotateY(16deg) rotateZ(-8deg);z-index:2}.hero-orbit{position:absolute;border:1px solid rgba(202,104,104,.75);border-radius:50%;pointer-events:none}.orbit-one{width:520px;height:300px;right:5px;top:75px;transform:rotate(-20deg)}.orbit-two{width:320px;height:520px;right:115px;top:15px;transform:rotate(25deg);border-color:rgba(255,255,255,.28)}.hero-tag{position:absolute;z-index:5;background:rgba(20,11,11,.82);backdrop-filter:blur(12px);border:1px solid rgba(202,104,104,.3);border-radius:14px;padding:12px 14px;display:flex;gap:10px;align-items:center;box-shadow:0 20px 45px rgba(0,0,0,.28)}.hero-tag i{font-size:18px;color:var(--about-accent)}.hero-tag b,.hero-tag small{display:block}.hero-tag b{font-size:13px}.hero-tag small{font-size:12px;color:#CEA4A4;margin-top:2px}.tag-quality{top:32px;right:5px}.tag-smart{bottom:42px;left:25px}.hero-bottom{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 44px));z-index:3;border-top:1px solid rgba(255,255,255,.2);padding:15px 0;display:flex;justify-content:space-between;color:#D7B6B6;font-size:11px;letter-spacing:.12em;font-weight:800}

/* 02 — story */
.story{background:#F6ECEC;padding:120px 0}.story-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:72px;align-items:center}.story-copy{max-width:520px}.story-copy h2{margin-bottom:22px}.story-copy p{color:#643636;margin:0 0 15px}.story-year{margin-top:35px;border-left:2px solid #BD7272;padding:7px 0 7px 18px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:end}.story-year span{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#874949}.story-year strong{font-family:"Space Grotesk";font-size:40px;line-height:1}.story-year b{grid-column:1/-1;margin-top:5px;font-size:13px;color:#7A4141}.story-year i{display:none}.story-visual{position:relative;min-height:500px}.story-image{position:absolute;overflow:hidden;border-radius:26px;box-shadow:0 25px 65px rgba(41,22,22,.16)}.story-image img{width:100%;height:100%;object-fit:cover}.story-image.main{inset:20px 40px 50px 0}.story-image.small{width:43%;height:44%;right:0;bottom:0;border:8px solid #F6ECEC}.story-note{position:absolute;right:-4px;top:8px;background:#F6ECEC;padding:16px 0 16px 18px;font-family:"Space Grotesk";font-size:12px;letter-spacing:.12em;transform:rotate(4deg)}.story-note strong{font-size:14px;color:#824444}

/* 03 — bento */
.values{background:#170D0D;color:#F7EEEE;padding:112px 0}.split-head{display:grid;grid-template-columns:1.1fr .7fr;gap:50px;align-items:end;margin-bottom:42px}.split-head>p{margin:0;color:#D3ADAD}.values .about-kicker{margin-bottom:16px}.bento-grid{display:grid;grid-template-columns:1.15fr .85fr .95fr;grid-template-rows:270px 220px;gap:16px}.bento-card{position:relative;overflow:hidden;border:1px solid rgba(212,143,143,.18);border-radius:22px;background:#241313;padding:28px;min-width:0}.bento-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.2,1),filter .8s ease}.bento-card:hover img{transform:scale(1.08);filter:saturate(1.08)}.bento-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,7,7,.08),rgba(10,7,7,.88))}.bento-content{position:absolute;left:26px;right:26px;bottom:24px;z-index:2}.bento-card span{display:block;color:#C86D6D;font-size:12px;letter-spacing:.12em;font-weight:800}.bento-card h3{margin:7px 0 5px;font-size:25px}.bento-card p{margin:0;color:#D5B1B1;font-size:14px}.bento-large{grid-row:span 2}.bento-card:not(.bento-large):not(.bento-wide){display:flex;flex-direction:column;justify-content:flex-end}.bento-icon{width:48px;height:48px;border:1px solid rgba(202,104,104,.35);border-radius:50%;display:grid;place-items:center;color:#CA6868;font-size:19px;margin-bottom:auto}.bento-wide{grid-column:2/4;display:flex;align-items:center;gap:22px;background:linear-gradient(135deg,#241313,#351C1C)}.bento-wide h3{font-size:26px}.bento-number{font-family:"Space Grotesk";font-size:64px;color:#A75C5C;line-height:1;opacity:.75}.bento-arrow{margin-left:auto;color:#CA6868;font-size:24px}

/* 04 — metrics */
.difference{background:#F3E8E8;padding:125px 0}.difference-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.difference-copy p{max-width:480px;color:#693939;margin:22px 0 28px}.metric-stage{height:510px;position:relative;display:grid;place-items:center}.metric-core{width:285px;height:285px;border-radius:50%;overflow:hidden;border:10px solid rgba(196,98,98,.48);box-shadow:0 0 0 18px rgba(196,98,98,.08),0 30px 80px rgba(57,31,31,.18);z-index:2}.metric-core img{width:100%;height:100%;object-fit:cover}.metric-ring{position:absolute;border:1px solid rgba(143,72,72,.38);border-radius:50%;inset:42px 110px}.ring-a{transform:rotate(25deg) scaleX(1.35)}.ring-b{transform:rotate(-32deg) scaleX(1.35)}.metric-pill{position:absolute;z-index:4;background:rgba(252,245,245,.92);border:1px solid rgba(113,61,61,.15);box-shadow:0 14px 34px rgba(46,24,24,.08);border-radius:18px;padding:13px 16px;display:flex;align-items:baseline;gap:5px;min-width:150px}.metric-pill strong{font:700 29px "Space Grotesk"}.metric-pill>span{font-weight:700}.metric-pill small{display:block;font-size:11px;font-weight:600;color:#894A4A}.pill-a{left:2%;top:100px}.pill-b{left:5%;bottom:100px}.pill-c{right:1%;top:90px}.pill-d{right:4%;bottom:92px}

/* 05 — 3D */
.three-d{background:#120A0A;color:#F6EDED;padding:130px 0;min-height:700px}.three-bg-word{position:absolute;font-family:"Space Grotesk";font-weight:800;font-size:clamp(130px,22vw,310px);line-height:1;letter-spacing:-.08em;color:rgba(201,103,103,.045);right:-30px;top:40px;pointer-events:none}.three-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;position:relative;z-index:2}.three-copy{max-width:500px}.three-copy p{color:#D5B1B1;margin:22px 0}.lab-points{display:flex;gap:10px;flex-wrap:wrap}.lab-points span{border:1px solid rgba(205,111,111,.24);border-radius:999px;padding:9px 13px;color:#E3CCCC;font-size:13px}.lab-points i{color:#CC6B6B;margin-right:5px}.three-stage{height:500px;position:relative;perspective:1200px;display:grid;place-items:center}.three-shadow{position:absolute;width:360px;height:70px;background:rgba(0,0,0,.55);filter:blur(24px);bottom:70px;border-radius:50%}.three-orbit{position:absolute;border:1px solid rgba(202,104,104,.45);border-radius:50%;transform-style:preserve-3d}.orbit-x{width:460px;height:180px;transform:rotateX(68deg) rotateZ(-18deg)}.orbit-y{width:300px;height:460px;transform:rotateY(68deg) rotateZ(12deg);border-color:rgba(255,255,255,.18)}.phone-3d{width:250px;height:460px;position:relative;transform-style:preserve-3d;transform:rotateY(-20deg) rotateX(8deg) rotateZ(2deg);border-radius:34px;transition:transform .2s ease;box-shadow:0 35px 80px rgba(0,0,0,.45)}.phone-face{position:absolute;inset:8px;border-radius:29px;overflow:hidden;border:2px solid rgba(255,255,255,.18);transform:translateZ(12px);background:#2C1818}.phone-face img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}.phone-edge{position:absolute;inset:0;border-radius:34px;background:linear-gradient(135deg,#402323,#1D0F0F);transform:translateZ(0)}.phone-camera{position:absolute;top:28px;left:28px;width:65px;height:75px;background:#0F0808;border-radius:18px;transform:translateZ(18px);padding:9px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.phone-camera i{display:block;border-radius:50%;background:#351D1D;border:3px solid #643636}.phone-camera i:last-child{grid-column:span 2;width:15px;height:15px}.float-chip{position:absolute;z-index:5;background:#201212;border:1px solid rgba(202,104,104,.32);padding:11px 14px;border-radius:12px;font-size:13px;box-shadow:0 18px 45px rgba(0,0,0,.3)}.float-chip i{color:#CA6868;margin-right:7px}.chip-one{right:7%;top:105px}.chip-two{left:5%;bottom:90px}

/* 06 — pinned scrollytelling */
.scroll-story{background:#EFDFDF;padding:110px 0}.scroll-story-inner{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px}.scroll-sticky{position:sticky;top:100px;height:max-content;padding-bottom:80px}.scroll-sticky h2{margin-bottom:20px}.scroll-caption{max-width:420px;color:#6B3A3A}.scroll-progress{margin-top:34px;width:180px;height:3px;background:rgba(41,22,22,.12);overflow:hidden}.scroll-progress span{display:block;height:100%;width:0;background:#9D4D4D}.scroll-panels{display:flex;flex-direction:column;gap:110px}.scroll-panel{min-height:520px;display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto 1fr;column-gap:20px;position:relative;opacity:.35;transition:opacity .5s ease}.scroll-panel.is-active{opacity:1}.panel-no{font:700 14px "Space Grotesk";color:#934F4F;padding-top:7px}.panel-copy span{font-size:12px;letter-spacing:.12em;font-weight:800;color:#864848}.panel-copy h3{font-size:38px;margin:8px 0 10px}.panel-copy p{max-width:500px;color:#713D3D;margin:0}.panel-image{grid-column:2;margin-top:28px;height:360px;overflow:hidden;border-radius:24px;box-shadow:0 25px 65px rgba(43,23,23,.14)}.panel-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.75,.2,1)}.scroll-panel.is-active .panel-image img{transform:scale(1.045)}

/* 07 — service */
.service-story{min-height:620px;color:#FFFFFF;display:flex;align-items:center}.service-image,.service-shade{position:absolute;inset:0}.service-real{width:100%;height:100%;object-fit:cover}.placeholder-man{display:none}.service-shade{background:linear-gradient(90deg,rgba(10,6,6,.88) 0%,rgba(10,6,6,.66) 52%,rgba(10,6,6,.25) 100%)}.service-content{position:relative;z-index:2;padding:115px 0}.service-content p{max-width:550px;color:#DFC4C4;margin:22px 0 28px}.service-actions{display:flex;gap:12px;flex-wrap:wrap}.service-chip{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(224,143,143,.42);border-radius:999px;padding:11px 15px;background:rgba(16,9,9,.38);backdrop-filter:blur(7px);font-size:13px;font-weight:800;transition:transform .3s ease,background .3s ease}.service-chip:hover{transform:translateY(-3px);background:rgba(202,104,104,.13)}.service-chip i{color:#CA6868}

/* 08 — future */
.future{background:#F7EEEE;padding:120px 0}.future-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.future-copy p{max-width:500px;color:#6C3A3A;margin:22px 0 28px}.future-visual{display:grid;grid-template-columns:1fr 250px;gap:28px;align-items:center}.future-image{height:410px;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px rgba(49,26,26,.15)}.future-image img{width:100%;height:100%;object-fit:cover}.future-list{display:flex;flex-direction:column;gap:15px}.future-list>div{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid rgba(86,47,47,.15);border-radius:15px;background:rgba(255,255,255,.5)}.future-list i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#ECCFCF;color:#7D3E3E}.future-list b,.future-list small{display:block}.future-list b{font-size:14px}.future-list small{font-size:12px;color:#7F4444;margin-top:2px}

/* shared footer: same content, slightly more compact than body */
.about-page .cv-footer{font-size:14px}.about-page .cv-footer p{font-size:14px}.about-page .cv-footer a,.about-page .cv-footer h3{font-size:14px}.about-page .cv-footer h3{font-weight:800}.about-page .cv-footer-bottom{font-size:13px}

/* motion helpers */
.reveal-up,.reveal-left,.reveal-right,.reveal-scale{opacity:0;will-change:transform,opacity}.reveal-up{transform:translateY(38px)}.reveal-left{transform:translateX(-42px)}.reveal-right{transform:translateX(42px)}.reveal-scale{transform:scale(.92)}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}.about-page.motion-ready .reveal-up,.about-page.motion-ready .reveal-left,.about-page.motion-ready .reveal-right,.about-page.motion-ready .reveal-scale{transition:opacity .8s cubic-bezier(.2,.75,.2,1),transform .9s cubic-bezier(.2,.75,.2,1)}.about-page .is-visible{opacity:1;transform:none}

/* light/dark contrast */
html.dark .about-page{--about-light:#160C0C;--about-card:#221212;--about-line:rgba(245,235,235,.16);--about-muted:#D8B7B7;background:#160C0C;color:#F5EDED}.dark .about-page .story,.dark .about-page .difference,.dark .about-page .scroll-story,.dark .about-page .future{background:#170D0D;color:#F4EBEB}.dark .about-page .story-copy p,.dark .about-page .difference-copy p,.dark .about-page .scroll-caption,.dark .about-page .panel-copy p,.dark .about-page .future-copy p{color:#D7B4B4}.dark .about-page .about-kicker.dark-text,.dark .about-page .about-kicker.dark-text b{color:#D4AEAE}.dark .about-page .story-year{border-color:#A85E5E}.dark .about-page .story-note{background:#1D1010;color:#F0E2E2}.dark .about-page .bento-card{background:#211212}.dark .about-page .metric-pill{background:#261414;color:#F4EBEB;border-color:rgba(216,148,148,.15)}.dark .about-page .metric-pill small,.dark .about-page .future-list small{color:#D0A8A8}.dark .about-page .future-list>div{background:#201111;border-color:rgba(216,148,148,.15)}.dark .about-page .future-list i{background:#371D1D;color:#D47777}.dark .about-page .about-btn.ghost{border-color:rgba(238,224,224,.28)}

/* responsive */
@media(max-width:1100px){.hero-layout{grid-template-columns:1fr .9fr;gap:25px}.hero-art{height:510px}.device-one{width:320px;height:410px;right:20px}.device-two{width:230px;height:290px;right:235px}.orbit-one{width:430px}.story-grid,.difference-grid,.three-grid,.future-grid{gap:45px}.bento-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px 220px}.bento-large{grid-row:span 2}.bento-wide{grid-column:1/-1}.future-visual{grid-template-columns:1fr 210px}}
@media(max-width:820px){.about-container{width:min(100% - 32px,680px)}.about-hero{min-height:auto}.hero-layout{grid-template-columns:1fr;padding:76px 0 120px}.hero-copy{max-width:none}.hero-art{height:430px}.device-one{width:280px;height:355px;right:2%;top:10px}.device-two{width:205px;height:260px;left:3%;bottom:0;right:auto}.tag-quality{right:0}.tag-smart{left:0;bottom:12px}.hero-bottom{width:calc(100% - 32px)}.story-grid,.difference-grid,.three-grid,.scroll-story-inner,.future-grid{grid-template-columns:1fr}.story{padding:88px 0}.story-copy{max-width:none}.story-visual{min-height:430px;margin-top:15px}.values,.difference,.three-d,.scroll-story,.future{padding:90px 0}.split-head{grid-template-columns:1fr;gap:15px}.bento-grid{grid-template-columns:1fr 1fr;grid-template-rows:250px 220px 230px}.bento-large{grid-column:1/-1;grid-row:auto}.bento-wide{grid-column:1/-1}.metric-stage{height:500px}.three-stage{height:460px}.scroll-sticky{position:relative;top:auto;padding-bottom:35px}.scroll-panels{gap:65px}.scroll-panel{min-height:450px}.future-visual{grid-template-columns:1fr}.future-image{height:350px}.future-list{display:grid;grid-template-columns:1fr 1fr}.service-content{padding:90px 0}}
@media(max-width:560px){.about-page h1{font-size:43px}.about-page h2{font-size:35px}.about-page h3{font-size:22px}.about-page p{font-size:15px}.about-kicker{font-size:11px;margin-bottom:17px}.hero-layout{padding-top:58px}.hero-art{height:350px}.device-one{width:215px;height:285px;right:2%;border-radius:20px}.device-two{width:165px;height:215px;left:0;border-radius:18px}.orbit-one{width:310px;height:190px;right:-12px;top:45px}.orbit-two{width:220px;height:340px;right:48px}.hero-tag{padding:9px 10px}.hero-tag b{font-size:11px}.hero-tag small{font-size:10px}.tag-quality{top:5px}.tag-smart{bottom:0}.hero-bottom{font-size:9px}.hero-bottom span:last-child{display:none}.about-actions{gap:8px}.about-btn{min-height:46px;padding:11px 15px;font-size:13px}.story-visual{min-height:340px}.story-image.main{inset:10px 25px 45px 0}.story-image.small{width:48%;height:43%;border-width:5px}.story-note{font-size:9px}.story-year strong{font-size:34px}.bento-grid{grid-template-columns:1fr;grid-template-rows:auto}.bento-card,.bento-large,.bento-wide{min-height:220px;grid-column:auto;grid-row:auto}.bento-wide{display:block}.bento-number{font-size:48px;margin-bottom:10px}.bento-arrow{position:absolute;right:22px;top:22px}.metric-stage{height:560px;transform:scale(.92)}.metric-core{width:220px;height:220px}.metric-ring{inset:70px 60px}.metric-pill{min-width:128px;padding:10px 12px}.metric-pill strong{font-size:24px}.pill-a{left:0;top:70px}.pill-b{left:0;bottom:80px}.pill-c{right:0;top:70px}.pill-d{right:0;bottom:80px}.three-stage{height:390px;transform:scale(.9)}.phone-3d{width:200px;height:370px}.three-orbit.orbit-x{width:360px}.three-orbit.orbit-y{height:390px}.float-chip{font-size:11px}.chip-one{right:0;top:55px}.chip-two{left:0;bottom:55px}.scroll-panel{grid-template-columns:34px 1fr;min-height:430px}.panel-copy h3{font-size:30px}.panel-image{height:290px}.future-list{grid-template-columns:1fr}.future-image{height:300px}.service-story{min-height:560px}.service-content{padding:80px 0}.service-actions{gap:8px}.service-chip{font-size:11px;padding:10px 12px}.about-page .cv-footer{font-size:13px}.about-page .cv-footer p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.about-page *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.reveal-up,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important}.scroll-panel{opacity:1!important}}
[dir="rtl"] .about-page .hero-shade{background:linear-gradient(270deg,rgba(9,5,5,.92) 0%,rgba(9,5,5,.72) 42%,rgba(9,5,5,.28) 75%,rgba(9,5,5,.52) 100%)}
[dir="rtl"] .about-page .story-year{border-left:0;border-right:2px solid #BD7272;padding-left:0;padding-right:18px}.about-page .cv-footer{position:relative}

/* Keep the shared footer behavior: light footer in light mode, dark footer in dark mode. */
html:not(.dark) .about-page .cv-footer{background:#F7EEEE !important;color:#2B1717 !important;border-top:1px solid rgba(43,23,23,.10)}
html:not(.dark) .about-page .cv-footer p,html:not(.dark) .about-page .cv-footer a,html:not(.dark) .about-page .cv-footer h3,html:not(.dark) .about-page .cv-footer-bottom{color:#2B1717 !important}
html:not(.dark) .about-page .cv-footer p{opacity:.82}
html.dark .about-page .cv-footer{background:#0F0808 !important;color:#F6EDED !important}
html.dark .about-page .cv-footer p,html.dark .about-page .cv-footer a,html.dark .about-page .cv-footer h3,html.dark .about-page .cv-footer-bottom{color:#F6EDED !important}
.about-page .cv-footer .brand-text small{font-size:11px !important}

/* =========================================================
   ABOUT PAGE — FULL-WIDTH / NO-EMPTY-COLUMN RESTRUCTURE
   Final contrast + responsive correction
   ========================================================= */
.about-page{font-size:16px}
.about-page p,.about-page li,.about-page a,.about-page button,.about-page label,
.about-page .about-kicker,.about-page .panel-copy span,.about-page .panel-no,
.about-page .bento-card span,.about-page .lab-points span,.about-page .service-chip{font-size:max(13px,1em)}
.about-page p{line-height:1.65}

/* Keep every section visually occupied from edge to edge; remove the old
   editorial empty-left-column feeling. */
.story-grid,.difference-grid,.three-grid,.scroll-story-inner,.future-grid{
  width:min(1280px,calc(100% - 56px));
  margin-inline:auto;
}
.story-grid{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:40px}
.story-copy{max-width:none;padding-right:10px}
.story-visual{min-height:520px}

.difference-grid{grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);gap:35px}
.difference-copy{max-width:100%}
.metric-stage{width:100%;min-width:0}

.three-grid{grid-template-columns:minmax(330px,.75fr) minmax(0,1.25fr);gap:35px}
.three-copy{max-width:none}
.three-stage{width:100%;min-width:0}

/* Scrollytelling is now a filled two-column composition. The left side is
   always occupied by the story controller; the right side by the active panel. */
.scroll-story{padding:88px 0 96px}
.scroll-story-inner{grid-template-columns:minmax(300px,.38fr) minmax(0,1.62fr);gap:34px;align-items:start}
.scroll-sticky{position:sticky;top:108px;min-height:430px;padding:22px 22px 34px 0;border-right:1px solid rgba(88,48,48,.18)}
.scroll-sticky h2{font-size:clamp(34px,4vw,54px);max-width:410px}
.scroll-caption{font-size:15px;max-width:390px}
.scroll-panels{gap:72px;padding-left:0}
.scroll-panel{grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;column-gap:22px;min-height:0;padding:22px 0 72px;border-bottom:1px solid rgba(88,48,48,.15)}
.scroll-panel:last-child{border-bottom:0}
.panel-copy h3{font-size:clamp(28px,3vw,42px)}
.panel-copy p{font-size:15px;max-width:760px}
.panel-image{height:420px;margin-top:26px}

/* The service and future sections use the entire content width rather than
   leaving an unused side. */
.service-content{width:min(1280px,calc(100% - 56px));margin-inline:auto}
.future-grid{grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);gap:40px}
.future-copy{max-width:none}
.future-visual{min-width:0}

/* Light mode: never allow editorial dark text to disappear on pale surfaces. */
html:not(.dark) .about-page .story,
html:not(.dark) .about-page .difference,
html:not(.dark) .about-page .scroll-story,
html:not(.dark) .about-page .future{color:#190E0E!important}
html:not(.dark) .about-page .story h1,html:not(.dark) .about-page .story h2,html:not(.dark) .about-page .story h3,
html:not(.dark) .about-page .difference h1,html:not(.dark) .about-page .difference h2,html:not(.dark) .about-page .difference h3,
html:not(.dark) .about-page .scroll-story h1,html:not(.dark) .about-page .scroll-story h2,html:not(.dark) .about-page .scroll-story h3,
html:not(.dark) .about-page .future h1,html:not(.dark) .about-page .future h2,html:not(.dark) .about-page .future h3{color:#190E0E!important}
html:not(.dark) .about-page .story p,html:not(.dark) .about-page .difference p,
html:not(.dark) .about-page .scroll-story p,html:not(.dark) .about-page .future p{color:#442424!important}
html:not(.dark) .about-page .about-kicker.dark-text,
html:not(.dark) .about-page .about-kicker.dark-text b{color:#472626!important}
html:not(.dark) .about-page .scroll-sticky{border-color:rgba(25,14,14,.2)}
html:not(.dark) .about-page .scroll-panel{border-color:rgba(25,14,14,.16)}
html:not(.dark) .about-page .panel-copy span,html:not(.dark) .about-page .panel-no{color:#6B3636!important}

/* Dark mode: bright headings and comfortably readable supporting copy. */
html.dark .about-page .story,html.dark .about-page .difference,
html.dark .about-page .scroll-story,html.dark .about-page .future{color:#F6EDED!important}
html.dark .about-page .story h1,html.dark .about-page .story h2,html.dark .about-page .story h3,
html.dark .about-page .difference h1,html.dark .about-page .difference h2,html.dark .about-page .difference h3,
html.dark .about-page .scroll-story h1,html.dark .about-page .scroll-story h2,html.dark .about-page .scroll-story h3,
html.dark .about-page .future h1,html.dark .about-page .future h2,html.dark .about-page .future h3{color:#F6EDED!important}
html.dark .about-page .story p,html.dark .about-page .difference p,
html.dark .about-page .scroll-story p,html.dark .about-page .future p{color:#DBBCBC!important}
html.dark .about-page .about-kicker.dark-text,html.dark .about-page .about-kicker.dark-text b{color:#DCBDBD!important}
html.dark .about-page .scroll-sticky{border-color:rgba(246,237,237,.18)}
html.dark .about-page .scroll-panel{border-color:rgba(246,237,237,.15)}
html.dark .about-page .panel-copy span,html.dark .about-page .panel-no{color:#CA6868!important}

/* Footer typography must match in both themes. */
.about-page .cv-footer,.about-page .cv-footer *{font-size:14px}
.about-page .cv-footer h3,.about-page .cv-footer .footer-title{font-size:15px}
.about-page .cv-footer .brand-text strong{font-size:15px}
.about-page .cv-footer .brand-text small{font-size:14px!important}
.about-page .cv-footer p,.about-page .cv-footer a,.about-page .cv-footer-bottom,
.about-page .cv-footer li{font-size:14px!important;line-height:1.6}
.about-page .cv-footer .socials a{font-size:15px!important}

/* Desktop/laptop: no accidental empty left half and no horizontal overflow. */
@media (min-width:821px){
  .about-page .story-grid,.about-page .difference-grid,.about-page .three-grid,.about-page .future-grid{align-items:center}
  .about-page .scroll-story-inner{min-height:900px}
}

/* Tablet: retain two occupied columns where useful, then stack cleanly. */
@media (max-width:1024px){
  .story-grid,.difference-grid,.three-grid,.future-grid{width:min(100% - 36px,900px);gap:28px}
  .scroll-story-inner{width:min(100% - 36px,900px);grid-template-columns:1fr;gap:30px}
  .scroll-sticky{position:relative;top:auto;min-height:0;padding:0 0 24px;border-right:0;border-bottom:1px solid rgba(88,48,48,.18)}
  .scroll-panels{gap:46px}
}

@media (max-width:820px){
  .story-grid,.difference-grid,.three-grid,.future-grid,.scroll-story-inner,.service-content{width:min(100% - 28px,680px)}
  .story-grid,.difference-grid,.three-grid,.future-grid{grid-template-columns:1fr;gap:26px}
  .story{padding:72px 0}.values,.difference,.three-d,.scroll-story,.future{padding:72px 0}
  .story-visual{min-height:390px}
  .metric-stage{height:470px}
  .three-stage{height:430px}
  .scroll-panel{grid-template-columns:34px minmax(0,1fr);padding-bottom:52px}
  .panel-image{height:340px}
  .service-content{padding:76px 0}
}

@media (max-width:560px){
  .story-grid,.difference-grid,.three-grid,.future-grid,.scroll-story-inner,.service-content{width:calc(100% - 24px)}
  .about-page h1{font-size:39px}.about-page h2{font-size:32px}.about-page h3{font-size:22px}
  .about-page p{font-size:14px;line-height:1.65}
  .story-visual{min-height:330px}
  .metric-stage{height:520px}
  .three-stage{height:380px}
  .scroll-sticky{padding-bottom:20px}
  .scroll-panel{grid-template-columns:28px minmax(0,1fr);column-gap:12px}
  .panel-copy h3{font-size:27px}
  .panel-copy p{font-size:14px}
  .panel-image{height:270px;border-radius:18px}
  .future-list{grid-template-columns:1fr}
  .about-page .cv-footer,.about-page .cv-footer *{font-size:14px!important}
}

/* =========================================================
   FINAL ABOUT EXPERIENCE REBUILD — ZERO EMPTY LEFT COLUMN
   The old sticky/editorial column is replaced by a filled,
   full-width story header + alternating text/image panels.
   ========================================================= */
.about-page #experience.scroll-story{
  padding:96px 0 110px;
  background:var(--about-light,#EFDFDF);
}
.about-page #experience .scroll-story-inner{
  width:min(1280px,calc(100% - 48px));
  margin-inline:auto;
  display:block;
}
.about-page #experience .scroll-sticky{
  position:relative;
  top:auto;
  min-height:0;
  height:auto;
  padding:0 0 42px;
  border:0;
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(300px,1.2fr);
  gap:50px;
  align-items:end;
}
.about-page #experience .scroll-sticky h2{
  font-size:clamp(42px,5.2vw,72px);
  max-width:700px;
}
.about-page #experience .scroll-caption{
  max-width:560px;
  margin:0;
  font-size:16px;
  line-height:1.7;
}
.about-page #experience .scroll-progress{
  grid-column:2;
  width:min(100%,420px);
  margin:22px 0 0;
}
.about-page #experience .scroll-panels{
  display:flex;
  flex-direction:column;
  gap:0;
}
.about-page #experience .scroll-panel{
  width:100%;
  min-height:0;
  padding:68px 0;
  display:grid;
  grid-template-columns:42px minmax(280px,.8fr) minmax(420px,1.2fr);
  grid-template-rows:auto;
  column-gap:28px;
  align-items:center;
  opacity:1;
  border-top:1px solid rgba(27,15,15,.16);
  border-bottom:0;
  position:relative;
  overflow:visible;
}
.about-page #experience .scroll-panel:first-child{border-top:1px solid rgba(27,15,15,.16)}
.about-page #experience .scroll-panel::before{
  content:"";
  position:absolute;
  left:-24px;
  right:-24px;
  top:50%;
  height:72%;
  transform:translateY(-50%) scaleX(.96);
  border-radius:34px;
  background:linear-gradient(110deg,rgba(202,104,104,.08),rgba(255,255,255,.22),rgba(202,104,104,.06));
  opacity:0;
  transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1);
  pointer-events:none;
  z-index:0;
}
.about-page #experience .scroll-panel.is-active::before,
.about-page #experience .scroll-panel:hover::before{opacity:1;transform:translateY(-50%) scaleX(1)}
.about-page #experience .panel-no,
.about-page #experience .panel-copy,
.about-page #experience .panel-image{position:relative;z-index:1}
.about-page #experience .panel-no{align-self:start;padding-top:7px;font-size:15px}
.about-page #experience .panel-copy{max-width:620px}
.about-page #experience .panel-copy span{font-size:13px;letter-spacing:.16em}
.about-page #experience .panel-copy h3{font-size:clamp(36px,4vw,58px);margin:12px 0 16px}
.about-page #experience .panel-copy p{max-width:560px;font-size:17px;line-height:1.7;margin:0}
.about-page #experience .panel-image{
  grid-column:auto;
  margin:0;
  height:430px;
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 30px 80px rgba(43,23,23,.16);
  transform:perspective(1200px) rotateY(-3deg) rotateX(1deg);
  transition:transform .75s cubic-bezier(.2,.8,.2,1),box-shadow .75s ease;
}
.about-page #experience .panel-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(202,104,104,.16),transparent 40%,rgba(0,0,0,.08));
  pointer-events:none;
}
.about-page #experience .panel-image img{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.01);
  transition:transform 1.2s cubic-bezier(.2,.75,.2,1),filter .7s ease;
}
.about-page #experience .scroll-panel:hover .panel-image,
.about-page #experience .scroll-panel.is-active .panel-image{
  transform:perspective(1200px) rotateY(0deg) rotateX(0deg) translateY(-6px);
  box-shadow:0 40px 95px rgba(43,23,23,.22);
}
.about-page #experience .scroll-panel:hover .panel-image img,
.about-page #experience .scroll-panel.is-active .panel-image img{transform:scale(1.07)}
.about-page #experience .scroll-panel:nth-child(even) .panel-image{order:3;transform:perspective(1200px) rotateY(3deg) rotateX(1deg)}
.about-page #experience .scroll-panel:nth-child(even):hover .panel-image,
.about-page #experience .scroll-panel:nth-child(even).is-active .panel-image{transform:perspective(1200px) rotateY(0deg) rotateX(0deg) translateY(-6px)}
.about-page #experience .scroll-panel:nth-child(even) .panel-copy{order:2}
.about-page #experience .scroll-panel:nth-child(even) .panel-no{order:1}

/* Strong contrast in both themes */
html:not(.dark) .about-page #experience{color:#1D1010}
html:not(.dark) .about-page #experience .scroll-caption,
html:not(.dark) .about-page #experience .panel-copy p{color:#462525!important}
html:not(.dark) .about-page #experience .panel-copy h3,
html:not(.dark) .about-page #experience .scroll-sticky h2{color:#1D1010!important}
html.dark .about-page #experience{background:#170D0D;color:#F6EDED}
html.dark .about-page #experience .scroll-caption,
html.dark .about-page #experience .panel-copy p{color:#DBBCBC!important}
html.dark .about-page #experience .panel-copy h3,
html.dark .about-page #experience .scroll-sticky h2{color:#F6EDED!important}
html.dark .about-page #experience .scroll-panel{border-color:rgba(246,237,237,.15)}
html.dark .about-page #experience .scroll-panel::before{background:linear-gradient(110deg,rgba(202,104,104,.08),rgba(255,255,255,.035),rgba(202,104,104,.07))}

@media(max-width:1024px){
  .about-page #experience .scroll-story-inner{width:min(100% - 36px,920px)}
  .about-page #experience .scroll-sticky{grid-template-columns:1fr;gap:16px;padding-bottom:34px}
  .about-page #experience .scroll-progress{grid-column:auto;margin-top:8px}
  .about-page #experience .scroll-panel{grid-template-columns:34px minmax(0,.82fr) minmax(320px,1.18fr);column-gap:20px;padding:54px 0}
  .about-page #experience .panel-image{height:360px}
}
@media(max-width:820px){
  .about-page #experience.scroll-story{padding:76px 0 86px}
  .about-page #experience .scroll-story-inner{width:min(100% - 28px,700px)}
  .about-page #experience .scroll-sticky{display:block;padding-bottom:30px}
  .about-page #experience .scroll-sticky h2{margin-bottom:16px}
  .about-page #experience .scroll-caption{max-width:650px}
  .about-page #experience .scroll-panel,
  .about-page #experience .scroll-panel:nth-child(even){display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;gap:0 14px;padding:42px 0}
  .about-page #experience .panel-no{grid-column:1;grid-row:1 / span 2}
  .about-page #experience .panel-copy,
  .about-page #experience .scroll-panel:nth-child(even) .panel-copy{grid-column:2;grid-row:1;order:initial}
  .about-page #experience .panel-image,
  .about-page #experience .scroll-panel:nth-child(even) .panel-image{grid-column:2;grid-row:2;order:initial;margin-top:24px;width:100%;height:330px;transform:none}
  .about-page #experience .scroll-panel:hover .panel-image,
  .about-page #experience .scroll-panel.is-active .panel-image,
  .about-page #experience .scroll-panel:nth-child(even):hover .panel-image,
  .about-page #experience .scroll-panel:nth-child(even).is-active .panel-image{transform:translateY(-4px)}
  .about-page #experience .panel-copy h3{font-size:36px}
  .about-page #experience .panel-copy p{font-size:15px}
}
@media(max-width:560px){
  .about-page #experience .scroll-story-inner{width:calc(100% - 22px)}
  .about-page #experience .scroll-sticky h2{font-size:39px}
  .about-page #experience .scroll-caption{font-size:14px}
  .about-page #experience .scroll-panel{grid-template-columns:25px 1fr!important;column-gap:10px;padding:34px 0}
  .about-page #experience .panel-no{font-size:12px}
  .about-page #experience .panel-copy h3{font-size:30px;margin:8px 0 12px}
  .about-page #experience .panel-copy p{font-size:14px}
  .about-page #experience .panel-image{height:270px!important;border-radius:20px}
}


/* =========================================================
   FINAL ABOUT POLISH — FULL-WIDTH MOTION + LIGHT-MODE CONTRAST
   ========================================================= */
.about-page .about-section{isolation:isolate}
.about-page .about-section .reveal-up,
.about-page .about-section .reveal-left,
.about-page .about-section .reveal-right,
.about-page .about-section .reveal-scale{will-change:transform,opacity}

/* Keep hero/service editorial sections readable in LIGHT mode too. */
html:not(.dark) .about-page .about-hero,
html:not(.dark) .about-page .about-hero h1,
html:not(.dark) .about-page .about-hero h2,
html:not(.dark) .about-page .about-hero h3,
html:not(.dark) .about-page .about-hero p,
html:not(.dark) .about-page .about-hero .about-kicker,
html:not(.dark) .about-page .about-hero .hero-bottom,
html:not(.dark) .about-page .about-hero .hero-tag{color:#F6EFEF!important}
html:not(.dark) .about-page .about-hero .hero-lead{color:#E5CECE!important}
html:not(.dark) .about-page .about-hero .about-kicker b{color:#F6EFEF!important}
html:not(.dark) .about-page .about-hero .hero-tag small{color:#D8B8B8!important}
html:not(.dark) .about-page .about-hero .hero-tag{background:rgba(20,11,11,.86)!important}
html:not(.dark) .about-page .about-hero .about-btn.ghost{color:#FFFFFF!important;border-color:rgba(255,255,255,.5)!important}

html:not(.dark) .about-page .values,
html:not(.dark) .about-page .values h2,
html:not(.dark) .about-page .values h3,
html:not(.dark) .about-page .values p,
html:not(.dark) .about-page .values span{color:#F6EFEF}
html:not(.dark) .about-page .values .split-head>p,
html:not(.dark) .about-page .values .bento-card p{color:#DBBCBC!important}

html:not(.dark) .about-page .three-d,
html:not(.dark) .about-page .three-d h2,
html:not(.dark) .about-page .three-d p,
html:not(.dark) .about-page .three-d .about-kicker{color:#F6EFEF!important}
html:not(.dark) .about-page .three-copy p{color:#DBBCBC!important}
html:not(.dark) .about-page .lab-points span{color:#E7D3D3!important}

html:not(.dark) .about-page .service-story,
html:not(.dark) .about-page .service-story h2,
html:not(.dark) .about-page .service-story p,
html:not(.dark) .about-page .service-story .about-kicker{color:#F6EFEF!important}
html:not(.dark) .about-page .service-story p{color:#DFC4C4!important}
html:not(.dark) .about-page .service-chip{color:#F6EFEF!important}

/* Pale sections use strong ink in both normal and hover states. */
html:not(.dark) .about-page .story h2,
html:not(.dark) .about-page .difference h2,
html:not(.dark) .about-page .future h2,
html:not(.dark) .about-page .story p,
html:not(.dark) .about-page .difference p,
html:not(.dark) .about-page .future p,
html:not(.dark) .about-page .future-list b,
html:not(.dark) .about-page .future-list small{color:#2B1717!important}
html:not(.dark) .about-page .story-copy p,
html:not(.dark) .about-page .difference-copy p,
html:not(.dark) .about-page .future-copy p{color:#4D2A2A!important}
html:not(.dark) .about-page .future-list small{color:#673737!important}
html:not(.dark) .about-page .future .about-btn.ghost{color:#2B1717!important;border-color:rgba(25,14,14,.3)!important;background:rgba(255,255,255,.28)!important}

/* Section-wide reveal: every section enters as one connected composition. */
.about-page .motion-child{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--motion-i,0) * 70ms)}
.about-page .motion-child.motion-in{opacity:1;transform:none}
.about-page .about-section.motion-section .about-kicker{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .8s ease}
.about-page .about-section.motion-section .motion-heading{opacity:0;transform:translateY(30px);transition:opacity .85s ease .08s,transform .9s cubic-bezier(.2,.8,.2,1) .08s}
.about-page .about-section.motion-section .motion-heading.motion-in,
.about-page .about-section.motion-section .about-kicker.motion-in{opacity:1;transform:none}
.about-page .about-section.motion-section .motion-media{opacity:0;transform:scale(.94) translateY(28px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.2,.8,.2,1)}
.about-page .about-section.motion-section .motion-media.motion-in{opacity:1;transform:none}

/* Connected/join animation lines between major blocks. */
.about-page .about-section.motion-section::after{content:"";position:absolute;left:50%;bottom:0;width:1px;height:0;background:linear-gradient(to bottom,transparent,var(--about-accent),transparent);opacity:.65;transition:height .9s ease .2s;pointer-events:none}
.about-page .about-section.motion-section.section-visible::after{height:48px}

/* More dynamic bento/card entrance and hover depth. */
.about-page .bento-card{transform-style:preserve-3d;perspective:1000px}
.about-page .bento-card.motion-in{animation:bentoLift .9s cubic-bezier(.2,.8,.2,1) both}
@keyframes bentoLift{0%{opacity:0;transform:translateY(45px) rotateX(8deg) scale(.97)}100%{opacity:1;transform:none}}
.about-page .bento-card:hover{transform:translateY(-8px) rotateX(1deg) rotateY(-1deg)}

/* Story/difference/future media has a subtle depth float while scrolling. */
.about-page .story-image,.about-page .metric-core,.about-page .future-image{transform-style:preserve-3d}
.about-page .story-image.main:hover,.about-page .future-image:hover{transform:translateY(-7px) rotateY(-2deg) rotateX(1deg);transition:transform .7s cubic-bezier(.2,.8,.2,1)}

/* Service section cinematic text reveal. */
.about-page .service-content>*{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .85s cubic-bezier(.2,.8,.2,1)}
.about-page .service-content.motion-in>*{opacity:1;transform:none}
.about-page .service-content.motion-in .about-kicker{transition-delay:.05s}
.about-page .service-content.motion-in h2{transition-delay:.12s}
.about-page .service-content.motion-in p{transition-delay:.2s}
.about-page .service-content.motion-in .service-actions{transition-delay:.28s}

/* Remove the old placeholder avatar from all possible states. */
.about-page .placeholder-man{display:none!important;visibility:hidden!important}

@media (prefers-reduced-motion: reduce){
 .about-page .motion-child,.about-page .about-section.motion-section .about-kicker,.about-page .about-section.motion-section .motion-heading,.about-page .about-section.motion-section .motion-media,.about-page .service-content>*{opacity:1!important;transform:none!important;transition:none!important}
 .about-page .about-section.motion-section::after{display:none}
}

/* ===== END about.css ===== */

/* ===== BEGIN home2.css ===== */

:root{
 --h2-bg:#FBEFEF;--h2-surface:#F5EAEA;--h2-ink:#1F1010;--h2-muted:#5B3131;
 --h2-line:rgba(31,16,16,.15);--h2-accent:#7C4343;--h2-accent-soft:#D9B9B9;
 --h2-dark:#170D0D;--h2-dark-ink:#F4EAEA;--h2-dark-muted:#D8B6B6;--h2-dark-line:rgba(244,234,234,.16);
}
html{scroll-behavior:smooth} body{background:var(--h2-bg);color:var(--h2-ink);overflow-x:hidden}
.h2-section{position:relative;overflow:hidden;padding:64px 0}
.h2-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.h2-section-label{display:flex;align-items:center;gap:11px;color:var(--h2-accent);font-size:14px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}
.h2-section-label span{font-family:"Space Grotesk";font-size:14px;min-width:26px}
.h2-section-label span:after{content:"";display:inline-block;width:22px;height:1px;background:currentColor;vertical-align:middle;margin-left:8px}
.split-heading{font-family:"Space Grotesk",sans-serif;font-weight:700;letter-spacing:-.035em;line-height:1.02;margin:0}
.split-heading em{font-style:normal;color:var(--h2-accent)}
p,.h2-text-link,.h2-btn,.h2-route a,.h2-lane,.h2-stack-info,.h2-flip-face,.h2-story-list,.h2-type-bottom{font-size:15px}
.h2-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 19px;border-radius:999px;font-weight:800;transition:transform .3s,background .3s,box-shadow .3s}
.h2-btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(31,16,16,.13)}
.h2-btn-solid{background:var(--h2-ink);color:var(--h2-bg)}
.h2-btn-line{border:1px solid var(--h2-line);color:var(--h2-ink)}
.h2-text-link{display:inline-flex;align-items:center;gap:9px;color:inherit;padding-top:10px;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:6px}
.h2-text-link i{transition:transform .3s}.h2-text-link:hover i{transform:translateX(5px)}
/* 01 cinematic hero */
.h2-hero{min-height:calc(100vh - 78px);display:flex;align-items:center;padding:38px 0 48px;background:
 radial-gradient(circle at 80% 35%,rgba(124,67,67,.18),transparent 29%),
 linear-gradient(135deg,rgba(255,255,255,.18),transparent 48%)}
.h2-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:48px;align-items:center}
.h2-kicker{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800;letter-spacing:.13em}
.h2-kicker i{width:24px;height:2px;background:currentColor}
.h2-hero-copy h1{font-size:clamp(42px,5.2vw,72px);margin:20px 0 18px}
.h2-hero-copy>p{max-width:540px;color:var(--h2-muted);line-height:1.75;margin:0;font-size:16px}
.h2-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.h2-hero-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:27px;padding-top:15px;border-top:1px solid var(--h2-line);font-size:14px;font-weight:800;letter-spacing:.07em}
.h2-hero-visual{position:relative;min-height:560px;display:grid;place-items:center}
.h2-hero-image{width:min(430px,76%);aspect-ratio:4/5;overflow:hidden;transform:rotate(4deg);border-radius:48% 52% 42% 58%/45% 38% 62% 55%;border:7px solid var(--h2-ink);box-shadow:28px 32px 0 var(--h2-accent-soft);position:relative;z-index:2}
.h2-hero-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s}
.h2-hero-visual:hover .h2-hero-image img{transform:scale(1.06)}
.h2-orbit{position:absolute;border:1px solid rgba(124,67,67,.38);border-radius:50%;pointer-events:none}
.h2-orbit-1{width:570px;height:300px;transform:rotate(-18deg)}
.h2-orbit-2{width:460px;height:210px;transform:rotate(25deg);border-style:dashed}
.h2-float-card{position:absolute;z-index:3;background:rgba(245,234,234,.96);border:1px solid var(--h2-line);padding:12px 15px;box-shadow:0 15px 32px rgba(31,16,16,.10);display:flex;flex-direction:column;gap:3px;font-size:14px}
.h2-float-card b{font-size:17px}.h2-float-card span{color:var(--h2-muted);font-size:14px}.h2-float-top{left:2%;top:90px}.h2-float-bottom{right:1%;bottom:70px}
/* 02 editorial lanes */
.h2-intro{border-top:1px solid var(--h2-line)}
.h2-intro-grid{display:grid;grid-template-columns:1fr .72fr;gap:55px;align-items:end;padding:26px 0 38px}
.h2-intro-grid h2{font-size:clamp(38px,4.6vw,60px)}
.h2-lead{color:var(--h2-muted);line-height:1.75;margin:0}
.h2-lane-grid{border-top:1px solid var(--h2-line)}
.h2-lane{min-height:150px;display:grid;grid-template-columns:50px 1fr 245px;gap:22px;align-items:center;border-bottom:1px solid var(--h2-line);position:relative}
.h2-lane>span{font:800 14px "Space Grotesk";color:var(--h2-accent)}
.h2-lane small{font-size:14px;letter-spacing:.12em;font-weight:800}.h2-lane h3{font:700 22px "Space Grotesk";margin:5px 0 4px}.h2-lane p{color:var(--h2-muted);margin:0}.h2-lane img{width:245px;height:120px;object-fit:cover;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);transition:.45s}.h2-lane:hover img{transform:translateX(-6px) scale(1.04)}
/* 03 stacked cards */
.h2-stacked{background:var(--h2-dark);color:var(--h2-dark-ink);padding:72px 0}
.h2-stacked-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:55px}.h2-stacked .h2-section-label{color:#C79898}
.h2-stacked-intro{position:sticky;top:120px;align-self:start}.h2-stacked-intro h2{font-size:clamp(40px,4.8vw,62px);margin:22px 0 15px}.h2-stacked-intro p{color:var(--h2-dark-muted);line-height:1.75;max-width:390px}
.h2-stack-progress{display:flex;gap:7px;margin-top:25px}.h2-stack-progress span{width:28px;height:3px;background:#BA8080;opacity:.35}
.h2-stack-stage{position:relative;height:700px}.h2-stack-card{position:sticky;top:125px;height:560px;background:#241414;border:1px solid var(--h2-dark-line);padding:14px;display:grid;grid-template-rows:1fr auto;gap:14px;box-shadow:0 25px 50px rgba(0,0,0,.28);transform-origin:center top;border-radius:3px}
.h2-stack-card+.h2-stack-card{margin-top:-490px}.stack-a{transform:rotate(-2deg)}.stack-b{transform:rotate(1.5deg)}.stack-c{transform:rotate(-.8deg)}
.h2-stack-image{overflow:hidden;min-height:0}.h2-stack-image img{width:100%;height:100%;object-fit:cover}.h2-stack-info{display:grid;gap:4px}.h2-stack-info small{font-size:14px;color:#C79898;letter-spacing:.11em;font-weight:800}.h2-stack-info h3{font:700 25px "Space Grotesk";margin:0}.h2-stack-info p{color:var(--h2-dark-muted);margin:0;font-size:14px}
/* 04 smoother route */
.h2-smooth{border-top:1px solid var(--h2-line);background:linear-gradient(180deg,var(--h2-bg),var(--h2-surface))}
.h2-smooth-head{display:grid;grid-template-columns:1fr .72fr;gap:55px;align-items:end;padding:25px 0 32px}.h2-smooth-head h2{font-size:clamp(40px,4.8vw,62px)}.h2-smooth-head p{color:var(--h2-muted);line-height:1.75;margin:0}
.h2-route{display:grid;grid-template-columns:repeat(5,1fr);border-block:1px solid var(--h2-line)}
.h2-route a{display:grid;grid-template-rows:auto 1fr auto;gap:14px;padding:19px 16px;border-right:1px solid var(--h2-line);min-height:125px;transition:.3s;color:inherit}.h2-route a:last-child{border-right:0}.h2-route a:hover{background:rgba(124,67,67,.08);transform:translateY(-4px)}.h2-route span{font:800 14px "Space Grotesk";color:var(--h2-accent)}.h2-route b{font-size:15px}.h2-route i{justify-self:end}
.h2-scroll-demo{margin-top:32px;overflow:hidden;border-block:1px solid var(--h2-line);padding:15px 0;white-space:nowrap}.h2-scroll-demo-track{display:inline-flex;align-items:center;gap:24px;animation:h2marquee 20s linear infinite;font:800 14px "Space Grotesk";letter-spacing:.13em}.h2-scroll-demo-track i{color:var(--h2-accent);font-style:normal}@keyframes h2marquee{to{transform:translateX(-50%)}}
/* 05 flip */
.h2-flip{background:#E8D5D5;border-top:1px solid var(--h2-line)}.h2-flip-head{display:grid;grid-template-columns:1fr .7fr;gap:55px;align-items:end;padding:25px 0 32px}.h2-flip-head h2{font-size:clamp(40px,4.8vw,62px)}.h2-flip-head p{color:var(--h2-muted);line-height:1.75;margin:0}
.h2-flip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.h2-flip-card{height:330px;perspective:1100px;outline:none}.h2-flip-inner{width:100%;height:100%;position:relative;transition:transform .7s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.h2-flip-card:hover .h2-flip-inner,.h2-flip-card:focus .h2-flip-inner,.h2-flip-card.is-flipped .h2-flip-inner{transform:rotateY(180deg)}.h2-flip-face{position:absolute;inset:0;backface-visibility:hidden;padding:23px;border:1px solid var(--h2-line)}.h2-flip-front{background:var(--h2-dark);color:var(--h2-dark-ink);display:flex;flex-direction:column;justify-content:flex-end}.h2-flip-front>span{font-size:14px;color:#C79898;font-weight:800;position:absolute;top:20px}.h2-flip-front i{font-size:28px;color:#C79898;margin-bottom:15px}.h2-flip-front h3{font:700 25px "Space Grotesk";margin:0}.h2-flip-front p{color:var(--h2-dark-muted);margin:4px 0 0}.h2-flip-back{background:var(--h2-bg);transform:rotateY(180deg);display:flex;flex-direction:column;justify-content:center}.h2-flip-back small{font-size:14px;letter-spacing:.12em;font-weight:800;color:var(--h2-accent)}.h2-flip-back h3{font:700 23px/1.1 "Space Grotesk";margin:12px 0}.h2-flip-back p{color:var(--h2-muted);line-height:1.6}.h2-flip-back a{margin-top:14px;font-size:14px;font-weight:800}
/* 06 parallax story */
.h2-story{background:var(--h2-bg)}.h2-story-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:center}.h2-story-media{position:relative;min-height:560px;overflow:hidden}.h2-story-media img{width:100%;height:560px;object-fit:cover;display:block;filter:saturate(.82);transform:scale(1.08);transition:transform 1s}.h2-story-media:hover img{transform:scale(1.13)}.h2-story-media:after{content:"";position:absolute;inset:10% -20% auto auto;width:70%;height:1px;background:var(--h2-accent);transform:rotate(-9deg);box-shadow:0 35px 0 rgba(124,67,67,.4)}
.h2-story-media span{position:absolute;left:15px;bottom:15px;background:var(--h2-ink);color:var(--h2-bg);padding:9px 11px;font-size:14px;font-weight:800;letter-spacing:.08em;z-index:2}.h2-story-copy h2{font-size:clamp(40px,4.8vw,62px);margin:22px 0 14px}.h2-story-copy>p{color:var(--h2-muted);line-height:1.75}.h2-story-list{border-top:1px solid var(--h2-line);margin-top:25px}.h2-story-list>div{display:grid;grid-template-columns:34px 1fr;gap:3px 12px;padding:12px 0;border-bottom:1px solid var(--h2-line)}.h2-story-list span{grid-row:1/3;color:var(--h2-accent);font-weight:800;font-size:14px}.h2-story-list b{font-size:15px}.h2-story-list small{font-size:14px;color:var(--h2-muted)}
/* 07 split */
.h2-split{background:var(--h2-dark);color:var(--h2-dark-ink)}.h2-split-grid{display:grid;grid-template-columns:55px 1fr .82fr;gap:35px;align-items:center}.h2-split-number{font:800 16px "Space Grotesk";color:#C79898}.h2-split .h2-section-label{color:#C79898}.h2-split-copy h2{font-size:clamp(40px,4.9vw,64px);margin:22px 0 14px}.h2-split-copy p{max-width:570px;color:var(--h2-dark-muted);line-height:1.75}.h2-split .h2-btn-solid{background:var(--h2-dark-ink);color:var(--h2-dark)}.h2-split-image{position:relative;overflow:hidden}.h2-split-image img{width:100%;height:390px;object-fit:cover;display:block;transform:scale(1.04)}.h2-split-image span{position:absolute;bottom:12px;left:12px;background:#170D0D;color:#F4EAEA;padding:8px 10px;font-size:14px;letter-spacing:.08em}
/* 08 typewriter */
.h2-type{background:radial-gradient(circle at 78% 40%,rgba(124,67,67,.24),transparent 30%),var(--h2-dark);color:var(--h2-dark-ink);padding:70px 0 55px}.h2-type-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:end;padding:24px 0 35px}.h2-type .h2-section-label{color:#C79898}.h2-type-prefix{font-size:15px;color:var(--h2-dark-muted);margin:0 0 8px}.h2-typewriter{display:inline;font:700 clamp(40px,5vw,66px)/1.02 "Space Grotesk";letter-spacing:-.035em;color:var(--h2-dark-ink);margin:0}.h2-cursor{display:inline-block;width:3px;height:54px;background:#C79898;vertical-align:-8px;margin-left:6px;animation:h2blink .8s steps(1) infinite}@keyframes h2blink{50%{opacity:0}}.h2-type-layout>div:last-child p{color:var(--h2-dark-muted);line-height:1.75;margin:0}.h2-type .h2-text-link{color:var(--h2-dark-ink);margin-top:18px}.h2-type-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--h2-dark-line);padding-top:14px;color:#CC9F9F;font-size:14px;letter-spacing:.1em}
/* theme */
html.dark body{background:#170D0D;color:var(--h2-dark-ink)}
html.dark .h2-section:not(.h2-stacked):not(.h2-split):not(.h2-type){background:#170D0D;color:var(--h2-dark-ink)}
html.dark .h2-smooth{background:#170D0D}html.dark .h2-flip{background:#241313}
html.dark .h2-intro,html.dark .h2-smooth,html.dark .h2-story{border-color:var(--h2-dark-line)}
html.dark .h2-section-label,html.dark .h2-kicker{color:#C79898}html.dark .h2-hero-copy>p,html.dark .h2-lead,html.dark .h2-smooth-head p,html.dark .h2-story-copy>p{color:var(--h2-dark-muted)}
html.dark .h2-btn-line{border-color:var(--h2-dark-line);color:var(--h2-dark-ink)}html.dark .h2-btn-solid{background:var(--h2-dark-ink);color:var(--h2-dark)}
html.dark .h2-float-card{background:#241313;color:var(--h2-dark-ink);border-color:var(--h2-dark-line)}html.dark .h2-float-card span{color:var(--h2-dark-muted)}
html.dark .h2-hero-image{border-color:var(--h2-dark-ink)}html.dark .h2-lane,html.dark .h2-route,html.dark .h2-route a,html.dark .h2-story-list,html.dark .h2-type-bottom{border-color:var(--h2-dark-line)}
html.dark .h2-lane p,html.dark .h2-story-list small{color:var(--h2-dark-muted)}
html.dark .h2-scroll-demo{border-color:var(--h2-dark-line)}html.dark .h2-smooth{background:#170D0D}
html.dark .h2-flip-head p{color:var(--h2-dark-muted)}html.dark .h2-flip-back{background:#1F1010;color:var(--h2-dark-ink)}html.dark .h2-flip-back p{color:var(--h2-dark-muted)}
/* motion helpers */
.h2-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.h2-reveal.in-view{opacity:1;transform:none}
@media(max-width:1024px){
 .h2-section{padding:54px 0}.h2-hero{min-height:auto}.h2-hero-grid{grid-template-columns:1fr;gap:25px}.h2-hero-copy h1{font-size:clamp(40px,8vw,62px)}.h2-hero-visual{min-height:470px}.h2-hero-image{width:min(390px,65vw)}
 .h2-intro-grid,.h2-smooth-head{grid-template-columns:1fr;gap:20px}.h2-lane{grid-template-columns:42px 1fr 200px}.h2-lane img{width:200px;height:105px}
 .h2-stacked-grid{grid-template-columns:1fr;gap:25px}.h2-stacked-intro{position:relative;top:auto}.h2-stack-stage{height:650px}.h2-stack-card{height:520px}.h2-stack-card+.h2-stack-card{margin-top:-455px}
 .h2-route{grid-template-columns:repeat(5,1fr)}.h2-route a{padding:15px 10px}
 .h2-flip-grid{gap:10px}.h2-story-grid{grid-template-columns:1fr;gap:30px}.h2-story-media,.h2-story-media img{height:430px;min-height:430px}
 .h2-split-grid{grid-template-columns:45px 1fr}.h2-split-image{grid-column:2}.h2-split-image img{height:330px}
 .h2-type-layout{grid-template-columns:1fr;gap:20px}
}
@media(max-width:767px){
 .h2-container{width:min(100% - 28px,620px)}.h2-section{padding:42px 0}
 .h2-hero{padding:28px 0 35px}.h2-hero-grid{gap:8px}.h2-hero-copy h1{font-size:clamp(36px,11vw,52px);margin:16px 0 14px}.h2-hero-copy>p{font-size:15px}.h2-actions{margin-top:19px}.h2-btn{min-height:44px;padding:0 16px}.h2-hero-meta{margin-top:22px;font-size:13px;gap:9px}.h2-hero-visual{min-height:370px;margin-top:-2px}.h2-hero-image{width:72vw;max-width:310px;border-width:5px;box-shadow:16px 18px 0 var(--h2-accent-soft)}.h2-orbit-1{width:350px;height:210px}.h2-orbit-2{width:290px;height:160px}.h2-float-card{font-size:13px;padding:9px 11px}.h2-float-card b{font-size:15px}.h2-float-card span{font-size:13px}.h2-float-top{left:0;top:50px}.h2-float-bottom{right:0;bottom:35px}
 .h2-intro-grid{padding:18px 0 25px}.h2-intro-grid h2,.h2-smooth-head h2,.h2-flip-head h2,.h2-story-copy h2,.h2-split-copy h2{font-size:clamp(34px,9vw,48px)}.h2-lead{font-size:15px}
 .h2-lane{grid-template-columns:30px 1fr;min-height:150px;gap:10px}.h2-lane img{grid-column:2;width:100%;height:85px;justify-self:stretch}.h2-lane h3{font-size:19px}.h2-lane p{font-size:14px}
 .h2-stacked{padding:48px 0}.h2-stacked-intro h2{font-size:clamp(35px,9vw,48px)}.h2-stack-stage{height:580px}.h2-stack-card{top:90px;height:445px;padding:10px}.h2-stack-card+.h2-stack-card{margin-top:-390px}.h2-stack-info h3{font-size:20px}.h2-stack-info p{font-size:13px}
 .h2-route{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.h2-route a{min-width:150px;scroll-snap-align:start;border-right:1px solid var(--h2-line)}.h2-route a:last-child{border-right:1px solid var(--h2-line)}
 .h2-scroll-demo{margin-top:22px}
 .h2-flip-head{grid-template-columns:1fr;gap:14px}.h2-flip-grid{grid-template-columns:1fr}.h2-flip-card{height:270px}
 .h2-story-media,.h2-story-media img{height:330px;min-height:330px}.h2-story-list>div{padding:11px 0}
 .h2-split-grid{grid-template-columns:1fr;gap:16px}.h2-split-number{display:none}.h2-split-image{grid-column:auto}.h2-split-image img{height:270px}.h2-type{padding:48px 0 38px}.h2-typewriter{font-size:clamp(34px,9vw,48px)}.h2-cursor{height:42px}.h2-type-bottom{font-size:13px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.h2-scroll-demo-track{animation:none}.h2-cursor{animation:none}.h2-hero-image img,.h2-story-media img{transition:none}.h2-reveal{opacity:1;transform:none}}


/* =========================================================
   HOME 2 — HERO V4
   Full-bleed photographic hero with compact typography.
   ========================================================= */
.h2-hero{
  position:relative;
  min-height:calc(100svh - 78px);
  display:flex;
  align-items:center;
  overflow:hidden;
  padding:56px 0 64px;
  isolation:isolate;
  background:#201111;
}
.h2-hero-bg{
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(11,8,8,.90) 0%,rgba(11,8,8,.72) 38%,rgba(11,8,8,.30) 70%,rgba(11,8,8,.48) 100%),
    url("../images/premium-smartphones-night.jpg") center/cover no-repeat;
  transform:scale(1.035);
}
.h2-hero-bg::after{
  content:"";
  position:absolute;inset:0;
  background:radial-gradient(circle at 72% 46%,rgba(209,117,117,.22),transparent 30%),
             linear-gradient(180deg,transparent 60%,rgba(11,8,8,.58));
}
.h2-hero-gridline{
  position:absolute;inset:-15%;
  background:repeating-linear-gradient(90deg,transparent 0 10%,rgba(255,255,255,.035) 10.05% 10.12%);
  transform:skewX(-14deg);
  opacity:.7;
}
.h2-hero-glow{
  position:absolute;
  width:42vw;height:42vw;max-width:560px;max-height:560px;
  right:7%;top:10%;
  border-radius:50%;
  background:rgba(209,117,117,.12);
  filter:blur(55px);
  animation:h2HeroGlow 7s ease-in-out infinite alternate;
}
.h2-hero-badge{
  position:absolute;right:5%;bottom:8%;
  writing-mode:vertical-rl;
  letter-spacing:.18em;
  font-size:13px;font-weight:800;
  color:rgba(255,255,255,.62);
}
.h2-hero-grid{
  position:relative;
  grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
  gap:34px;
  width:100%;
}
.h2-hero-copy{
  color:#FFFFFF;
  max-width:650px;
}
.h2-kicker{color:#E8CFCF}
.h2-hero-copy h1{
  font-size:clamp(40px,5vw,64px);
  line-height:1.03;
  letter-spacing:-.035em;
  margin:16px 0 16px;
}
.h2-hero-copy h1 em{color:#D17575;font-style:normal}
.h2-hero-copy>p{
  color:rgba(255,255,255,.86);
  max-width:560px;
  font-size:16px;
  line-height:1.65;
}
.h2-actions{margin-top:22px}
.h2-btn-solid{
  background:#D17575!important;color:#F29191!important;
  border-color:#D17575!important;
}
.h2-btn-line{
  color:#FFFFFF!important;
  border-color:rgba(255,255,255,.48)!important;
  background:rgba(255,255,255,.06)!important;
}
.h2-btn:hover{transform:translateY(-3px)}
.h2-hero-meta{
  color:rgba(255,255,255,.78);
  border-color:rgba(255,255,255,.24);
  margin-top:24px;
}
.h2-hero-visual{
  min-height:520px;
}
.h2-hero-image{
  width:min(440px,78%);
  aspect-ratio:4/5;
  border:5px solid rgba(255,255,255,.9);
  box-shadow:22px 26px 0 rgba(209,117,117,.72),0 28px 70px rgba(0,0,0,.35);
  transform:rotate(3deg);
  animation:h2HeroFloat 5.5s ease-in-out infinite;
}
.h2-hero-image img{object-position:center}
.h2-float-card{
  background:rgba(21,12,12,.82);
  color:#FFFFFF;
  border-color:rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
}
.h2-float-card span{color:rgba(255,255,255,.76)}
.h2-float-top{left:2%;top:72px}
.h2-float-bottom{right:0;bottom:54px}
.h2-orbit{border-color:rgba(209,117,117,.38)}
@keyframes h2HeroFloat{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes h2HeroGlow{0%{transform:scale(.92);opacity:.55}100%{transform:scale(1.08);opacity:.9}}

html:not(.dark) .h2-hero{background:#221313}
html.dark .h2-hero{background:#100909}

@media(max-width:1024px){
  .h2-hero{min-height:auto;padding:52px 0 58px}
  .h2-hero-grid{grid-template-columns:1fr;gap:26px}
  .h2-hero-copy{max-width:760px}
  .h2-hero-visual{min-height:430px}
  .h2-hero-image{width:min(390px,62vw)}
  .h2-hero-badge{display:none}
}
@media(max-width:767px){
  .h2-hero{padding:38px 0 42px;min-height:auto}
  .h2-hero-grid{gap:16px}
  .h2-hero-copy h1{font-size:clamp(34px,10vw,48px);margin:13px 0 13px}
  .h2-hero-copy>p{font-size:15px;line-height:1.6}
  .h2-actions{gap:8px;margin-top:18px}
  .h2-btn{min-height:44px;font-size:14px}
  .h2-hero-meta{font-size:13px;margin-top:18px;gap:8px}
  .h2-hero-visual{min-height:345px;margin-top:0}
  .h2-hero-image{
    width:min(78vw,300px);
    border-width:4px;
    box-shadow:14px 18px 0 rgba(209,117,117,.72),0 20px 45px rgba(0,0,0,.3);
  }
  .h2-orbit-1{width:320px;height:190px}
  .h2-orbit-2{width:270px;height:145px}
  .h2-float-card{font-size:13px;padding:8px 10px}
  .h2-float-card b{font-size:15px}
  .h2-float-card span{font-size:13px}
  .h2-float-top{left:0;top:38px}
  .h2-float-bottom{right:0;bottom:24px}
}
@media(prefers-reduced-motion:reduce){
  .h2-hero-image,.h2-hero-glow{animation:none}
}

/* =========================================================
   HOME 2 — HERO V5
   New photographic background + angular product card.
   ========================================================= */
.h2-hero{
  min-height:calc(100svh - 78px);
  padding:48px 0 52px;
}
.h2-hero-bg{
  background:
    linear-gradient(90deg,rgba(10,7,7,.92) 0%,rgba(10,7,7,.76) 35%,rgba(10,7,7,.38) 66%,rgba(10,7,7,.62) 100%),
    url("../images/multi-smartphone-collection.jpg") center center/cover no-repeat;
}
.h2-hero-bg::after{
  background:
    radial-gradient(circle at 78% 48%,rgba(209,117,117,.20),transparent 28%),
    linear-gradient(180deg,rgba(8,5,5,.08),rgba(8,5,5,.62));
}
.h2-hero-grid{
  width:min(1180px,calc(100% - 48px));
  max-width:1180px;
  margin-inline:auto;
  box-sizing:border-box;
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);
  gap:42px;
}
.h2-hero-copy{padding-inline:6px}
.h2-hero-copy h1{
  font-size:clamp(38px,4.6vw,58px);
  line-height:1.04;
  margin:14px 0 15px;
}
.h2-hero-copy>p{font-size:15px;line-height:1.7;max-width:530px}
.h2-hero-visual{min-height:500px}
/* Replace the oval with a clean angled product card. */
.h2-hero-image{
  width:min(410px,76%);
  aspect-ratio:1/1.08;
  border-radius:28px 8px 28px 8px;
  border:4px solid rgba(255,255,255,.88);
  transform:rotate(-3deg);
  box-shadow:24px 24px 0 rgba(209,117,117,.72),0 28px 70px rgba(0,0,0,.40);
  animation:h2HeroFloat 5.5s ease-in-out infinite;
}
.h2-hero-image img{object-position:center;transform:scale(1.01)}
.h2-hero-visual::before,
.h2-hero-visual::after{
  content:"";
  position:absolute;
  width:220px;height:220px;
  border:1px solid rgba(209,117,117,.30);
  pointer-events:none;
}
.h2-hero-visual::before{
  right:6%;top:8%;
  transform:rotate(14deg);
}
.h2-hero-visual::after{
  left:7%;bottom:7%;
  transform:rotate(-10deg);
  border-style:dashed;
}
/* Remove the old oval orbit decorations. */
.h2-orbit{display:none}
.h2-float-top{left:1%;top:64px}
.h2-float-bottom{right:1%;bottom:48px}

@media(max-width:1024px){
  .h2-hero{padding:42px 0 48px}
  .h2-hero-grid{width:min(100% - 40px,760px);grid-template-columns:1fr;gap:24px}
  .h2-hero-copy{padding-inline:0}
  .h2-hero-copy h1{font-size:clamp(38px,7vw,54px)}
  .h2-hero-visual{min-height:430px}
  .h2-hero-image{width:min(390px,62vw)}
}
@media(max-width:767px){
  .h2-hero{padding:32px 0 38px}
  .h2-hero-grid{width:calc(100% - 28px);gap:14px}
  .h2-hero-copy h1{font-size:clamp(34px,9vw,46px);margin:12px 0}
  .h2-hero-copy>p{font-size:15px;line-height:1.6}
  .h2-hero-visual{min-height:340px}
  .h2-hero-image{
    width:min(78vw,300px);
    aspect-ratio:1/1.06;
    border-width:4px;
    border-radius:22px 7px 22px 7px;
    box-shadow:14px 18px 0 rgba(209,117,117,.72),0 20px 45px rgba(0,0,0,.30);
  }
  .h2-hero-visual::before,.h2-hero-visual::after{width:140px;height:140px}
  .h2-float-top{left:0;top:28px}
  .h2-float-bottom{right:0;bottom:18px}
}


/* =========================================================
   HOME 2 — SECTION 02 / ECOSYSTEM REDESIGN
   Asymmetrical visual composition; no list layout.
   ========================================================= */
.h2-ecosystem{
  background:
    radial-gradient(circle at 18% 62%,rgba(124,67,67,.14),transparent 27%),
    radial-gradient(circle at 82% 25%,rgba(124,67,67,.10),transparent 30%),
    linear-gradient(135deg,var(--h2-bg),var(--h2-surface));
  border-top:1px solid var(--h2-line);
  padding:78px 0 58px;
}
.h2-eco-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.h2-eco-ring{position:absolute;border:1px solid rgba(124,67,67,.16);border-radius:50%;animation:ecoRotate 22s linear infinite}
.h2-eco-ring-a{width:760px;height:760px;right:-210px;top:-210px}
.h2-eco-ring-b{width:430px;height:430px;left:-170px;bottom:-220px;border-style:dashed;animation-duration:30s;animation-direction:reverse}
.h2-eco-pulse{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--h2-accent);box-shadow:0 0 0 0 rgba(124,67,67,.35);animation:ecoPulse 2.8s infinite}
.h2-eco-pulse-a{right:17%;top:26%}.h2-eco-pulse-b{left:24%;bottom:20%;animation-delay:1.2s}
@keyframes ecoRotate{to{transform:rotate(360deg)}}@keyframes ecoPulse{70%{box-shadow:0 0 0 18px transparent}100%{box-shadow:0 0 0 0 transparent}}

.h2-eco-top{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:end;position:relative;z-index:2}
.h2-eco-intro{display:grid;grid-template-columns:1fr .72fr;gap:42px;align-items:end}
.h2-eco-intro h2{font-size:clamp(38px,4.2vw,56px);line-height:1.03}
.h2-eco-intro p{margin:0;color:var(--h2-muted);line-height:1.7;max-width:390px;font-size:15px}

.h2-eco-stage{height:560px;position:relative;margin-top:34px}
.h2-eco-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(124,67,67,.18);border-radius:50%;transform:translate(-50%,-50%) rotate(-12deg);pointer-events:none}
.h2-eco-orbit.orbit-one{width:480px;height:270px;animation:ecoOrbit 11s ease-in-out infinite}
.h2-eco-orbit.orbit-two{width:650px;height:350px;transform:translate(-50%,-50%) rotate(22deg);border-style:dashed;animation:ecoOrbit 15s ease-in-out infinite reverse}
@keyframes ecoOrbit{50%{transform:translate(-50%,-50%) rotate(3deg) scale(1.04)}}

.h2-eco-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:330px;z-index:3}
.eco-center-glow{position:absolute;inset:-80px;border-radius:50%;background:radial-gradient(circle,rgba(184,109,109,.25),transparent 67%);filter:blur(8px);animation:ecoGlow 4s ease-in-out infinite}
.eco-center-image{position:relative;aspect-ratio:1/1;overflow:hidden;border:1px solid var(--h2-line);border-radius:50%;box-shadow:0 25px 70px rgba(31,16,16,.18);background:var(--h2-surface)}
.eco-center-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.h2-eco-center:hover .eco-center-image img{transform:scale(1.08) rotate(2deg)}
.eco-center-tag{position:absolute;right:-28px;bottom:26px;display:flex;align-items:center;gap:8px;background:var(--h2-ink);color:var(--h2-bg);padding:10px 13px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;box-shadow:0 12px 28px rgba(0,0,0,.15)}
.eco-center-tag i{color:var(--h2-accent-soft)}
@keyframes ecoGlow{50%{transform:scale(1.08);opacity:.72}}

.h2-eco-card{position:absolute;width:290px;display:grid;grid-template-columns:104px 1fr;gap:15px;align-items:center;padding:13px;background:rgba(245,234,234,.78);backdrop-filter:blur(12px);border:1px solid var(--h2-line);box-shadow:0 18px 45px rgba(31,16,16,.09);z-index:4;transition:transform .45s,box-shadow .45s,border-color .45s}
.h2-eco-card:hover{transform:translateY(-8px) rotate(0deg)!important;box-shadow:0 25px 55px rgba(31,16,16,.15);border-color:rgba(124,67,67,.5)}
.eco-card-left{left:1%;top:62px;transform:rotate(-4deg)}
.eco-card-right{right:1%;top:110px;transform:rotate(4deg)}
.eco-card-bottom{left:50%;bottom:3px;width:390px;transform:translateX(-50%) rotate(-1deg);grid-template-columns:48px 1fr auto}
.eco-card-image{height:104px;overflow:hidden}.eco-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.h2-eco-card:hover .eco-card-image img{transform:scale(1.09)}
.eco-card-copy span{font-size:12px;color:var(--h2-accent);font-weight:800;letter-spacing:.11em}
.eco-card-copy h3{font:700 19px "Space Grotesk";margin:5px 0 4px}
.eco-card-copy p{margin:0;color:var(--h2-muted);line-height:1.45;font-size:14px}
.eco-mini-icon{width:42px;height:42px;border:1px solid var(--h2-line);display:grid;place-items:center;border-radius:50%;color:var(--h2-accent);background:var(--h2-surface)}
.eco-card-bottom>a{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--h2-ink);color:var(--h2-bg);transition:.3s}
.eco-card-bottom>a:hover{transform:rotate(45deg)}

.h2-eco-footer{display:flex;align-items:center;justify-content:center;gap:18px;border-top:1px solid var(--h2-line);padding-top:17px;color:var(--h2-muted);font-size:12px;font-weight:800;letter-spacing:.12em}
.h2-eco-footer i{width:4px;height:4px;border-radius:50%;background:var(--h2-accent)}

[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.eco-card-left[data-reveal]{transform:translateY(24px) rotate(-4deg)}
.eco-card-right[data-reveal]{transform:translateY(24px) rotate(4deg)}
.eco-card-bottom[data-reveal]{transform:translate(-50%,24px) rotate(-1deg)}
[data-reveal].is-visible{opacity:1}
.eco-card-left[data-reveal].is-visible{transform:rotate(-4deg)}
.eco-card-right[data-reveal].is-visible{transform:rotate(4deg)}
.eco-card-bottom[data-reveal].is-visible{transform:translateX(-50%) rotate(-1deg)}
@media (prefers-reduced-motion:reduce){.h2-eco-ring,.h2-eco-pulse,.h2-eco-orbit,.eco-center-glow{animation:none!important}[data-reveal]{opacity:1;transform:none!important}}

html.dark .h2-ecosystem{
  background:
    radial-gradient(circle at 18% 62%,rgba(184,109,109,.13),transparent 27%),
    radial-gradient(circle at 82% 25%,rgba(184,109,109,.10),transparent 30%),
    #170D0D;
}
html.dark .h2-eco-intro p,html.dark .eco-card-copy p{color:var(--h2-dark-muted)}
html.dark .h2-eco-card{background:rgba(36,19,19,.86);border-color:var(--h2-dark-line);color:var(--h2-dark-ink)}
html.dark .eco-center-image{background:#1F1010;border-color:var(--h2-dark-line)}
html.dark .eco-mini-icon{background:#1F1010;border-color:var(--h2-dark-line)}
html.dark .h2-eco-footer{color:var(--h2-dark-muted);border-color:var(--h2-dark-line)}
html.dark .h2-eco-card:hover{border-color:rgba(199,152,152,.45)}
html.dark .eco-center-tag{background:var(--h2-dark-ink);color:var(--h2-dark)}

@media (max-width:900px){
  .h2-ecosystem{padding:62px 0 46px}
  .h2-eco-top{grid-template-columns:1fr;gap:20px}
  .h2-eco-intro{grid-template-columns:1fr .85fr;gap:30px}
  .h2-eco-stage{height:650px;margin-top:26px}
  .h2-eco-center{width:290px}
  .h2-eco-card{width:250px}
  .eco-card-left{left:0;top:40px}.eco-card-right{right:0;top:75px}
  .eco-card-bottom{bottom:8px;width:350px}
}
@media (max-width:640px){
  .h2-ecosystem{padding:52px 0 40px}
  .h2-container{width:min(100% - 28px,1180px)}
  .h2-eco-intro{grid-template-columns:1fr;gap:14px}
  .h2-eco-intro h2{font-size:38px}
  .h2-eco-stage{height:auto;min-height:720px;margin-top:22px}
  .h2-eco-center{width:min(72vw,270px);top:245px}
  .h2-eco-orbit.orbit-one{width:330px;height:210px}.h2-eco-orbit.orbit-two{width:430px;height:270px}
  .h2-eco-card{width:calc(100% - 4px);grid-template-columns:82px 1fr;padding:10px;gap:12px}
  .eco-card-image{height:82px}
  .eco-card-left{left:2px;top:0;transform:rotate(-2deg)}
  .eco-card-right{right:2px;top:435px;transform:rotate(2deg)}
  .eco-card-bottom{left:50%;bottom:0;width:calc(100% - 4px);grid-template-columns:40px 1fr 34px;transform:translateX(-50%)}
  .eco-card-copy h3{font-size:17px}.eco-card-copy p{font-size:13px}.eco-card-copy span{font-size:11px}
  .eco-mini-icon{width:38px;height:38px}
  .eco-center-tag{right:-8px;bottom:12px;font-size:10px;padding:8px 10px}
  .h2-eco-footer{gap:9px;flex-wrap:wrap;font-size:10px}
  .h2-eco-footer i{display:none}
}

/* =========================================================
   HOME 2 — SECTION 02 COMPACT CANVAS REDESIGN
   ========================================================= */
.h2-ecosystem{
  position:relative;
  overflow:hidden;
  padding:64px 0 42px;
  border-top:1px solid var(--h2-line);
  background:
    radial-gradient(circle at 18% 55%,rgba(184,109,109,.12),transparent 28%),
    radial-gradient(circle at 84% 30%,rgba(184,109,109,.09),transparent 25%),
    var(--h2-bg);
}
.h2-eco-heading{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  gap:48px;
  align-items:end;
}
.h2-eco-heading-copy{
  display:grid;
  grid-template-columns:1fr .72fr;
  gap:34px;
  align-items:end;
}
.h2-eco-heading-copy h2{
  margin:0;
  font-size:clamp(38px,4vw,52px);
  line-height:1.04;
}
.h2-eco-heading-copy p{
  margin:0;
  max-width:370px;
  color:var(--h2-muted);
  font-size:15px;
  line-height:1.65;
}
.h2-eco-canvas{
  height:438px;
  position:relative;
  margin-top:28px;
  border-top:1px solid var(--h2-line);
  border-bottom:1px solid var(--h2-line);
  isolation:isolate;
}
.h2-eco-grid{
  position:absolute;inset:0;opacity:.22;pointer-events:none;
  background-image:linear-gradient(rgba(184,109,109,.09) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(184,109,109,.09) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(90deg,transparent,black 18%,black 82%,transparent);
}
.h2-eco-glow{
  position:absolute;border-radius:50%;filter:blur(3px);pointer-events:none;
  background:radial-gradient(circle,rgba(184,109,109,.18),transparent 68%);
  animation:ecoGlowFloat 5s ease-in-out infinite;
}
.eco-glow-one{width:340px;height:340px;left:30%;top:32px}
.eco-glow-two{width:260px;height:260px;right:4%;bottom:-110px;animation-delay:1.6s}
.h2-eco-dot{
  position:absolute;width:7px;height:7px;border-radius:50%;
  background:var(--h2-accent);box-shadow:0 0 0 0 rgba(184,109,109,.35);
  animation:ecoDotPulse 2.8s infinite;
}
.eco-dot-one{left:21%;top:23%}.eco-dot-two{right:22%;bottom:18%;animation-delay:1.2s}
@keyframes ecoGlowFloat{50%{transform:translate3d(0,-12px,0) scale(1.08);opacity:.72}}
@keyframes ecoDotPulse{70%{box-shadow:0 0 0 15px transparent}100%{box-shadow:0 0 0 0 transparent}}

.eco-orbit{
  position:absolute;left:50%;top:50%;pointer-events:none;
  border:1px solid rgba(184,109,109,.18);border-radius:50%;
  transform:translate(-50%,-50%) rotate(-10deg);
}
.eco-orbit-one{width:470px;height:245px;animation:ecoOrbitNew 12s ease-in-out infinite}
.eco-orbit-two{width:610px;height:310px;border-style:dashed;transform:translate(-50%,-50%) rotate(16deg);animation:ecoOrbitNew 17s ease-in-out infinite reverse}
@keyframes ecoOrbitNew{50%{transform:translate(-50%,-50%) rotate(2deg) scale(1.035)}}

.eco-main-product{
  position:absolute;left:50%;top:50%;width:285px;
  transform:translate(-50%,-50%);z-index:3;
}
.eco-product-glow{
  position:absolute;inset:-50px;border-radius:50%;
  background:radial-gradient(circle,rgba(184,109,109,.22),transparent 68%);
  filter:blur(10px);animation:ecoGlowFloat 4.2s ease-in-out infinite;
}
.eco-product-frame{
  position:relative;overflow:hidden;height:285px;
  border:1px solid rgba(234,216,216,.28);
  border-radius:24px 58px 24px 58px;
  background:var(--h2-surface);
  box-shadow:0 24px 55px rgba(0,0,0,.24);
  transform:rotate(-2deg);
  transition:transform .65s cubic-bezier(.2,.7,.2,1),box-shadow .65s;
}
.eco-product-frame img{
  width:100%;height:100%;object-fit:cover;
  transition:transform 1s cubic-bezier(.2,.7,.2,1);
}
.eco-main-product:hover .eco-product-frame{
  transform:rotate(0) translateY(-7px);
  box-shadow:0 30px 65px rgba(0,0,0,.3);
}
.eco-main-product:hover .eco-product-frame img{transform:scale(1.08)}
.eco-product-label{
  position:absolute;left:14px;bottom:13px;
  padding:7px 9px;border:1px solid rgba(255,255,255,.22);
  background:rgba(18,9,9,.7);backdrop-filter:blur(8px);
  color:#F5EAEA;font-size:12px;font-weight:800;letter-spacing:.1em;
}
.eco-product-badge{
  position:absolute;right:-72px;top:28px;
  display:flex;align-items:center;gap:8px;
  padding:11px 14px;border-radius:999px;
  background:var(--h2-ink);color:var(--h2-bg);
  font-size:12px;font-weight:800;letter-spacing:.08em;
  box-shadow:0 14px 30px rgba(0,0,0,.18);
  animation:badgeFloat 3.5s ease-in-out infinite;
}
.eco-product-badge i{color:var(--h2-accent-soft)}
@keyframes badgeFloat{50%{transform:translateY(-6px)}}

.eco-feature{
  position:absolute;z-index:5;width:285px;
  display:grid;grid-template-columns:42px 1fr;gap:12px;
  padding:14px;background:rgba(245,234,234,.86);
  border:1px solid var(--h2-line);
  backdrop-filter:blur(13px);
  box-shadow:0 16px 35px rgba(0,0,0,.10);
  transition:transform .45s ease,box-shadow .45s ease,border-color .45s ease;
}
.eco-feature:hover{transform:translateY(-7px)!important;box-shadow:0 24px 48px rgba(0,0,0,.18);border-color:rgba(184,109,109,.55)}
.eco-feature-left{left:3%;top:58px;transform:rotate(-2deg)}
.eco-feature-right{right:3%;top:72px;transform:rotate(2deg)}
.eco-feature-bottom{
  left:50%;bottom:22px;width:400px;
  grid-template-columns:42px 1fr 34px;
  transform:translateX(-50%);
}
.eco-feature-icon{
  width:42px;height:42px;display:grid;place-items:center;
  border:1px solid var(--h2-line);border-radius:12px;
  color:var(--h2-accent);background:var(--h2-surface);
}
.eco-feature span{font-size:12px;color:var(--h2-accent);font-weight:800;letter-spacing:.1em}
.eco-feature h3{font:700 18px "Space Grotesk";margin:4px 0 3px}
.eco-feature p{margin:0;color:var(--h2-muted);font-size:14px;line-height:1.4}
.eco-feature-bottom>a{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:var(--h2-ink);color:var(--h2-bg);transition:transform .3s;
}
.eco-feature-bottom>a:hover{transform:rotate(45deg)}
.h2-ecosystem [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1)}
.h2-ecosystem .eco-feature-left[data-reveal]{transform:translateY(20px) rotate(-2deg)}
.h2-ecosystem .eco-feature-right[data-reveal]{transform:translateY(20px) rotate(2deg)}
.h2-ecosystem .eco-feature-bottom[data-reveal]{transform:translate(-50%,20px)}
.h2-ecosystem .eco-main-product[data-reveal]{transform:translate(-50%,-50%) scale(.94);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.h2-ecosystem [data-reveal].is-visible{opacity:1}
.h2-ecosystem .eco-feature-left[data-reveal].is-visible{transform:rotate(-2deg)}
.h2-ecosystem .eco-feature-right[data-reveal].is-visible{transform:rotate(2deg)}
.h2-ecosystem .eco-feature-bottom[data-reveal].is-visible{transform:translateX(-50%)}
.h2-ecosystem .eco-main-product[data-reveal].is-visible{transform:translate(-50%,-50%) scale(1)}
.h2-ecosystem .h2-eco-footer{margin-top:13px;padding-top:12px;font-size:12px}

html.dark .h2-ecosystem{background:
  radial-gradient(circle at 18% 55%,rgba(184,109,109,.10),transparent 28%),
  radial-gradient(circle at 84% 30%,rgba(184,109,109,.08),transparent 25%),#170D0D}
html.dark .eco-feature{background:rgba(34,19,19,.9);border-color:var(--h2-dark-line);color:var(--h2-dark-ink)}
html.dark .eco-feature p{color:var(--h2-dark-muted)}
html.dark .eco-feature-icon{background:#1F1010;border-color:var(--h2-dark-line)}
html.dark .eco-product-frame{border-color:var(--h2-dark-line)}
html.dark .eco-product-badge{background:var(--h2-dark-ink);color:var(--h2-dark)}

@media (max-width:900px){
  .h2-ecosystem{padding:56px 0 38px}
  .h2-eco-heading{grid-template-columns:1fr;gap:18px}
  .h2-eco-heading-copy{grid-template-columns:1fr .8fr;gap:26px}
  .h2-eco-canvas{height:470px;margin-top:24px}
  .eco-main-product{width:250px}
  .eco-product-frame{height:250px}
  .eco-feature{width:235px;padding:11px}
  .eco-feature-left{left:0;top:46px}.eco-feature-right{right:0;top:58px}
  .eco-feature-bottom{width:330px;bottom:15px}
  .eco-product-badge{right:-48px}
}
@media (max-width:640px){
  .h2-ecosystem{padding:46px 0 32px}
  .h2-eco-heading-copy{grid-template-columns:1fr;gap:12px}
  .h2-eco-heading-copy h2{font-size:36px}
  .h2-eco-heading-copy p{font-size:14px;max-width:none}
  .h2-eco-canvas{height:610px;margin-top:20px}
  .eco-orbit-one{width:300px;height:190px}.eco-orbit-two{width:390px;height:245px}
  .eco-main-product{width:210px;top:48%}
  .eco-product-frame{height:210px;border-radius:20px 42px 20px 42px}
  .eco-product-badge{right:-32px;top:8px;font-size:10px;padding:9px 11px}
  .eco-feature{width:calc(100% - 8px);grid-template-columns:38px 1fr;gap:10px;padding:10px}
  .eco-feature-left{left:4px;top:14px;transform:rotate(-1deg)}
  .eco-feature-right{right:4px;top:auto;bottom:112px;transform:rotate(1deg)}
  .eco-feature-bottom{left:4px;bottom:4px;width:calc(100% - 8px);transform:none}
  .eco-feature h3{font-size:17px}.eco-feature p{font-size:13px}.eco-feature span{font-size:11px}
  .eco-feature-icon{width:38px;height:38px}
  .h2-ecosystem .eco-feature-left[data-reveal].is-visible{transform:rotate(-1deg)}
  .h2-ecosystem .eco-feature-right[data-reveal].is-visible{transform:rotate(1deg)}
  .h2-ecosystem .eco-feature-bottom[data-reveal].is-visible{transform:none}
  .h2-ecosystem .eco-main-product[data-reveal].is-visible{transform:translate(-50%,-50%) scale(1)}
  .h2-ecosystem .h2-eco-footer{font-size:10px;gap:8px}
}
@media (prefers-reduced-motion:reduce){
  .h2-eco-glow,.h2-eco-dot,.eco-orbit,.eco-product-glow,.eco-product-badge{animation:none!important}
  .h2-ecosystem [data-reveal]{opacity:1!important;transform:none!important}
}

/* =========================================================
   HOME 2 — SECTION 03 STACKED CARD MOTION
   ========================================================= */
.h2-stacked{overflow:hidden}
.h2-stack-card{
  transition:transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .55s ease,filter .55s ease;
  will-change:transform;
}
.h2-stack-card.stack-focus{
  box-shadow:0 34px 75px rgba(0,0,0,.38);
  filter:saturate(1.08);
}
.h2-stack-card .h2-stack-image{position:relative;overflow:hidden}
.h2-stack-card .h2-stack-image::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,transparent 45%,rgba(184,109,109,.16));
  opacity:0;transition:opacity .6s ease;pointer-events:none;
}
.h2-stack-card.stack-focus .h2-stack-image::after{opacity:1}
.h2-stack-card .h2-stack-image img{
  transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .8s ease;
  will-change:transform;
}
.h2-stack-card.stack-focus .h2-stack-image img{transform:scale(1.06);filter:saturate(1.05)}
.h2-stack-info h3{transition:transform .45s ease,color .45s ease}
.h2-stack-card.stack-focus .h2-stack-info h3{transform:translateX(6px);color:#D58D8D}
.h2-stack-card::before{
  content:"";position:absolute;inset:10px;border:1px solid rgba(199,152,152,.12);
  pointer-events:none;opacity:0;transform:scale(.96);transition:.55s ease;z-index:2;
}
.h2-stack-card.stack-focus::before{opacity:1;transform:scale(1)}
@media (max-width:640px){
  .h2-stack-card{height:480px}
  .h2-stack-card+.h2-stack-card{margin-top:-410px}
}

/* Flip cards — image-led fronts */
.h2-flip-card{height:360px;overflow:visible;cursor:pointer}
.h2-flip-inner{will-change:transform}
.h2-flip-face{overflow:hidden;border-radius:14px}
.h2-flip-front{padding:0;position:absolute;inset:0;isolation:isolate}
.h2-flip-front>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .6s;z-index:-2}
.h2-flip-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,8,8,.08) 18%,rgba(16,8,8,.18) 42%,rgba(16,8,8,.88) 100%);z-index:-1}
.h2-flip-front>span{top:18px;left:20px;z-index:2;background:rgba(18,9,9,.62);border:1px solid rgba(244,234,234,.2);padding:5px 8px;border-radius:999px;color:#D9B9B9}
.h2-flip-front>i{position:absolute;top:18px;right:20px;margin:0;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(18,9,9,.62);border:1px solid rgba(244,234,234,.2);font-size:17px;color:#C79898;z-index:2}
.h2-flip-front-copy{position:absolute;left:20px;right:20px;bottom:18px;z-index:2}
.h2-flip-front-copy h3{font:700 26px/1.1 "Space Grotesk";margin:0;color:#F4EAEA}
.h2-flip-front-copy p{margin:5px 0 7px;color:#E9D6D6;font-size:15px}
.h2-flip-front-copy small{font-size:13px;color:#C79898;letter-spacing:.09em;text-transform:uppercase;font-weight:800}
.h2-flip-card:hover .h2-flip-front>img,.h2-flip-card:focus .h2-flip-front>img,.h2-flip-card.is-flipped .h2-flip-front>img{transform:scale(1.07);filter:saturate(1.08)}
.h2-flip-card:hover .h2-flip-front-copy{transform:translateY(-3px)}
.h2-flip-front-copy{transition:transform .45s ease}
.h2-flip-back{padding:28px;background:var(--h2-bg);border-color:var(--h2-line);justify-content:center}
.h2-flip-back h3{font-size:24px;line-height:1.15}
.h2-flip-back p{font-size:15px;line-height:1.65;margin:0;color:var(--h2-muted)}
.h2-flip-back a{font-size:15px;display:inline-flex;align-items:center;gap:8px;width:max-content}
html.dark .h2-flip-back{background:#1F1010;border-color:var(--h2-dark-line)}
@media(max-width:767px){
 .h2-flip-card{height:315px}.h2-flip-front-copy h3{font-size:23px}.h2-flip-front-copy p{font-size:14px}.h2-flip-back{padding:22px}.h2-flip-back h3{font-size:21px}.h2-flip-back p{font-size:14px}
}

/* =========================================================
   HOME 2 — FINAL THEME / FOOTER READABILITY PATCH
   Same footer typography in light + dark mode, no blue accents,
   and strong contrast for the intentionally dark editorial sections.
   ========================================================= */

/* Footer typography stays identical in both themes. */
.cv-footer,
.cv-footer p,
.cv-footer a,
.cv-footer h3,
.cv-footer-bottom,
.cv-footer-brand .brand-text strong,
.cv-footer-brand .brand-text small,
.cv-footer-contact p,
.cv-footer-col a{
  font-family:"Space Grotesk",sans-serif;
}
.cv-footer-brand .brand-text strong{font-size:16px!important;line-height:1.2!important}
.cv-footer-brand .brand-text small{font-size:13px!important;line-height:1.2!important}
.cv-footer-brand>p{font-size:14px!important;line-height:1.6!important}
.cv-footer-col h3{font-size:14px!important;line-height:1.25!important}
.cv-footer-col a{font-size:14px!important;line-height:1.4!important}
.cv-footer-contact p{font-size:14px!important;line-height:1.5!important}
.cv-footer-contact p i{font-size:14px!important}
.cv-footer-bottom{font-size:13px!important;line-height:1.4!important}
.cv-footer-bottom a{font-size:13px!important}
.footer-socials a{font-size:14px!important}

/* No blue anywhere in the Home 2 footer. */
.cv-footer .footer-socials a,
.cv-footer .cv-footer-contact p i,
.cv-footer .cv-footer-bottom a{
  color:#623434!important;
}
.cv-footer .footer-socials a{
  border-color:rgba(98,52,52,.28)!important;
}
.cv-footer .footer-socials a:hover{
  color:#7C4343!important;
  border-color:#7C4343!important;
}

/* Light mode footer: readable dark copy on a soft neutral surface. */
html:not(.dark) .cv-footer{
  background:#E8D4D4!important;
  color:#190E0E!important;
  border-top-color:rgba(25,14,14,.14)!important;
}
html:not(.dark) .cv-footer-brand .brand-text strong,
html:not(.dark) .cv-footer-col h3{
  color:#190E0E!important;
}
html:not(.dark) .cv-footer-brand .brand-text small,
html:not(.dark) .cv-footer .footer-socials a,
html:not(.dark) .cv-footer .cv-footer-contact p i{
  color:#623434!important;
}
html:not(.dark) .cv-footer-brand>p,
html:not(.dark) .cv-footer-col a,
html:not(.dark) .cv-footer-contact p{
  color:#3E2222!important;
}
html:not(.dark) .cv-footer-col a:hover,
html:not(.dark) .cv-footer-bottom a{
  color:#190E0E!important;
}
html:not(.dark) .cv-footer-bottom{
  color:#522C2C!important;
  border-top-color:rgba(25,14,14,.14)!important;
}

/* Dark mode footer uses the exact same sizes, with bright readable copy. */
html.dark .cv-footer{
  background:#0F0808!important;
  color:#F6EDED!important;
  border-top-color:rgba(246,237,237,.12)!important;
}
html.dark .cv-footer-brand .brand-text strong,
html.dark .cv-footer-col h3{
  color:#F6EDED!important;
}
html.dark .cv-footer-brand .brand-text small,
html.dark .cv-footer .footer-socials a,
html.dark .cv-footer .cv-footer-contact p i{
  color:#B86D6D!important;
}
html.dark .cv-footer-brand>p,
html.dark .cv-footer-col a,
html.dark .cv-footer-contact p{
  color:#D8B7B7!important;
}
html.dark .cv-footer-col a:hover,
html.dark .cv-footer-bottom a{
  color:#F6EDED!important;
}
html.dark .cv-footer-bottom{
  color:#C79696!important;
  border-top-color:rgba(246,237,237,.14)!important;
}

/* Light mode: keep the intentionally dark editorial sections readable.
   Global light-theme rules previously forced dark text over these backgrounds. */
html:not(.dark) .h2-stacked,
html:not(.dark) .h2-split,
html:not(.dark) .h2-type{
  color:#F4EAEA!important;
}
html:not(.dark) .h2-stacked h1,
html:not(.dark) .h2-stacked h2,
html:not(.dark) .h2-stacked h3,
html:not(.dark) .h2-stacked h4,
html:not(.dark) .h2-stacked p,
html:not(.dark) .h2-stacked small,
html:not(.dark) .h2-split h1,
html:not(.dark) .h2-split h2,
html:not(.dark) .h2-split h3,
html:not(.dark) .h2-split h4,
html:not(.dark) .h2-split p,
html:not(.dark) .h2-split small,
html:not(.dark) .h2-type h1,
html:not(.dark) .h2-type h2,
html:not(.dark) .h2-type h3,
html:not(.dark) .h2-type p,
html:not(.dark) .h2-type small{
  color:#F4EAEA!important;
}
html:not(.dark) .h2-stacked .h2-section-label,
html:not(.dark) .h2-split .h2-section-label,
html:not(.dark) .h2-type .h2-section-label,
html:not(.dark) .h2-stacked .h2-stack-info small,
html:not(.dark) .h2-split-number,
html:not(.dark) .h2-type-prefix,
html:not(.dark) .h2-type-bottom{
  color:#C79898!important;
}
html:not(.dark) .h2-stacked .h2-stack-info p,
html:not(.dark) .h2-split-copy p,
html:not(.dark) .h2-type-layout>div:last-child p{
  color:#D8B6B6!important;
}
html:not(.dark) .h2-stacked .h2-btn-solid,
html:not(.dark) .h2-split .h2-btn-solid{
  background:#F4EAEA!important;
  color:#170D0D!important;
}
html:not(.dark) .h2-stacked .h2-btn-line,
html:not(.dark) .h2-split .h2-btn-line{
  color:#F4EAEA!important;
  border-color:rgba(244,234,234,.28)!important;
}
html:not(.dark) .h2-type .h2-text-link{
  color:#F4EAEA!important;
}

/* Keep all Home 2 normal copy at 13px or above. */
.h2-section p,
.h2-section li,
.h2-section small,
.h2-section a,
.h2-section button{
  font-size:max(13px,1em);
}

@media(max-width:767px){
  .cv-footer-brand>p{font-size:14px!important}
  .cv-footer-col a,.cv-footer-contact p{font-size:14px!important}
  .cv-footer-bottom,.cv-footer-bottom a{font-size:13px!important}
}

/* =========================================================
   HOME 2 — FINAL LIGHT MODE VISIBILITY + FOOTER TYPE LOCK
   Keep the cinematic hero / image cards dark in both themes,
   while using exactly the same footer font scale in light/dark.
   ========================================================= */

/* Section 01: the photographic hero stays dark in Light Mode, so its
   foreground copy must remain light and never inherit global light text. */
html:not(.dark) .h2-hero,
html:not(.dark) .h2-hero-copy,
html:not(.dark) .h2-hero-copy h1,
html:not(.dark) .h2-hero-copy .split-heading,
html:not(.dark) .h2-hero-copy > p,
html:not(.dark) .h2-kicker,
html:not(.dark) .h2-hero-meta,
html:not(.dark) .h2-hero-meta span{
  color:#F6EDED!important;
}
html:not(.dark) .h2-hero-copy h1 em{
  color:#D17575!important;
}
html:not(.dark) .h2-hero-copy > p{
  color:rgba(255,255,255,.88)!important;
}
html:not(.dark) .h2-hero-meta{
  border-color:rgba(255,255,255,.24)!important;
}
html:not(.dark) .h2-btn-line{
  color:#FFFFFF!important;
  border-color:rgba(255,255,255,.48)!important;
  background:rgba(255,255,255,.06)!important;
}
html:not(.dark) .h2-float-card{
  background:rgba(21,12,12,.88)!important;
  color:#F6EDED!important;
  border-color:rgba(255,255,255,.18)!important;
}
html:not(.dark) .h2-float-card b{color:#F6EDED!important}
html:not(.dark) .h2-float-card span{color:rgba(255,255,255,.78)!important}

/* Section 05: image-led flip cards also stay dark on Light Mode.
   White foreground copy prevents the global light-theme text rules from
   making the card labels disappear into the photographs. */
html:not(.dark) .h2-flip-front-copy,
html:not(.dark) .h2-flip-front-copy h3,
html:not(.dark) .h2-flip-front-copy p{
  color:#F4EAEA!important;
}
html:not(.dark) .h2-flip-front-copy small{
  color:#C79898!important;
}
html:not(.dark) .h2-flip-front > span{
  color:#D9B9B9!important;
}
html:not(.dark) .h2-flip-front > i{
  color:#C79898!important;
}

/* Footer: one fixed typography scale for BOTH themes.
   No inherited browser/global theme rules can enlarge Light Mode text. */
.cv-footer .cv-footer-brand .brand-text strong,
.cv-footer .cv-footer-brand .brand-text small,
.cv-footer .cv-footer-brand > p,
.cv-footer .cv-footer-col h3,
.cv-footer .cv-footer-col > a,
.cv-footer .cv-footer-contact p,
.cv-footer .cv-footer-contact p i,
.cv-footer .footer-socials a,
.cv-footer .cv-footer-bottom,
.cv-footer .cv-footer-bottom a{
  font-family:"Space Grotesk",sans-serif!important;
}
.cv-footer .cv-footer-brand .brand-text strong{font-size:16px!important;line-height:1.2!important}
.cv-footer .cv-footer-brand .brand-text small{font-size:13px!important;line-height:1.2!important}
.cv-footer .cv-footer-brand > p{font-size:14px!important;line-height:1.6!important}
.cv-footer .cv-footer-col h3{font-size:14px!important;line-height:1.25!important}
.cv-footer .cv-footer-col > a{font-size:14px!important;line-height:1.4!important}
.cv-footer .cv-footer-contact p{font-size:14px!important;line-height:1.5!important}
.cv-footer .cv-footer-contact p i{font-size:14px!important}
.cv-footer .footer-socials a{font-size:14px!important}
.cv-footer .cv-footer-bottom{font-size:13px!important;line-height:1.4!important}
.cv-footer .cv-footer-bottom a{font-size:13px!important;line-height:1.4!important}

@media(max-width:767px){
  .cv-footer .cv-footer-brand .brand-text strong{font-size:16px!important}
  .cv-footer .cv-footer-brand .brand-text small{font-size:13px!important}
  .cv-footer .cv-footer-brand > p{font-size:14px!important}
  .cv-footer .cv-footer-col h3{font-size:14px!important}
  .cv-footer .cv-footer-col > a{font-size:14px!important}
  .cv-footer .cv-footer-contact p{font-size:14px!important}
  .cv-footer .cv-footer-contact p i{font-size:14px!important}
  .cv-footer .cv-footer-bottom,.cv-footer .cv-footer-bottom a{font-size:13px!important}
}

/* ===== END home2.css ===== */

/* =========================================================
   VOLTIVA REPAIR SERVICES — full-width animated 7-section page
   ========================================================= */
.repair-page{overflow-x:hidden;background:var(--bg);color:var(--ink)}
.repair-page main>section{position:relative;isolation:isolate;overflow:hidden}
.repair-page p,.repair-page li,.repair-page label,.repair-page input,.repair-page select,.repair-page button,.repair-page a,.repair-page small,.repair-page span{font-size:max(14px,1em)}
.repair-page .rs-eyebrow,.repair-page .rs-kicker{font-size:14px;letter-spacing:.12em;font-weight:800}
.repair-page h1,.repair-page h2,.repair-page h3{font-family:"Space Grotesk",sans-serif}
.rs-hero{min-height:calc(100vh - 74px);display:flex;align-items:center;background:#F29191;color:#FFFFFF;position:relative}
.rs-hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;will-change:opacity,transform}.rs-hero-broken{background-image:linear-gradient(90deg,rgba(11,8,8,.9),rgba(11,8,8,.45)),url('../images/woman-holding-phone-screen.jpg');opacity:1;animation:rsBrokenFade .5s ease .35s forwards}.rs-hero-fixed{background-image:linear-gradient(90deg,rgba(17,9,9,.88),rgba(17,9,9,.28)),url('../images/green-smartphone-hand.jpg');opacity:0;animation:rsFixedFade .5s ease .35s forwards}.rs-bloom{position:absolute;border-radius:50%;filter:blur(35px);mix-blend-mode:screen;opacity:.38;pointer-events:none}.rs-bloom-a{width:42vw;height:42vw;background:#AD6262;left:45%;top:18%;animation:rsPulse 3.2s ease-in-out infinite}.rs-bloom-b{width:28vw;height:28vw;background:#E69D9D;right:-8%;bottom:-15%;animation:rsPulse 4.2s ease-in-out .4s infinite}.rs-blob{position:absolute;border:1px solid rgba(238,163,163,.25);border-radius:47% 53% 62% 38%/45% 38% 62% 55%;filter:blur(.2px);animation:rsBlob 6s ease-in-out infinite}.rs-blob-a{width:380px;height:260px;right:8%;top:18%;transform:rotate(-18deg)}.rs-blob-b{width:250px;height:170px;left:6%;bottom:8%;animation-delay:1s}.rs-shimmer{position:absolute;inset:-30%;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.1) 49%,transparent 56%);animation:rsShimmer 5s linear infinite;pointer-events:none}.rs-hero-inner{position:relative;z-index:2;padding:100px 0 80px;max-width:900px}.rs-kicker{color:#E7A0A0;margin-bottom:22px}.rs-hero h1{font-size:clamp(52px,8vw,112px);line-height:.9;letter-spacing:-.055em;margin:0 0 30px;max-width:900px}.rs-hero h1 span{color:#E7A0A0}.rs-hero p{font-size:clamp(17px,1.6vw,21px);line-height:1.6;max-width:690px;color:rgba(255,255,255,.82);margin:0 0 34px}.rs-actions{display:flex;gap:12px;flex-wrap:wrap}.rs-glow-btn{box-shadow:0 0 0 rgba(231,160,160,0);animation:rsButtonGlow 2s ease-in-out infinite}.rs-hero-points{display:flex;flex-wrap:wrap;gap:22px;margin-top:32px;color:rgba(255,255,255,.72)}.rs-hero-points i{color:#E7A0A0;margin-right:7px}.rs-hero-scroll{position:absolute;z-index:3;bottom:25px;left:50%;transform:translateX(-50%);font-size:14px;letter-spacing:.1em;color:rgba(255,255,255,.65);display:flex;gap:10px;align-items:center}
.rs-diagnosis{background:#1D1010;color:#FBF2F2;padding:105px 0}.rs-wave{position:absolute;left:-5%;right:-5%;top:-90px;height:190px;background:linear-gradient(90deg,transparent,#814646,transparent);clip-path:polygon(0 40%,12% 18%,25% 48%,38% 25%,52% 58%,66% 30%,80% 55%,92% 22%,100% 45%,100% 0,0 0);opacity:.5;animation:rsSweep 4s linear infinite}.rs-diagnosis-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:80px;align-items:center}.rs-diagnosis-visual{min-height:560px;position:relative;display:grid;place-items:center}.rs-tech-img{width:min(360px,72%);height:460px;object-fit:cover;object-position:center;border-radius:44% 56% 38% 62%/55% 40% 60% 45%;background:#301A1A;filter:grayscale(.05);position:relative;z-index:2;animation:rsFloat 4s ease-in-out infinite}.rs-photo-ring{position:absolute;width:420px;height:420px;border:1px solid rgba(231,160,160,.42);border-radius:50%;animation:rsOrbit 8s linear infinite}.rs-tech-glow{position:absolute;width:320px;height:320px;border-radius:50%;background:#AD6262;filter:blur(65px);opacity:.2;animation:rsPulse 3s ease-in-out infinite}.rs-tech-label{position:absolute;bottom:65px;right:5%;z-index:3;background:#E7A0A0;color:#1D1010;padding:15px 18px;display:flex;gap:14px;align-items:center;clip-path:polygon(0 0,92% 0,100% 30%,100% 100%,8% 100%,0 70%)}.rs-tech-label strong{font:700 26px "Space Grotesk"}.rs-tech-label span{font-weight:800;letter-spacing:.08em}.rs-eyebrow{color:#914E4E}.rs-diagnosis-copy h2,.rs-section-intro h2,.rs-accessory-heading h2,.rs-stats-copy h2,.rs-people-head h2,.rs-booking-copy h2{font-size:clamp(38px,5vw,72px);line-height:.98;letter-spacing:-.045em;margin:12px 0 24px}.rs-diagnosis-copy>p{max-width:650px;color:rgba(251,242,242,.68);font-size:17px;line-height:1.7}.rs-stepper{margin-top:42px;border-left:1px solid rgba(231,160,160,.25);padding-left:30px}.rs-step{display:grid;grid-template-columns:66px 1fr;gap:20px;align-items:center;padding:18px 0;position:relative}.rs-step-icon{width:56px;height:56px;border:1px solid rgba(231,160,160,.45);border-radius:50%;display:grid;place-items:center;color:#E7A0A0;box-shadow:0 0 0 rgba(231,160,160,0);animation:rsIconPulse 2.2s ease-in-out infinite}.rs-step:nth-child(2) .rs-step-icon{animation-delay:.35s}.rs-step:nth-child(3) .rs-step-icon{animation-delay:.7s}.rs-step b{font:600 21px "Space Grotesk"}.rs-step p{margin:5px 0 0;color:rgba(251,242,242,.62);line-height:1.55}
.rs-categories{padding:105px 0 125px;background:var(--bg)}.rs-category-glow{position:absolute;width:500px;height:500px;background:#AD6262;border-radius:50%;filter:blur(120px);opacity:.13;right:-170px;top:15%;animation:rsPulse 5s ease-in-out infinite}.rs-section-intro{max-width:900px;margin-bottom:55px}.rs-section-intro h2{max-width:850px}.rs-category-stage{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;align-items:start}.rs-service-tile{position:relative;overflow:hidden;min-height:390px;background:var(--surface);border-radius:28px;transform-origin:center;transition:transform .45s ease,filter .45s ease;box-shadow:0 15px 45px rgba(0,0,0,.08)}.rs-service-tile:hover{transform:translateY(-10px) rotate(-.4deg);filter:saturate(1.05)}.tile-a{grid-column:span 6;clip-path:polygon(0 5%,5% 0,96% 3%,100% 13%,97% 100%,4% 97%,0 87%)}.tile-b{grid-column:span 3;clip-path:polygon(5% 0,100% 7%,94% 96%,84% 100%,0 93%,3% 15%);margin-top:40px}.tile-c{grid-column:span 3;clip-path:polygon(0 8%,91% 0,100% 14%,96% 94%,15% 100%,0 82%);margin-top:90px}.tile-d{grid-column:4 / span 6;clip-path:polygon(3% 0,98% 5%,100% 90%,92% 100%,0 95%,4% 12%);margin-top:20px}.rs-tile-image{height:235px;overflow:hidden}.rs-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}.rs-service-tile:hover img{transform:scale(1.09);filter:brightness(1.08)}.rs-tile-copy{padding:20px 23px 24px}.rs-tile-copy>span{font-size:14px;color:#834747;font-weight:800}.rs-tile-copy h3{font-size:26px;margin:6px 0}.rs-tile-copy p{color:var(--muted);line-height:1.55;margin:0 0 14px}.rs-tile-copy a{font-weight:800;color:var(--ink);display:inline-flex;gap:9px;align-items:center}
.rs-accessories{padding:110px 0 125px;background:#ECDDDD}.dark .rs-accessories{background:#1F1010}.rs-arc{position:absolute;border:1px solid rgba(112,61,61,.28);border-radius:50%;pointer-events:none}.rs-arc-one{width:780px;height:430px;right:-170px;top:20px;transform:rotate(-9deg);animation:rsArc 8s ease-in-out infinite}.rs-arc-two{width:620px;height:340px;left:-170px;bottom:0;transform:rotate(13deg);animation:rsArc 7s ease-in-out 1s infinite}.rs-accessory-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:48px}.rs-accessory-heading p{font-size:18px;line-height:1.65;color:var(--muted);max-width:520px;margin:0}.rs-masonry{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:280px 220px;gap:15px}.rs-masonry-item{position:relative;margin:0;overflow:hidden;border-radius:24px;background:#2C1818;clip-path:polygon(0 0,100% 3%,97% 100%,3% 96%)}.rs-masonry-main{grid-row:span 2}.rs-masonry-tall{grid-row:span 2;clip-path:polygon(4% 0,100% 5%,94% 97%,0 100%)}.rs-masonry-wide{grid-column:3;clip-path:polygon(0 7%,93% 0,100% 92%,8% 100%)}.rs-masonry-small{clip-path:polygon(6% 0,100% 8%,94% 100%,0 91%)}.rs-masonry-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .6s}.rs-masonry-item:hover img{transform:scale(1.07);filter:brightness(1.08)}.rs-masonry-item figcaption{position:absolute;left:18px;right:18px;bottom:16px;color:#FFFFFF;display:flex;justify-content:space-between;align-items:center;text-shadow:0 2px 12px rgba(0,0,0,.5)}.rs-masonry-item figcaption span{font-weight:800}.rs-masonry-item figcaption strong{font:600 18px "Space Grotesk"}
.rs-stats{padding:110px 0 125px;background:#F29191;color:#FFFFFF}.rs-stats-lines{position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 55px,rgba(231,160,160,.055) 56px 57px);mask-image:linear-gradient(to bottom,transparent,#000000 20%,#000000 80%,transparent);animation:rsLines 7s linear infinite}.rs-stats-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:85px;align-items:center}.rs-stats-copy h2{max-width:600px}.rs-stats-copy p{color:rgba(255,255,255,.68);font-size:17px;line-height:1.7;max-width:570px}.rs-text-link{display:inline-flex;gap:10px;align-items:center;color:#E7A0A0;font-weight:800;margin-top:18px}.rs-dashboard{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}.rs-stat-cell{min-height:220px;padding:25px;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);position:relative;background:rgba(255,255,255,.015);transition:background .35s}.rs-stat-cell:hover{background:rgba(231,160,160,.07)}.rs-stat-cell strong{font:600 clamp(44px,6vw,76px) "Space Grotesk";display:block;color:#E7A0A0;letter-spacing:-.06em}.rs-stat-cell strong::after{content:'+';font-size:.55em}.rs-stat-cell:nth-child(2) strong::after{content:'h'}.rs-stat-cell:nth-child(3) strong::after{content:''}.rs-stat-cell:nth-child(4) strong::after{content:''}.rs-stat-cell span{color:rgba(255,255,255,.65);line-height:1.4}.rs-progress{height:4px;background:rgba(255,255,255,.12);margin-top:30px;overflow:hidden}.rs-progress i{display:block;width:0;height:100%;background:#E7A0A0;box-shadow:0 0 16px #E7A0A0;transition:width 1s ease}
.rs-people{padding:110px 0 125px;background:var(--bg)}.rs-people-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.16;background:#AD6262;animation:rsPulse 4s ease-in-out infinite}.blob-one{width:330px;height:330px;right:-90px;top:80px}.blob-two{width:250px;height:250px;left:-70px;bottom:40px;animation-delay:1s}.rs-people-head{display:grid;grid-template-columns:1fr .65fr;gap:70px;align-items:end;margin-bottom:55px}.rs-people-head p{color:var(--muted);font-size:17px;line-height:1.7;margin:0}.rs-people-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:start}.rs-testimonial-rail{position:relative;min-height:380px}.rs-quote{display:none;position:relative;padding:38px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rs-quote.active{display:block;animation:rsQuoteIn .5s ease}.rs-quote-mark{font:700 82px Georgia;line-height:.6;color:#8C4B4B}.rs-quote p{font:500 clamp(23px,2.5vw,35px)/1.35 "Space Grotesk";letter-spacing:-.025em;max-width:700px;margin:18px 0 35px}.rs-reviewer{display:flex;align-items:center;gap:13px}.rs-avatar{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#E7A0A0;color:#1F1010;font-weight:800}.rs-reviewer strong,.rs-reviewer small{display:block}.rs-reviewer small{color:var(--muted);margin-top:3px}.rs-reviewer>b{margin-left:auto;color:#8E4D4D;letter-spacing:2px}.rs-quote-controls{display:flex;gap:8px;margin-top:20px}.rs-quote-controls button{width:50px;height:44px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.rs-team-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.rs-team-person{min-width:0}.rs-team-photo{height:280px;overflow:hidden;clip-path:polygon(4% 0,100% 5%,96% 100%,0 94%);background:#E7D3D3}.rs-team-photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.rs-team-person:hover .rs-team-photo img{transform:scale(1.08)}.rs-team-person>div:last-child{padding:13px 4px}.rs-team-person span{display:block;font-size:14px;color:#8C4B4B;font-weight:800}.rs-team-person strong{display:block;font:600 19px "Space Grotesk";margin-top:3px}.rs-team-person small{color:var(--muted);display:block;margin-top:3px}
.rs-booking{padding:110px 0 120px;background:#E7A0A0;color:#1D1010}.dark .rs-booking{background:#6A3939;color:#FFFFFF}.rs-booking-wave{position:absolute;left:-10%;right:-10%;top:-70px;height:150px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);clip-path:polygon(0 55%,10% 30%,20% 55%,30% 25%,40% 60%,52% 32%,63% 57%,75% 25%,88% 55%,100% 30%,100% 0,0 0);animation:rsSweep 3.8s linear infinite;opacity:.7}.rs-booking-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.rs-booking-copy h2{max-width:680px}.rs-booking-copy p{font-size:17px;line-height:1.7;max-width:600px;opacity:.72}.rs-booking-notes{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px;font-weight:700}.rs-booking-notes i{margin-right:7px}.rs-form{background:rgba(255,255,255,.25);padding:30px;clip-path:polygon(0 2%,97% 0,100% 96%,4% 100%);backdrop-filter:blur(12px);box-shadow:0 20px 55px rgba(25,14,14,.1)}.dark .rs-form{background:rgba(12,8,8,.35)}.rs-form label{display:block;font-weight:800;margin:0 0 7px}.rs-form input,.rs-form select{width:100%;border:1px solid rgba(29,16,16,.25);background:rgba(255,255,255,.5);color:#1D1010;padding:14px 15px;border-radius:12px;outline:none;margin:0 0 17px;font:500 14px "Inter"}.dark .rs-form input,.dark .rs-form select{background:rgba(255,255,255,.12);color:#FFFFFF;border-color:rgba(255,255,255,.25)}.rs-form input:focus,.rs-form select:focus{box-shadow:0 0 0 4px rgba(105,53,53,.15);border-color:#7A4141}.rs-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rs-submit{width:100%;border:0;background:#1D1010;color:#FFFFFF;padding:16px 18px;border-radius:12px;font-weight:800;cursor:pointer;box-shadow:0 0 0 rgba(29,16,16,0);transition:transform .25s,box-shadow .25s}.rs-submit:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(29,16,16,.2)}.rs-form-status{min-height:20px;margin:12px 0 0;font-weight:700}.rs-form input.rs-error,.rs-form select.rs-error{animation:rsShake .35s;border-color:#B41818}.rs-form-status.ok{color:#5C2828}.rs-form-status.error{color:#A61212}
.rs-reveal-up,.rs-service-tile,.rs-masonry-item,.rs-stat-cell,.rs-team-person,.rs-quote{will-change:transform,opacity}
@keyframes rsBrokenFade{to{opacity:0}}@keyframes rsFixedFade{to{opacity:1}}@keyframes rsPulse{0%,100%{transform:scale(1);opacity:.3}50%{transform:scale(1.13);opacity:.48}}@keyframes rsBlob{0%,100%{border-radius:47% 53% 62% 38%/45% 38% 62% 55%}50%{border-radius:61% 39% 42% 58%/58% 60% 40% 42%}}@keyframes rsShimmer{0%{transform:translateX(-25%) rotate(0)}100%{transform:translateX(25%) rotate(0)}}@keyframes rsButtonGlow{50%{box-shadow:0 0 28px rgba(231,160,160,.32)}}@keyframes rsFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}@keyframes rsOrbit{to{transform:rotate(360deg)}}@keyframes rsSweep{0%{transform:translateX(-35%)}100%{transform:translateX(35%)}}@keyframes rsIconPulse{0%,100%{box-shadow:0 0 0 rgba(231,160,160,0)}50%{box-shadow:0 0 26px rgba(231,160,160,.22)}}@keyframes rsArc{50%{transform:rotate(4deg) translateY(-12px)}}@keyframes rsLines{to{background-position:0 120px}}@keyframes rsQuoteIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes rsShake{25%{transform:translateX(-4px)}50%{transform:translateX(4px)}75%{transform:translateX(-2px)}}
@media (max-width:1100px){.rs-diagnosis-grid,.rs-stats-layout,.rs-booking-layout{gap:45px}.rs-accessory-heading,.rs-people-head{gap:35px}.rs-team-photo{height:230px}}
@media (max-width:900px){.rs-hero{min-height:760px}.rs-hero-inner{padding:80px 0}.rs-diagnosis-grid,.rs-stats-layout,.rs-booking-layout,.rs-people-grid{grid-template-columns:1fr}.rs-diagnosis-visual{min-height:470px}.rs-category-stage{grid-template-columns:1fr 1fr}.tile-a,.tile-b,.tile-c,.tile-d{grid-column:auto;margin-top:0}.tile-a{grid-row:span 2}.rs-accessory-heading,.rs-people-head{grid-template-columns:1fr}.rs-masonry{grid-template-columns:1fr 1fr;grid-template-rows:320px 220px}.rs-masonry-main{grid-row:span 2}.rs-masonry-tall{grid-row:span 2}.rs-masonry-wide{grid-column:auto}.rs-dashboard{margin-top:10px}}
@media (max-width:767px){.rs-hero{min-height:720px}.rs-hero h1{font-size:clamp(46px,14vw,70px)}.rs-hero-points{display:grid;gap:10px}.rs-hero-scroll{display:none}.rs-diagnosis,.rs-categories,.rs-accessories,.rs-stats,.rs-people,.rs-booking{padding:75px 0}.rs-diagnosis-visual{min-height:390px}.rs-tech-img{height:350px;width:270px}.rs-photo-ring{width:320px;height:320px}.rs-tech-label{bottom:25px;right:0}.rs-category-stage,.rs-masonry,.rs-team-strip,.rs-dashboard{grid-template-columns:1fr}.rs-service-tile,.tile-a,.tile-b,.tile-c,.tile-d{grid-column:auto;grid-row:auto;margin:0;min-height:0}.rs-tile-image{height:205px}.rs-masonry{grid-template-rows:280px 240px 220px 220px}.rs-masonry-main,.rs-masonry-tall{grid-row:auto}.rs-masonry-main{grid-column:1}.rs-masonry-tall{grid-column:1}.rs-masonry-small,.rs-masonry-wide{grid-column:1}.rs-stat-cell{min-height:180px}.rs-team-photo{height:280px}.rs-form{padding:22px}.rs-form-row{grid-template-columns:1fr}.rs-actions .btn{width:100%;justify-content:center}.rs-booking-notes{display:grid;gap:12px}}
@media (prefers-reduced-motion:reduce){.repair-page *,.repair-page *::before,.repair-page *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}


/* =========================================================
   REPAIR CATEGORIES V2 — FULL-WIDTH MASKED SERVICE MAP
   Replaces the old staggered card layout: no floating gaps,
   no random offsets, no repeated box geometry.
   ========================================================= */
.rs-categories-v2{
  padding:88px 0 96px;
  background:
    radial-gradient(circle at 84% 18%,rgba(194,96,96,.16),transparent 25%),
    linear-gradient(180deg,#170C0C 0%,#1D1010 52%,#F29191 100%);
  color:#F5EDED;
}
html:not(.dark) .rs-categories-v2{
  background:
    radial-gradient(circle at 82% 20%,rgba(151,63,63,.13),transparent 25%),
    linear-gradient(180deg,#F2E8E8 0%,#EAD9D9 52%,#E6D0D0 100%);
  color:#1E1010;
}
.rs-category-wrap{position:relative;z-index:2}
.rs-category-scan{
  position:absolute;inset:0;pointer-events:none;opacity:.34;
  background:repeating-linear-gradient(105deg,transparent 0 74px,rgba(231,160,160,.045) 75px 76px);
  mask-image:linear-gradient(to bottom,transparent,#000000 16%,#000000 84%,transparent);
}
.rs-category-orb{
  position:absolute;width:430px;height:430px;border:1px solid rgba(231,160,160,.15);
  border-radius:50%;right:-170px;top:220px;
  box-shadow:0 0 90px rgba(194,96,96,.09);
  animation:rsCategoryOrb 8s ease-in-out infinite;
}
.rs-category-top{margin-bottom:38px}
.rs-category-title-row{display:grid;grid-template-columns:1.1fr .65fr;gap:70px;align-items:end}
.rs-category-title-row h2{
  font-size:clamp(42px,5.2vw,74px);line-height:.94;letter-spacing:-.055em;margin:12px 0 0;
}
.rs-category-title-row h2 span{color:#DD8F8F}
html:not(.dark) .rs-category-title-row h2 span{color:#783E3E}
.rs-category-title-row p{
  max-width:500px;margin:0 0 4px;color:rgba(245,237,237,.66);font-size:17px;line-height:1.65;
}
html:not(.dark) .rs-category-title-row p{color:#633535}

.rs-service-map{
  position:relative;display:grid;grid-template-columns:1fr 1fr;
  border-top:1px solid rgba(231,160,160,.22);
  border-left:1px solid rgba(231,160,160,.22);
}
.rs-service-map::before{
  content:"";position:absolute;z-index:8;left:50%;top:0;bottom:0;width:1px;
  background:linear-gradient(to bottom,transparent,#E7A0A0 18%,rgba(231,160,160,.25) 82%,transparent);
  transform:translateX(-50%);pointer-events:none;
}
.rs-service-map::after{
  content:"";position:absolute;z-index:8;left:0;right:0;top:50%;height:1px;
  background:linear-gradient(to right,transparent,#E7A0A0 18%,rgba(231,160,160,.25) 82%,transparent);
  transform:translateY(-50%);pointer-events:none;
}
.rs-mask-service{
  position:relative;min-height:390px;overflow:hidden;background:#201212;
  border-right:1px solid rgba(231,160,160,.16);border-bottom:1px solid rgba(231,160,160,.16);
  isolation:isolate;border-radius:0;box-shadow:none;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .5s ease;
}
html:not(.dark) .rs-mask-service{background:#E0C5C5;border-color:rgba(32,18,18,.14)}
.rs-mask-service:hover{transform:scale(.985);filter:saturate(1.08);z-index:6}
.rs-mask-service .rs-tile-image{position:absolute;inset:0;height:auto;z-index:0;overflow:hidden}
.rs-mask-service .rs-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .8s ease}
.rs-mask-service:hover .rs-tile-image img{transform:scale(1.08);filter:saturate(1.14) contrast(1.04)}

/* Real CSS masking: every service gets a different edge treatment. */
.mask-screen .rs-tile-image{
  mask-image:linear-gradient(to bottom,transparent 0%,#000000 12%,#000000 84%,transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000000 12%,#000000 84%,transparent 100%);
}
.mask-charge .rs-tile-image{
  mask-image:radial-gradient(ellipse 115% 92% at 68% 38%,#000000 0 68%,transparent 83%);
  -webkit-mask-image:radial-gradient(ellipse 115% 92% at 68% 38%,#000000 0 68%,transparent 83%);
}
.mask-camera .rs-tile-image{
  mask-image:linear-gradient(120deg,#000000 0 70%,transparent 90%);
  -webkit-mask-image:linear-gradient(120deg,#000000 0 70%,transparent 90%);
}
.mask-battery .rs-tile-image{
  mask-image:radial-gradient(ellipse 120% 105% at 28% 60%,#000000 0 70%,transparent 88%);
  -webkit-mask-image:radial-gradient(ellipse 120% 105% at 28% 60%,#000000 0 70%,transparent 88%);
}
.rs-tile-shade{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,rgba(10,7,7,.04) 10%,rgba(10,7,7,.28) 40%,rgba(10,7,7,.94) 100%);
}
.mask-charge .rs-tile-shade{background:linear-gradient(180deg,rgba(10,7,7,.05),rgba(10,7,7,.16) 35%,rgba(10,7,7,.93))}
.mask-camera .rs-tile-shade{background:linear-gradient(120deg,rgba(10,7,7,.08),rgba(10,7,7,.25) 40%,rgba(10,7,7,.94) 100%)}
.rs-mask-number{
  position:absolute;z-index:4;top:22px;left:24px;font:700 14px "Space Grotesk";letter-spacing:.15em;
  color:#E7A0A0;padding-bottom:7px;border-bottom:1px solid rgba(231,160,160,.45);
}
.rs-tile-copy{position:absolute;z-index:4;left:26px;right:26px;bottom:24px;padding:0}
.rs-tile-copy>span{font-size:12px!important;letter-spacing:.14em;color:#DD8F8F;font-weight:800}
.rs-tile-copy h3{font-size:clamp(27px,3vw,42px);line-height:1;margin:7px 0 10px;color:#FFFFFF}
.rs-tile-copy p{max-width:560px;color:rgba(255,255,255,.78);line-height:1.55;margin:0 0 14px}
.rs-tile-copy a{display:inline-flex;align-items:center;gap:9px;color:#FFFFFF;font-weight:800;border-bottom:1px solid rgba(231,160,160,.45);padding-bottom:5px}
.rs-mask-line{
  position:absolute;z-index:5;width:110px;height:1px;background:#E7A0A0;right:25px;top:31px;
  transform-origin:right;transform:scaleX(.45);opacity:.55;transition:transform .5s ease,opacity .5s ease;
}
.rs-mask-service:hover .rs-mask-line{transform:scaleX(1);opacity:1}
html:not(.dark) .rs-mask-service .rs-tile-copy h3{color:#FFFFFF}

/* Each quadrant has its own masked silhouette / visual rhythm. */
.mask-screen{clip-path:polygon(0 0,97% 0,100% 8%,100% 100%,3% 100%,0 92%)}
.mask-charge{clip-path:polygon(3% 0,100% 0,100% 91%,94% 100%,0 100%,0 8%)}
.mask-camera{clip-path:polygon(0 4%,94% 0,100% 9%,100% 100%,0 100%)}
.mask-battery{clip-path:polygon(0 0,100% 0,100% 94%,96% 100%,3% 100%,0 90%)}
.mask-charge .rs-tile-copy{right:42px}
.mask-camera .rs-tile-copy{left:32px;max-width:610px}
.mask-battery .rs-tile-copy{left:34px}

@keyframes rsCategoryOrb{0%,100%{transform:translate3d(0,0,0) rotate(0deg)}50%{transform:translate3d(-28px,18px,0) rotate(8deg)}}

@media (max-width:900px){
  .rs-categories-v2{padding:72px 0 80px}
  .rs-category-title-row{grid-template-columns:1fr;gap:16px}
  .rs-category-title-row p{max-width:650px}
  .rs-service-map{grid-template-columns:1fr}
  .rs-service-map::before{display:none}
  .rs-service-map::after{top:50%}
  .rs-mask-service{min-height:420px}
}
@media (max-width:767px){
  .rs-categories-v2{padding:62px 0 70px}
  .rs-category-top{margin-bottom:28px}
  .rs-category-title-row h2{font-size:clamp(39px,11vw,58px)}
  .rs-category-title-row p{font-size:15px}
  .rs-service-map{display:block;border-left:0}
  .rs-service-map::after{display:none}
  .rs-mask-service{min-height:390px;border-right:0}
  .rs-mask-service + .rs-mask-service{margin-top:0}
  .rs-tile-copy{left:20px!important;right:20px!important;bottom:20px}
  .rs-tile-copy h3{font-size:31px}
  .rs-tile-copy p{font-size:14px}
  .rs-mask-number{left:20px;top:18px}
  .rs-mask-line{right:20px;top:27px;width:70px}
}
@media (prefers-reduced-motion:reduce){.rs-category-orb{animation:none!important}}

/* =========================================================
   REPAIR SECTIONS 01 + 02 V3 — editorial repair lab / scan timeline
   ========================================================= */
.rs-hero-v3{min-height:calc(100vh - 74px);background:#130A0A;color:#FAF3F3;overflow:hidden!important}
.hero-v3-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(231,160,160,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(231,160,160,.055) 1px,transparent 1px);background-size:76px 76px;mask-image:linear-gradient(to right,transparent,#000000 18%,#000000 82%,transparent);opacity:.45}
.hero-v3-glow{position:absolute;border-radius:50%;filter:blur(90px);pointer-events:none}.hero-v3-glow-one{width:480px;height:480px;right:5%;top:12%;background:#A75B5B;opacity:.22;animation:rsPulse 4s ease-in-out infinite}.hero-v3-glow-two{width:260px;height:260px;left:18%;bottom:-100px;background:#E7A0A0;opacity:.12;animation:rsPulse 5s ease-in-out 1s infinite}
.hero-v3-orbit{position:absolute;border:1px solid rgba(231,160,160,.2);border-radius:50%;pointer-events:none}.orbit-one{width:680px;height:680px;right:-150px;top:5%;animation:rsOrbit 18s linear infinite}.orbit-two{width:470px;height:470px;right:-45px;top:20%;border-style:dashed;animation:rsOrbit 11s linear reverse infinite}
.hero-v3-layout{position:relative;z-index:2;min-height:calc(100vh - 74px);display:grid;grid-template-columns:.86fr 1.14fr;gap:55px;align-items:center;padding:70px 0 55px}.hero-v3-copy{max-width:690px}.hero-v3-kicker{display:flex;gap:10px;align-items:center;color:#E7A0A0;margin-bottom:24px}.hero-v3-kicker span{display:inline-grid;place-items:center;width:31px;height:31px;border:1px solid rgba(231,160,160,.5);border-radius:50%}.rs-hero-v3 h1{font-size:clamp(64px,8vw,116px);line-height:.84;letter-spacing:-.065em;margin:0 0 30px;max-width:700px}.rs-hero-v3 h1 em{font-style:normal;color:#BE8585}.rs-hero-v3 h1 strong{color:#F7ECEC}.rs-hero-v3 p{font-size:18px;line-height:1.7;max-width:590px;color:rgba(255,255,255,.68);margin:0 0 30px}.hero-v3-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.hero-v3-textlink{color:#F8F0F0;font-weight:800;display:inline-flex;align-items:center;gap:9px}.hero-v3-textlink i{color:#E7A0A0}.hero-v3-micro{display:flex;gap:24px;margin-top:42px;color:rgba(255,255,255,.48);font-size:14px!important}.hero-v3-micro b{color:#E7A0A0;margin-right:6px}
.hero-v3-stage{height:620px;position:relative;display:flex;align-items:center;justify-content:center}.hero-v3-backdrop{position:absolute;width:76%;height:82%;background:linear-gradient(135deg,rgba(231,160,160,.13),rgba(255,255,255,.025));clip-path:polygon(8% 0,100% 8%,94% 100%,0 91%);border:1px solid rgba(231,160,160,.18)}.hero-v3-phone{position:absolute;width:43%;height:76%;overflow:hidden;background:#1D1010;box-shadow:0 25px 80px rgba(0,0,0,.42);will-change:transform}.hero-v3-phone-before{left:7%;top:10%;clip-path:polygon(0 8%,88% 0,100% 14%,92% 94%,9% 100%,0 80%);transform:rotate(-7deg)}.hero-v3-phone-after{right:7%;bottom:8%;clip-path:polygon(8% 0,100% 7%,95% 91%,84% 100%,0 92%,3% 13%);transform:rotate(6deg)}.hero-v3-photo,.hero-v3-photo img{width:100%;height:100%}.hero-v3-photo img{object-fit:cover;display:block;filter:saturate(.9);transition:transform 1s ease}.hero-v3-phone:hover img{transform:scale(1.08)}.hero-v3-phone-before .hero-v3-photo img{filter:grayscale(.35) contrast(1.08) brightness(.75)}.hero-v3-phone-after .hero-v3-photo img{filter:saturate(1.1) contrast(1.04)}.hero-v3-tag{position:absolute;z-index:3;top:18px;left:18px;display:flex;flex-direction:column;gap:3px;font:800 14px "Space Grotesk";letter-spacing:.1em;color:#FFFFFF;text-shadow:0 2px 10px #000000}.hero-v3-tag span{font-size:11px;color:#E7A0A0}.hero-v3-scan{position:absolute;z-index:2;left:0;right:0;height:2px;background:#E7A0A0;box-shadow:0 0 20px #E7A0A0;top:20%;animation:heroScan 2.8s ease-in-out infinite}.hero-v3-shine{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 44%,rgba(255,255,255,.35) 49%,transparent 54%);animation:heroShine 4s linear infinite}.hero-v3-arrow{position:absolute;z-index:6;width:65px;height:65px;border:1px solid rgba(231,160,160,.5);border-radius:50%;display:grid;place-items:center;background:#160C0C;color:#E7A0A0;box-shadow:0 0 35px rgba(231,160,160,.2);animation:rsFloat 3s ease-in-out infinite}.hero-v3-status{position:absolute;z-index:7;bottom:9%;right:2%;display:flex;align-items:center;gap:10px;padding:12px 16px;background:#E7A0A0;color:#170C0C;clip-path:polygon(0 0,96% 0,100% 22%,100% 100%,5% 100%,0 76%);font-weight:800;box-shadow:0 12px 35px rgba(0,0,0,.25)}.hero-v3-status i{font-size:18px}.hero-v3-status b{margin-left:5px}.hero-v3-bottom{position:absolute;z-index:3;bottom:20px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.48);font-size:12px!important;letter-spacing:.16em}.hero-v3-bottom i{color:#E7A0A0;animation:rsFloat 1.7s ease-in-out infinite}
@keyframes heroScan{0%{top:15%;opacity:0}15%{opacity:1}50%{top:82%;opacity:1}85%{opacity:0}100%{top:15%;opacity:0}}@keyframes heroShine{0%{transform:translateX(-35%) rotate(0)}100%{transform:translateX(35%) rotate(0)}}

.rs-diagnosis-v3{padding:115px 0 105px;background:#201111;color:#F9F1F1;overflow:hidden!important}.diag-v3-grid{position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 48%,rgba(231,160,160,.035) 48.1% 48.3%,transparent 48.4%),repeating-linear-gradient(90deg,transparent 0 110px,rgba(231,160,160,.035) 111px 112px);mask-image:linear-gradient(to bottom,transparent,#000000 20%,#000000 80%,transparent)}.diag-v3-scan{position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#E7A0A0,transparent);box-shadow:0 0 22px rgba(231,160,160,.55);opacity:.45;animation:diagScan 6s linear infinite}.diag-v3-head{display:grid;grid-template-columns:.9fr 1.5fr .75fr;gap:35px;align-items:end;position:relative;z-index:2;margin-bottom:75px}.diag-v3-head .rs-eyebrow{color:#BD7979}.diag-v3-head h2{font-size:clamp(48px,6vw,82px);line-height:.9;letter-spacing:-.055em;margin:0}.diag-v3-head h2 span{color:#BD7979}.diag-v3-head p{color:rgba(249,241,241,.56);line-height:1.7;margin:0}.diag-v3-track{position:relative;z-index:2;display:grid;gap:0}.diag-v3-line{position:absolute;left:31px;top:0;bottom:0;width:1px;background:linear-gradient(to bottom,transparent,rgba(231,160,160,.5) 12%,rgba(231,160,160,.5) 88%,transparent)}.diag-v3-line i{position:absolute;left:-3px;top:0;width:7px;height:100px;background:#E7A0A0;box-shadow:0 0 20px #E7A0A0;animation:diagLineMove 4.5s linear infinite}.diag-v3-step{display:grid;grid-template-columns:64px minmax(0,1fr) 255px;gap:35px;align-items:center;padding:35px 0;position:relative;border-top:1px solid rgba(255,255,255,.08)}.diag-v3-step:last-child{border-bottom:1px solid rgba(255,255,255,.08)}.diag-v3-marker{width:64px;height:64px;border-radius:50%;border:1px solid rgba(231,160,160,.5);background:#201111;display:grid;place-items:center;position:relative;z-index:2;color:#E7A0A0;box-shadow:0 0 0 rgba(231,160,160,0);transition:.35s}.diag-v3-step:hover .diag-v3-marker{background:#E7A0A0;color:#201111;box-shadow:0 0 35px rgba(231,160,160,.25)}.diag-v3-marker span{position:absolute;top:-8px;right:-11px;font:700 11px "Space Grotesk";background:#201111;padding:3px 5px;color:#BD7979}.diag-v3-content>span{font-size:12px!important;letter-spacing:.14em;color:#A05656;font-weight:800}.diag-v3-content h3{font-size:clamp(30px,3vw,44px);margin:7px 0 8px;letter-spacing:-.04em}.diag-v3-content p{color:rgba(249,241,241,.6);line-height:1.65;max-width:650px;margin:0}.diag-v3-chip{display:inline-flex;margin-top:14px;padding:6px 10px;border:1px solid rgba(231,160,160,.2);color:#BD7979;font-size:11px!important;letter-spacing:.08em}.diag-v3-mini-image{height:150px;overflow:hidden;clip-path:polygon(7% 0,100% 7%,94% 100%,0 91%);position:relative}.diag-v3-mini-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.diag-v3-step:hover .diag-v3-mini-image img{transform:scale(1.1)}.diag-v3-footer{position:relative;z-index:2;margin-top:40px;display:flex;align-items:center;gap:14px;color:rgba(249,241,241,.48);font-size:14px!important}.diag-v3-footer strong{color:#E7A0A0;font-size:13px!important;letter-spacing:.1em}.diag-v3-footer a{margin-left:auto;color:#F9F1F1;font-weight:800}.diag-v3-pulse{width:9px;height:9px;border-radius:50%;background:#E7A0A0;box-shadow:0 0 0 0 rgba(231,160,160,.4);animation:diagPulse 1.8s infinite}@keyframes diagScan{0%{top:8%;opacity:0}20%{opacity:.5}50%{top:92%;opacity:.5}80%{opacity:0}100%{top:8%;opacity:0}}@keyframes diagLineMove{0%{top:0}100%{top:calc(100% - 100px)}}@keyframes diagPulse{70%{box-shadow:0 0 0 12px rgba(231,160,160,0)}100%{box-shadow:0 0 0 0 rgba(231,160,160,0)}}

@media(max-width:1100px){.hero-v3-layout{grid-template-columns:.9fr 1.1fr;gap:20px}.hero-v3-stage{height:560px}.hero-v3-phone{height:72%}.diag-v3-head{grid-template-columns:.7fr 1.3fr;}.diag-v3-head p{grid-column:2}.diag-v3-step{grid-template-columns:64px 1fr 210px}}
@media(max-width:900px){.hero-v3-layout{grid-template-columns:1fr;padding-top:55px}.hero-v3-copy{max-width:760px}.hero-v3-stage{height:520px;margin-top:-10px}.hero-v3-phone{width:36%;height:78%}.hero-v3-phone-before{left:16%}.hero-v3-phone-after{right:16%}.diag-v3-head{grid-template-columns:1fr;gap:18px;margin-bottom:50px}.diag-v3-head p{grid-column:auto;max-width:650px}.diag-v3-step{grid-template-columns:64px 1fr}.diag-v3-mini-image{display:none}}
@media(max-width:767px){.rs-hero-v3{min-height:auto}.hero-v3-layout{min-height:auto;padding:65px 0 85px}.rs-hero-v3 h1{font-size:clamp(56px,16vw,76px)}.hero-v3-micro{gap:12px;flex-wrap:wrap;margin-top:28px}.hero-v3-stage{height:420px;margin-top:15px}.hero-v3-backdrop{width:95%;height:86%}.hero-v3-phone{width:43%;height:76%}.hero-v3-phone-before{left:4%;top:11%}.hero-v3-phone-after{right:4%;bottom:7%}.hero-v3-arrow{width:48px;height:48px}.hero-v3-status{right:0;bottom:0;padding:9px 11px}.hero-v3-status span{font-size:10px!important}.hero-v3-status b{font-size:11px!important}.hero-v3-bottom{display:none}.rs-diagnosis-v3{padding:80px 0}.diag-v3-head h2{font-size:clamp(45px,13vw,64px)}.diag-v3-step{grid-template-columns:52px 1fr;gap:20px;padding:30px 0}.diag-v3-marker{width:52px;height:52px}.diag-v3-line{left:25px}.diag-v3-content h3{font-size:31px}.diag-v3-footer{display:grid;grid-template-columns:auto 1fr;gap:10px}.diag-v3-footer a{margin-left:0;grid-column:1/-1;margin-top:8px}.hero-v3-glow-one{width:300px;height:300px}.orbit-one{width:430px;height:430px;right:-180px}}


/* ===== VOLTIVA BRANDS PAGE — 8 ADVANCED SECTIONS ===== */
.brands-page{overflow-x:hidden;background:#120A0A;color:#F6EFEF}.brands-page main{position:relative}.br-sec{position:relative;min-height:100vh;overflow:hidden}.br-sec p,.br-sec span,.br-sec label,.br-sec input,.br-sec button{font-size:max(14px,1em)}
.br-kicker,.br-section-head>span,.gallery-head>span,.story-content>span,.liquid-content>span,.stats-head>span,.test-head>span,.portal-box>span{display:block;font:700 13px/1.2 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#CF5858}.br-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:120px 8vw 70px;background:radial-gradient(circle at 76% 48%,rgba(205,60,60,.2),transparent 28%),linear-gradient(125deg,#0F0808,#241313 60%,#110909)}.br-rays{position:absolute;inset:-30%;background:repeating-conic-gradient(from 10deg,transparent 0 5deg,rgba(222,91,91,.035) 6deg 7deg,transparent 8deg 13deg);animation:rayspin 22s linear infinite}.br-particles{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(237,123,123,.65) 0 1px,transparent 2px);background-size:85px 85px;opacity:.18;animation:particleDrift 14s linear infinite}.br-hero-copy{position:relative;z-index:2;max-width:680px}.br-hero h1{font:700 clamp(54px,7vw,104px)/.91 'Space Grotesk',sans-serif;letter-spacing:-.055em;margin:22px 0 30px}.br-hero h1 em,.br-story em{font-style:normal;color:#E76A6A}.br-hero-copy p{max-width:560px;color:#D3ACAC;line-height:1.75}.br-cta{display:inline-flex;gap:12px;align-items:center;margin-top:28px;padding:14px 20px;border-radius:14px;background:#DF6363;color:#160C0C;text-decoration:none;font-weight:800}.cube-wrap{position:relative;height:540px;display:grid;place-items:center;perspective:1200px;z-index:2}.brand-cube{width:260px;height:260px;position:relative;transform-style:preserve-3d;animation:cubeHeroSpin 14s linear infinite}.cube-face{position:absolute;width:260px;height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border:1px solid rgba(239,113,113,.55);background:linear-gradient(145deg,rgba(52,28,28,.92),rgba(12,8,8,.88));box-shadow:inset 0 0 35px rgba(226,83,83,.08),0 0 30px rgba(217,67,67,.12);backface-visibility:hidden}.cube-face b{font:700 58px/1 'Space Grotesk'}.cube-face span{letter-spacing:.16em;font-size:13px;color:#D5B0B0}.cube-front{transform:translateZ(130px)}.cube-back{transform:rotateY(180deg) translateZ(130px)}.cube-right{transform:rotateY(90deg) translateZ(130px)}.cube-left{transform:rotateY(-90deg) translateZ(130px)}.cube-top{transform:rotateX(90deg) translateZ(130px)}.cube-bottom{transform:rotateX(-90deg) translateZ(130px)}.cube-orbit{position:absolute;border:1px solid rgba(230,92,92,.35);border-radius:50%;width:410px;height:160px;transform:rotate(-20deg);animation:orbit 7s linear infinite}.orbit-two{width:500px;height:220px;transform:rotate(55deg);animation-duration:11s}.cube-label{position:absolute;bottom:35px;right:4%;font:700 11px/1.35 Inter;letter-spacing:.14em;color:#AC6565;text-align:right}
.br-marquee{padding:115px 0 70px;background:#190E0E;display:flex;flex-direction:column;justify-content:center}.br-section-head{padding:0 8vw;position:relative;z-index:2}.br-section-head h2,.gallery-head h2,.stats-head h2,.test-head h2{font:700 clamp(38px,5vw,72px)/.95 'Space Grotesk';letter-spacing:-.04em;margin:18px 0 55px}.marquee-mask{overflow:hidden;width:100%;mask-image:linear-gradient(90deg,transparent,#000000 9%,#000000 91%,transparent)}.brand-marquee-track{display:flex;width:max-content;gap:18px;animation:marquee 28s linear infinite}.marquee-mask:hover .brand-marquee-track{animation-play-state:paused}.brand-logo{width:190px;height:150px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(228,103,103,.17);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015));transition:.45s;box-shadow:0 0 0 rgba(228,96,96,0)}.brand-logo:hover{transform:translateY(-12px) scale(1.07);border-color:rgba(235,103,103,.7);box-shadow:0 0 40px rgba(225,85,85,.2)}.brand-logo b{font:700 37px 'Space Grotesk';color:#F2D9D9}.brand-logo span{font-size:15px;color:#C59393}.marquee-line{height:1px;background:linear-gradient(90deg,transparent,#E46363,transparent);margin-top:44px}
.br-story{min-height:120vh;background:#180D0D}.story-sky,.story-mid,.story-front{position:absolute;inset:-12%;background-position:center;background-size:cover}.story-sky{background-image:linear-gradient(rgba(18,10,10,.18),rgba(18,10,10,.78)),url('../images/smartphone-in-tropical-setting.jpg');opacity:.3;transform:scale(1.15)}.story-mid{background-image:linear-gradient(90deg,rgba(16,8,8,.9),rgba(16,8,8,.1)),url('../images/phone-case-display-wall.jpg');opacity:.18;transform:scale(1.08)}.story-front{background:radial-gradient(circle at 70% 40%,transparent 0 16%,rgba(17,9,9,.2) 30%,#180D0D 74%);z-index:1}.story-content{position:relative;z-index:3;padding:145px 8vw 70px;max-width:720px}.story-content h2{font:700 clamp(44px,6vw,86px)/.92 'Space Grotesk';letter-spacing:-.055em;margin:18px 0 25px}.story-content p{max-width:620px;line-height:1.8;color:#D4AEAE}.story-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.story-tags span{padding:10px 14px;border:1px solid rgba(230,99,99,.25);background:rgba(255,255,255,.04);border-radius:100px}.story-images{position:relative;z-index:4;display:flex;gap:24px;margin:-10px 8vw 0 auto;width:min(900px,75%);align-items:end}.story-images figure{margin:0;width:33%;transform:translateY(0);transition:.5s}.story-images figure:nth-child(2){transform:translateY(-70px)}.story-images figure:nth-child(3){transform:translateY(-130px)}.story-images figure:hover{transform:translateY(-145px) scale(1.03)}.story-images img{width:100%;height:330px;object-fit:cover;clip-path:polygon(9% 0,100% 6%,92% 100%,0 94%);filter:saturate(.9)}.story-images figcaption{margin-top:12px;color:#C89A9A;font-size:13px}
.br-cube-gallery{background:radial-gradient(circle at 50% 55%,rgba(213,65,65,.15),transparent 25%),#110909;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;padding:100px 8vw}.gallery-head{position:relative;z-index:2}.product-cube-stage{height:600px;display:grid;place-items:center;perspective:1300px;position:relative}.product-cube{width:330px;height:330px;position:relative;transform-style:preserve-3d;transform:rotateX(-12deg) rotateY(30deg);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.pc-face{position:absolute;width:330px;height:330px;overflow:hidden;border:1px solid rgba(234,104,104,.5);background:#180D0D;backface-visibility:hidden}.pc-face img{width:100%;height:100%;object-fit:cover;filter:brightness(.7);transition:.7s}.pc-face span{position:absolute;bottom:20px;left:20px;right:20px;font-weight:800;font-size:15px;padding-top:10px;border-top:2px solid #E56868;text-shadow:0 2px 10px #000000}.pc-front{transform:translateZ(165px)}.pc-back{transform:rotateY(180deg) translateZ(165px)}.pc-right{transform:rotateY(90deg) translateZ(165px)}.pc-left{transform:rotateY(-90deg) translateZ(165px)}.pc-top{transform:rotateX(90deg) translateZ(165px)}.pc-bottom{transform:rotateX(-90deg) translateZ(165px)}.cube-blob{position:absolute;width:360px;height:360px;border-radius:50%;background:rgba(225,79,79,.14);filter:blur(55px);animation:blobPulse 4s ease-in-out infinite}.cube-spin{position:absolute;bottom:25px;padding:12px 17px;border:1px solid rgba(233,104,104,.4);background:rgba(255,255,255,.04);color:#EDDCDC;border-radius:12px;cursor:pointer}
.br-liquid{min-height:90vh;display:grid;place-items:center;background:#1F1111}.liquid-svg{position:absolute;inset:0;width:100%;height:100%;opacity:.95}.liquid-a{fill:#9D3636;animation:liquidMove 9s ease-in-out infinite alternate}.liquid-b{fill:#E45E5E;animation:liquidBlob 8s ease-in-out infinite alternate}.liquid-c{fill:#682E2E;animation:liquidBlob 10s ease-in-out infinite alternate-reverse}.liquid-content{position:relative;z-index:2;text-align:center;max-width:750px;padding:80px 30px}.liquid-content h2{font:700 clamp(50px,8vw,110px)/.9 'Space Grotesk';letter-spacing:-.06em;margin:20px 0}.liquid-content p{color:#DFC4C4;line-height:1.8}.liquid-icons{display:flex;justify-content:center;gap:16px;margin-top:36px}.liquid-icons i{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(244,187,187,.4);background:rgba(255,255,255,.08);font-size:22px;animation:iconBloom 3s ease-in-out infinite}.liquid-icons i:nth-child(2){animation-delay:.2s}.liquid-icons i:nth-child(3){animation-delay:.4s}.liquid-icons i:nth-child(4){animation-delay:.6s}
.br-stats{padding:120px 8vw;background:#140A0A;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:7vw}.stats-bg{position:absolute;inset:0;background:radial-gradient(circle at 75% 45%,rgba(229,98,98,.15),transparent 35%),linear-gradient(115deg,transparent 30%,rgba(255,255,255,.025) 30.2%,transparent 30.5%);background-size:auto,130px 100%}.glass-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;position:relative;z-index:2}.glass-stats article{min-height:210px;padding:28px;border:1px solid rgba(237,185,185,.17);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.025));backdrop-filter:blur(16px);box-shadow:0 24px 80px rgba(0,0,0,.22);transform:rotateX(4deg) rotateY(-3deg);transition:.5s}.glass-stats article:hover{transform:translateY(-12px) rotateX(0) rotateY(0);border-color:rgba(233,102,102,.55)}.glass-stats strong{display:block;font:700 clamp(45px,6vw,75px)/1 'Space Grotesk';color:#EF7C7C}.glass-stats span{display:block;color:#CDA3A3;margin-top:10px}.progress{height:4px;background:rgba(255,255,255,.1);margin-top:48px;overflow:hidden}.progress i{display:block;height:100%;width:0;background:#E46767;box-shadow:0 0 16px #E46767}
.br-testimonials{min-height:85vh;padding:120px 0;background:#180D0D;display:flex;flex-direction:column;justify-content:center}.ray-field{position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 90px,rgba(229,102,102,.035) 91px 93px,transparent 94px 180px);animation:rayMove 12s linear infinite}.test-head{padding:0 8vw;position:relative;z-index:2}.test-rail{display:flex;width:max-content;gap:20px;position:relative;z-index:2;animation:testScroll 32s linear infinite}.br-testimonials:hover .test-rail{animation-play-state:paused}.test-item{width:440px;min-height:230px;padding:28px;display:grid;grid-template-columns:58px 1fr;gap:18px;border:1px solid rgba(236,178,178,.15);background:rgba(255,255,255,.055);backdrop-filter:blur(12px);transition:.5s}.test-item:hover{border-color:#E76C6C;box-shadow:0 0 35px rgba(226,88,88,.15);transform:translateY(-10px)}.avatar{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#E56868;color:#190D0D;font:800 22px 'Space Grotesk';animation:avatarTilt 4s ease-in-out infinite}.test-item p{font-size:16px;line-height:1.65;color:#E2C9C9;margin:0}.test-item strong{display:block;margin-top:24px;color:#C99C9C;font-size:13px}
.br-portal{min-height:105vh;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(226,91,91,.18),transparent 28%),#100808}.portal-particles{position:absolute;inset:0;background-image:radial-gradient(circle,#EE8A8A 0 1px,transparent 2px);background-size:65px 65px;opacity:.14;animation:particleDrift 10s linear infinite}.portal-ring{position:absolute;border:1px solid rgba(233,103,103,.2);border-radius:50%;animation:portalSpin 18s linear infinite}.ring-a{width:700px;height:700px}.ring-b{width:920px;height:300px;transform:rotate(28deg);animation-duration:25s}.portal-box{position:relative;z-index:3;width:min(850px,88%);padding:55px;background:rgba(23,13,13,.82);border:1px solid rgba(237,154,154,.25);box-shadow:0 0 80px rgba(216,68,68,.12);backdrop-filter:blur(20px);clip-path:polygon(3% 0,100% 0,97% 100%,0 95%)}.portal-box h2{font:700 clamp(48px,7vw,92px)/.9 'Space Grotesk';letter-spacing:-.055em;margin:18px 0}.portal-box p{max-width:620px;color:#D2ABAB;line-height:1.7}.portal-box form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.portal-box label{display:flex;flex-direction:column;gap:8px;color:#DBBBBB;font-weight:700}.portal-box input{padding:15px 16px;background:rgba(255,255,255,.055);border:1px solid rgba(235,151,151,.18);color:#FFFFFF;outline:none;border-radius:10px;transition:.3s}.portal-box input:focus{border-color:#E66A6A;box-shadow:0 0 0 4px rgba(230,106,106,.1),0 0 30px rgba(230,106,106,.13)}.portal-box button{grid-column:1/-1;padding:17px;border:0;border-radius:12px;background:#E66A6A;color:#170C0C;font-weight:900;cursor:pointer;box-shadow:0 0 0 rgba(230,106,106,0);animation:ctaPulse 2.8s ease-in-out infinite}.portal-status{grid-column:1/-1;min-height:20px;color:#E87979}
@keyframes cubeHeroSpin{0%{transform:rotateX(-12deg) rotateY(-35deg)}100%{transform:rotateX(348deg) rotateY(325deg)}}@keyframes rayspin{to{transform:rotate(360deg)}}@keyframes particleDrift{to{background-position:85px 170px}}@keyframes orbit{to{transform:rotate(340deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes blobPulse{50%{transform:scale(1.18);opacity:.8}}@keyframes liquidMove{to{transform:translate(-30px,-30px) scale(1.04)}}@keyframes liquidBlob{to{transform:translate(70px,-40px) scale(1.25)}}@keyframes iconBloom{50%{transform:translateY(-9px) scale(1.08);box-shadow:0 0 28px rgba(236,126,126,.18)}}@keyframes rayMove{to{background-position:180px 0}}@keyframes testScroll{to{transform:translateX(-50%)}}@keyframes avatarTilt{50%{transform:rotate(7deg) translateY(-3px)}}@keyframes portalSpin{to{transform:rotate(360deg)}}@keyframes ctaPulse{50%{box-shadow:0 0 35px rgba(230,106,106,.24);transform:translateY(-2px)}}
@media(max-width:1050px){.br-hero{grid-template-columns:1fr;padding-top:105px}.cube-wrap{height:470px}.br-cube-gallery,.br-stats{grid-template-columns:1fr}.gallery-head,.stats-head{margin-bottom:20px}.story-images{width:90%}.story-images img{height:260px}}
@media(max-width:767px){.br-sec{min-height:auto}.br-hero{padding:105px 6vw 55px}.br-hero h1{font-size:56px}.cube-wrap{height:390px;transform:scale(.8)}.br-section-head,.test-head{padding:70px 6vw 0}.br-section-head h2,.gallery-head h2,.stats-head h2,.test-head h2{font-size:46px;margin-bottom:35px}.brand-logo{width:155px;height:125px}.br-story{min-height:1050px}.story-content{padding:90px 6vw 30px}.story-images{width:100%;margin:20px 0 0;padding:0 6vw;gap:10px}.story-images figure:nth-child(2),.story-images figure:nth-child(3){transform:none}.story-images img{height:230px}.br-cube-gallery{padding:80px 6vw}.product-cube-stage{height:470px;transform:scale(.72)}.br-liquid{min-height:680px}.liquid-content h2{font-size:58px}.br-stats{padding:80px 6vw}.glass-stats{grid-template-columns:1fr}.glass-stats article{min-height:180px}.br-testimonials{min-height:680px}.test-rail{margin-top:20px}.test-item{width:310px;min-height:250px}.portal-box{padding:35px 24px;width:88%}.portal-box form{grid-template-columns:1fr}.portal-box button{grid-column:1}.ring-a{width:450px;height:450px}.ring-b{width:600px;height:230px}}
@media(prefers-reduced-motion:reduce){.brand-cube,.brand-marquee-track,.test-rail,.br-rays,.br-particles,.cube-orbit,.liquid-a,.liquid-b,.liquid-c,.liquid-icons i,.ray-field,.avatar,.portal-particles,.portal-ring,.portal-box button{animation:none!important}.story-images figure{transform:none!important}}
html.light .brands-page{background:#F5EDED;color:#1F1111}.light .br-hero{background:radial-gradient(circle at 76% 48%,rgba(164,43,43,.16),transparent 28%),linear-gradient(125deg,#F2E8E8,#E9D6D6 60%,#F2E7E7)}.light .br-hero-copy p,.light .story-content p,.light .liquid-content p,.light .portal-box p{color:#693939}.light .br-marquee,.light .br-cube-gallery,.light .br-testimonials,.light .br-portal,.light .br-stats{background:#F2E8E8}.light .brand-logo,.light .test-item,.light .glass-stats article,.light .portal-box{background:rgba(255,255,255,.62);border-color:rgba(91,49,49,.18)}.light .brand-logo b,.light .test-item p{color:#2D1818}.light .brand-logo span,.light .test-item strong,.light .glass-stats span{color:#774040}.light .cube-face,.light .pc-face{background:#EBDBDB;color:#231313}.light .portal-box input{color:#231313;background:rgba(255,255,255,.8);border-color:rgba(80,43,43,.22)}

/* ===== BRANDS 03-08 COMPLETE RESTRUCTURE ===== */
.brands-page .br-sec{position:relative;overflow:hidden;color:#F2E8E8}
.brands-page .br-sec p,.brands-page .br-sec li,.brands-page .br-sec span,.brands-page .br-sec strong{font-size:max(14px,1em)}
.br-join-section{isolation:isolate}
.br-join-section::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(232,104,104,.08);z-index:20}
/* 03 */
.br-story.br-join-section{min-height:92vh;display:grid;place-items:center;background:#120909}
.join-bg{position:absolute;inset:0;z-index:-3}.join-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) contrast(1.08);opacity:.38;transform:scale(1.08)}
.join-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0E0707 5%,rgba(14,7,7,.78) 42%,rgba(14,7,7,.3) 100%),linear-gradient(0deg,#0E0707 0%,transparent 35%,#0E0707 100%);z-index:-2}
.join-panel{position:absolute;background:rgba(24,13,13,.9);border:1px solid rgba(229,106,106,.22);box-shadow:0 25px 70px rgba(0,0,0,.3);backdrop-filter:blur(15px);padding:25px;z-index:4;transition:.7s cubic-bezier(.2,.8,.2,1)}
.join-panel span,.liquid-side>span,.ecosystem-head>span,.impact-copy>span,.stories-intro>span,.portal-left>span{color:#E86A6A;font-weight:800;letter-spacing:.16em;font-size:12px}.join-panel h2{font:700 clamp(38px,5vw,72px)/.95 'Space Grotesk';margin:12px 0}.join-panel em,.ecosystem-head em,.impact-copy em,.stories-intro em,.portal-left em{color:#E86A6A;font-style:normal}.jp-top{top:9%;left:8%;width:min(620px,48%);transform:translate(-80px,-80px)}.jp-left{left:8%;bottom:13%;width:250px;transform:translate(-110px,80px)}.jp-right{right:8%;top:28%;width:260px;transform:translate(110px,0)}.jp-bottom{right:8%;bottom:10%;width:min(390px,30%);transform:translate(100px,90px)}.join-center{width:210px;height:210px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(233,103,103,.24),rgba(23,12,12,.92) 60%);border:1px solid rgba(232,105,105,.55);box-shadow:0 0 70px rgba(225,74,74,.18);z-index:6;text-align:center}.join-center span{font:800 62px 'Space Grotesk';color:#EF8383}.join-center small{position:absolute;margin-top:125px;font-size:11px;letter-spacing:.2em;color:#CEA4A4}.center-pulse{position:absolute;width:255px;height:255px;border:1px solid rgba(232,105,105,.25);border-radius:50%;animation:brandPulse 3s ease-in-out infinite}.join-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.join-chips span{padding:7px 10px;border:1px solid rgba(232,106,106,.2);border-radius:20px;color:#E7D3D3!important;letter-spacing:0!important;font-size:11px!important}
/* 04 — image-led ecosystem redesign: no transparent panels */
.brand-ecosystem-v2{min-height:94vh;background:#0C0707;padding:88px 8vw 72px;display:grid;grid-template-columns:minmax(340px,.82fr) minmax(500px,1.18fr);align-items:center;gap:48px;isolation:isolate}
.brand-ecosystem-v2 .eco-v2-bg{position:absolute;inset:0;z-index:-4;overflow:hidden}
.brand-ecosystem-v2 .eco-v2-bg img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) brightness(.35);transform:scale(1.05)}
.brand-ecosystem-v2 .eco-v2-shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,#0C0707 0%,rgba(12,7,7,.96) 34%,rgba(12,7,7,.72) 58%,rgba(12,7,7,.45) 100%)}
.brand-ecosystem-v2 .eco-v2-glow{position:absolute;border-radius:50%;filter:blur(30px);pointer-events:none;z-index:-2;background:rgba(232,100,100,.15)}
.brand-ecosystem-v2 .eco-v2-glow-a{width:320px;height:320px;right:16%;top:18%}
.brand-ecosystem-v2 .eco-v2-glow-b{width:220px;height:220px;left:38%;bottom:8%;opacity:.55}
.eco-v2-content{position:relative;z-index:5;max-width:540px}
.eco-v2-kicker{display:block;font:800 14px/1.2 Inter,sans-serif;letter-spacing:.16em;color:#ED5E5E;text-transform:uppercase}
.eco-v2-content h2{font:700 clamp(38px,4.8vw,66px)/.98 'Space Grotesk';margin:16px 0 20px;color:#F4EBEB;letter-spacing:-.035em}
.eco-v2-content h2 em{font-style:normal;color:#ED5E5E}
.eco-v2-content p{max-width:510px;color:#E0C4C4;line-height:1.75;margin:0;font-size:16px!important}
.eco-v2-highlights{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:25px 0 8px}
.eco-v2-highlights span{color:#EBD9D9;font-size:14px!important;letter-spacing:.02em}
.eco-v2-highlights b{color:#ED5E5E;margin-right:8px}
.brand-ecosystem-v2 .br-cta{margin-top:22px}
.eco-v2-visual{position:relative;min-height:620px;z-index:4}
.eco-v2-image{position:absolute;overflow:hidden;will-change:transform}
.eco-v2-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.eco-v2-image:hover img{transform:scale(1.08);filter:saturate(1.12) contrast(1.05)}
.eco-v2-image-main{width:min(420px,52%);aspect-ratio:1/1.15;left:28%;top:12%;clip-path:polygon(12% 0,100% 8%,91% 100%,0 89%);box-shadow:0 0 90px rgba(230,93,93,.2);border:1px solid rgba(232,104,104,.55)}
.eco-v2-image-small{width:210px;height:245px;right:0;bottom:7%;clip-path:polygon(8% 0,100% 12%,92% 100%,0 88%);border:1px solid rgba(232,104,104,.4);opacity:.9}
.eco-v2-orbit{position:absolute;border:1px solid rgba(232,104,104,.26);border-radius:50%;pointer-events:none;left:52%;top:50%;transform:translate(-50%,-50%);animation:ecoV2Spin 18s linear infinite}
.eco-v2-orbit-one{width:520px;height:520px}
.eco-v2-orbit-two{width:690px;height:290px;transform:translate(-50%,-50%) rotate(28deg);animation-duration:25s}
.eco-v2-brand{position:absolute;z-index:8;color:#F3E8E8;font:800 18px 'Space Grotesk';letter-spacing:.04em;line-height:1.2;display:flex;flex-direction:column;gap:5px;text-shadow:0 3px 20px #000000}
.eco-v2-brand small{font:500 14px Inter,sans-serif;color:#D2ABAB;letter-spacing:0}
.eco-v2-apple{left:5%;top:9%}.eco-v2-samsung{right:3%;top:35%}.eco-v2-oneplus{left:9%;bottom:15%}.eco-v2-xiaomi{right:15%;bottom:4%}
.eco-v2-bottom{position:absolute;left:8vw;right:8vw;bottom:22px;display:flex;align-items:center;gap:18px;color:#C69696;font-size:14px!important;letter-spacing:.08em;z-index:6}.eco-v2-bottom i{width:36px;height:1px;background:#ED5E5E;opacity:.55}
@keyframes ecoV2Spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(max-width:1050px){.brand-ecosystem-v2{grid-template-columns:1fr;min-height:auto;padding:90px 7vw 105px}.eco-v2-content{max-width:720px}.eco-v2-visual{min-height:600px;width:100%;max-width:760px;margin:auto}.eco-v2-image-main{left:29%;width:320px}.eco-v2-image-small{right:5%;width:190px;height:215px}.eco-v2-apple{left:3%}.eco-v2-samsung{right:0}.eco-v2-bottom{left:7vw;right:7vw}}
@media(max-width:767px){.brand-ecosystem-v2{padding:72px 6vw 88px;display:block}.brand-ecosystem-v2 .eco-v2-shade{background:linear-gradient(180deg,#0C0707 0%,rgba(12,7,7,.9) 55%,rgba(12,7,7,.65) 100%)}.eco-v2-content h2{font-size:40px;line-height:1.02}.eco-v2-content p{font-size:15px!important;line-height:1.65}.eco-v2-highlights{grid-template-columns:1fr;gap:9px}.eco-v2-visual{min-height:560px;margin-top:28px}.eco-v2-image-main{width:230px;height:270px;left:50%;top:14%;transform:translateX(-50%)}.eco-v2-image-small{width:135px;height:165px;right:2%;bottom:8%}.eco-v2-orbit-one{width:360px;height:360px}.eco-v2-orbit-two{width:470px;height:190px}.eco-v2-brand{font-size:15px}.eco-v2-brand small{font-size:13px}.eco-v2-apple{left:0;top:7%}.eco-v2-samsung{right:0;top:38%}.eco-v2-oneplus{left:2%;bottom:20%}.eco-v2-xiaomi{right:8%;bottom:1%}.eco-v2-bottom{position:relative;left:auto;right:auto;bottom:auto;margin-top:18px;flex-wrap:wrap;gap:10px 14px;font-size:14px!important}.eco-v2-bottom i{display:none}}

/* 05 */
.liquid-redesign{min-height:88vh;display:grid;grid-template-columns:1fr 300px 1fr;align-items:center;gap:5vw;padding:100px 8vw;background:#190D0D}.liquid-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(232,105,105,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(232,105,105,.035) 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(to bottom,transparent,#000000 18%,#000000 82%,transparent)}.liquid-blob{position:absolute;border-radius:48% 52% 65% 35%;filter:blur(5px);opacity:.55}.blob-one{width:390px;height:300px;background:#993B3B;left:-80px;top:20%;animation:liquidFloat 8s ease-in-out infinite}.blob-two{width:420px;height:330px;background:#E86666;right:-130px;bottom:5%;animation:liquidFloat 10s ease-in-out infinite reverse}.blob-three{width:260px;height:260px;background:#552C2C;left:48%;top:15%;animation:liquidFloat 7s ease-in-out infinite}.liquid-side{position:relative;z-index:4}.liquid-side h2{font:700 clamp(43px,5vw,72px)/.95 'Space Grotesk';margin:14px 0}.liquid-side p{color:#D2ACAC;line-height:1.75;max-width:470px}.liquid-side h3{font:700 27px 'Space Grotesk';margin:0 0 20px}.liquid-side ul{list-style:none;padding:0;margin:0 0 24px}.liquid-side li{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.1);color:#E3CACA}.liquid-side li i{color:#E86A6A;margin-right:10px}.text-link{color:#EB8C8C;text-decoration:none;font-weight:800;font-size:14px}.liquid-center{position:relative;z-index:6;display:grid;place-items:center}.liquid-ring{width:230px;height:230px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(233,102,102,.6);background:radial-gradient(circle,rgba(233,102,102,.2),rgba(17,9,9,.85) 60%);box-shadow:0 0 80px rgba(227,76,76,.2)}.liquid-ring::before,.liquid-ring::after{content:"";position:absolute;border:1px solid rgba(233,102,102,.2);border-radius:50%;animation:brandPulse 4s ease-in-out infinite}.liquid-ring::before{width:280px;height:280px}.liquid-ring::after{width:340px;height:170px;transform:rotate(35deg)}.liquid-ring i{font-size:55px;color:#EF8686}.liquid-mini{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:30px}.liquid-mini span{font-size:10px!important;letter-spacing:.1em;color:#C59494;padding:7px 9px;border:1px solid rgba(233,102,102,.18);border-radius:20px}
/* 06 */
.stats-redesign{min-height:92vh;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:5vw;padding:100px 8vw;background:#0F0808}.stats-glow{position:absolute;inset:0;background:radial-gradient(circle at 70% 50%,rgba(229,92,92,.2),transparent 32%)}.stats-lines{position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 120px,rgba(232,104,104,.025) 121px 123px,transparent 124px 240px)}.impact-copy{position:relative;z-index:8}.impact-copy h2{font:700 clamp(44px,5vw,70px)/.95 'Space Grotesk';margin:14px 0}.impact-copy p{max-width:430px;color:#D1A9A9;line-height:1.75}.impact-note{display:flex;align-items:center;gap:12px;margin-top:25px;color:#E1C6C6}.impact-note i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(232,102,102,.12);color:#E86A6A}.impact-stage{height:520px;position:relative;z-index:7}.impact-card{position:absolute;width:230px;min-height:180px;padding:24px;background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.025));border:1px solid rgba(232,170,170,.18);backdrop-filter:blur(18px);box-shadow:0 20px 60px rgba(0,0,0,.3);transition:.7s}.impact-card small{font-size:10px!important;letter-spacing:.12em;color:#BD8585}.impact-card strong{display:block;font:700 54px 'Space Grotesk';color:#EF8383;margin:12px 0 2px}.impact-card span{color:#CFA6A6;font-size:12px!important}.impact-bar{height:4px;background:rgba(255,255,255,.08);margin-top:25px}.impact-bar i{display:block;width:0;height:100%;background:#E86A6A;box-shadow:0 0 15px #E86A6A}.ic-tl{left:5%;top:4%;transform:translate(-90px,-70px)}.ic-tr{right:2%;top:12%;transform:translate(90px,-50px)}.ic-bl{left:8%;bottom:3%;transform:translate(-90px,70px)}.ic-br{right:0;bottom:10%;transform:translate(90px,70px)}.impact-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:145px;height:145px;border-radius:50%;display:grid;place-items:center;background:#1C0F0F;border:1px solid #E86A6A;box-shadow:0 0 70px rgba(232,104,104,.25);z-index:10;text-align:center}.impact-core span{font:800 46px 'Space Grotesk';color:#EF7E7E}.impact-core small{position:absolute;top:110px;width:150px;color:#BC8282;font-size:9px!important;letter-spacing:.15em;text-align:center}
/* 07 */
.testimonials-redesign{min-height:86vh;padding:95px 0;background:#150B0B;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:4vw}.testimonial-bg{position:absolute;inset:0;background:radial-gradient(circle at 75% 45%,rgba(232,103,103,.13),transparent 32%),url('../images/phone-and-coffee-lifestyle.jpg') center/cover no-repeat;opacity:.12}.test-rays{position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 35%,rgba(232,104,104,.035) 36%,transparent 37% 63%,rgba(232,104,104,.025) 64%,transparent 65%)}.stories-intro{padding-left:8vw;position:relative;z-index:6}.stories-intro h2{font:700 clamp(42px,5vw,68px)/.95 'Space Grotesk';margin:14px 0}.stories-intro p{max-width:420px;color:#D0A8A8;line-height:1.75}.stories-window{overflow:hidden;position:relative;z-index:6}.story-rail{display:flex;gap:18px;width:max-content;animation:storyMarquee 28s linear infinite}.stories-window:hover .story-rail{animation-play-state:paused}.story-card{width:300px;min-height:300px;padding:25px;background:rgba(27,15,15,.88);border:1px solid rgba(232,171,171,.16);backdrop-filter:blur(15px);box-shadow:0 25px 70px rgba(0,0,0,.25);transition:.5s}.story-card:hover{transform:translateY(-12px) rotate(-1deg);border-color:#E86A6A}.story-avatar{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#E86A6A;color:#180D0D;font:800 20px 'Space Grotesk';float:left;margin-right:14px}.stars{color:#ED7C7C;letter-spacing:2px;padding-top:17px}.story-card p{clear:both;padding-top:35px;color:#E4CDCD;line-height:1.7;font-size:15px!important}.story-card strong{display:block;margin-top:25px}.story-card span{display:block;color:#AF6B6B;font-size:11px!important;margin-top:4px}.story-bottom{position:absolute;left:8vw;right:8vw;bottom:25px;display:flex;justify-content:space-between;color:#A85D5D;font-size:11px;letter-spacing:.1em;z-index:6}
/* 08 */
.portal-redesign{min-height:95vh;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:6vw;padding:100px 8vw;background:#0E0707}.portal-field{position:absolute;inset:0;background-image:radial-gradient(circle,#F08383 0 1px,transparent 2px);background-size:70px 70px;opacity:.11;animation:particleDrift 12s linear infinite}.portal-orbit{position:absolute;border:1px solid rgba(232,104,104,.14);border-radius:50%;left:73%;top:50%;transform:translate(-50%,-50%)}.po-one{width:500px;height:500px;animation:ecoSpin 22s linear infinite}.po-two{width:720px;height:260px;transform:translate(-50%,-50%) rotate(30deg);animation:ecoSpin 27s linear infinite reverse}.po-three{width:850px;height:400px;transform:translate(-50%,-50%) rotate(-18deg);animation:ecoSpin 35s linear infinite}.portal-left{position:relative;z-index:8}.portal-left h2{font:700 clamp(46px,5.5vw,76px)/.93 'Space Grotesk';margin:15px 0}.portal-left p{max-width:450px;color:#D1A9A9;line-height:1.75}.portal-links{display:grid;gap:11px;margin-top:26px}.portal-links span{font-size:13px!important;color:#DEC1C1}.portal-links i{color:#E86A6A;margin-right:10px}.portal-form-wrap{position:relative;z-index:9;width:min(590px,100%);padding:30px;background:rgba(26,14,14,.9);border:1px solid rgba(232,171,171,.2);box-shadow:0 30px 90px rgba(0,0,0,.4);clip-path:polygon(3% 0,100% 0,97% 100%,0 96%)}.portal-form-top{display:flex;justify-content:space-between;color:#BC8383;font-size:10px;letter-spacing:.14em;margin-bottom:20px}.portal-form-wrap form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.portal-form-wrap label{display:flex;flex-direction:column;gap:7px;color:#DDBFBF;font-weight:700;font-size:12px!important}.portal-form-wrap input,.portal-form-wrap select{padding:14px;border:1px solid rgba(232,170,170,.16);background:rgba(255,255,255,.045);color:#F6EEEE;border-radius:10px;outline:none}.portal-form-wrap select option{background:#1D0F0F;color:#FFFFFF}.portal-form-wrap input:focus,.portal-form-wrap select:focus{border-color:#E86A6A;box-shadow:0 0 0 4px rgba(230,106,106,.08),0 0 30px rgba(230,106,106,.1)}.portal-form-wrap button{grid-column:1/-1;border:0;border-radius:11px;padding:15px;background:#E86A6A;color:#170D0D;font-weight:900;cursor:pointer;box-shadow:0 0 0 rgba(232,106,106,0);animation:ctaPulse 2.6s ease-in-out infinite}.portal-status{grid-column:1/-1;min-height:20px;color:#E86A6A;font-size:13px!important}.portal-foot{position:absolute;bottom:22px;left:8vw;right:8vw;display:flex;gap:28px;color:#975151;font-size:10px;letter-spacing:.1em;z-index:6}
@keyframes brandPulse{0%,100%{transform:scale(.96);opacity:.45}50%{transform:scale(1.05);opacity:1}}@keyframes ecoSpin{to{rotate:360deg}}@keyframes liquidFloat{50%{translate:35px -25px;scale:1.08}}@keyframes storyMarquee{to{transform:translateX(-50%)}}
@media(max-width:1050px){.br-story.br-join-section{min-height:1000px}.jp-top{width:60%}.jp-right{right:5%}.jp-bottom{width:40%}.brand-ecosystem{grid-template-columns:1fr;min-height:900px}.ecosystem-head{max-width:600px}.eco-core{left:68%;top:58%}.eco-north{left:61%}.eco-east{right:2%}.eco-south{left:60%}.eco-west{left:45%}.liquid-redesign{grid-template-columns:1fr 260px 1fr;gap:20px}.stats-redesign{grid-template-columns:1fr}.impact-copy{max-width:600px}.impact-stage{max-width:720px;width:100%;margin:auto}.portal-redesign{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.join-panel{position:relative!important;transform:none!important;inset:auto!important;width:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important}.br-story.br-join-section{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;padding:90px 6vw}.join-center{order:0;margin:25px auto}.jp-top{order:1}.jp-left{order:2}.jp-right{order:3}.jp-bottom{order:4}.join-panel h2{font-size:38px}.brand-ecosystem{display:block;padding:85px 6vw 120px;min-height:1000px}.ecosystem-head{max-width:none}.eco-core{left:50%;top:62%;width:180px;height:180px}.eco-orbit-a{width:340px;height:340px;left:50%;top:62%}.eco-orbit-b{width:440px;height:180px;left:50%;top:62%}.eco-panel{width:145px;padding:13px}.eco-panel b{font-size:15px}.eco-north{left:8%;top:43%}.eco-east{right:2%;top:53%}.eco-south{left:9%;bottom:14%}.eco-west{left:auto;right:2%;top:72%}.eco-footer{left:6vw;right:6vw;bottom:28px;gap:12px;flex-wrap:wrap}.liquid-redesign{display:flex;flex-direction:column;padding:85px 6vw;min-height:980px}.liquid-side{width:100%}.liquid-center{order:2;margin:25px 0}.ls-right{order:3}.liquid-ring{width:190px;height:190px}.liquid-mini{margin-top:22px}.stats-redesign{display:flex;flex-direction:column;padding:85px 6vw}.impact-stage{height:690px}.impact-card{width:155px;min-height:160px;padding:17px}.impact-card strong{font-size:40px}.ic-tl{left:0;top:4%}.ic-tr{right:0;top:17%}.ic-bl{left:0;bottom:5%}.ic-br{right:0;bottom:17%}.impact-core{width:120px;height:120px}.impact-core span{font-size:38px}.testimonials-redesign{display:block;padding:85px 0 90px}.stories-intro{padding:0 6vw}.stories-window{margin-top:35px}.story-card{width:275px}.story-bottom{left:6vw;right:6vw;bottom:22px;gap:10px;flex-wrap:wrap}.portal-redesign{display:flex;flex-direction:column;padding:85px 6vw 90px;align-items:stretch}.portal-form-wrap{width:100%;padding:25px 20px}.portal-form-wrap form{grid-template-columns:1fr}.portal-form-wrap button{grid-column:1}.portal-foot{left:6vw;right:6vw;gap:15px;flex-wrap:wrap}.portal-orbit{left:50%;top:55%}}
@media(prefers-reduced-motion:reduce){.center-pulse,.eco-orbit,.liquid-blob,.story-rail,.portal-field,.portal-orbit,.portal-form-wrap button{animation:none!important}}
html.light .brands-page .br-story,html.light .brands-page .brand-ecosystem,html.light .brands-page .liquid-redesign,html.light .brands-page .stats-redesign,html.light .brands-page .testimonials-redesign,html.light .brands-page .portal-redesign{color:#251414}
html.light .brands-page .join-panel,html.light .brands-page .eco-panel,html.light .brands-page .impact-card,html.light .brands-page .story-card,html.light .brands-page .portal-form-wrap{background:rgba(247,239,239,.93);border-color:rgba(83,44,44,.2);color:#281515}
html.light .brands-page .join-panel p,html.light .brands-page .ecosystem-head p,html.light .brands-page .liquid-side p,html.light .brands-page .impact-copy p,html.light .brands-page .stories-intro p,html.light .brands-page .portal-left p{color:#6A3939}
html.light .brands-page .eco-panel span,html.light .brands-page .impact-card span,html.light .brands-page .story-card span{color:#7D4343}
html.light .brands-page .portal-form-wrap input,html.light .brands-page .portal-form-wrap select{background:#FFFFFF;color:#241313;border-color:rgba(83,44,44,.24)}
html.light .brands-page .portal-form-wrap select option{background:#FFFFFF;color:#241313}
html.light .brands-page .liquid-redesign{background:#EFE2E2}.light .brands-page .stats-redesign{background:#EEE0E0}.light .brands-page .testimonials-redesign{background:#F0E2E2}.light .brands-page .portal-redesign{background:#FBEFEF}


/* ===== BRANDS 01-02 FINAL RESTRUCTURE ===== */
.brands-page .br1x,.brands-page .br2x{min-height:0;position:relative;overflow:hidden}
.br1x{min-height:calc(100vh - 78px)!important;background:#120909;color:#F6EDED;isolation:isolate}
.br1x-bg{position:absolute;inset:0;z-index:-4}.br1x-bg img{width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.7) contrast(1.05)}
.br1x-overlay{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(9,5,5,.96) 0%,rgba(12,7,7,.88) 42%,rgba(12,7,7,.5) 68%,rgba(12,7,7,.78) 100%),linear-gradient(180deg,rgba(9,5,5,.35),rgba(9,5,5,.72))}
.br1x-noise{position:absolute;inset:0;z-index:-2;opacity:.12;background-image:radial-gradient(rgba(255,255,255,.6) .6px,transparent .7px);background-size:5px 5px;mix-blend-mode:screen}
.br1x-content{width:min(1260px,calc(100% - 56px));min-height:calc(100vh - 78px);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:30px;padding:58px 0}
.br1x-copy{max-width:620px;position:relative;z-index:5}.br1x-kicker{display:inline-flex;align-items:center;gap:10px;color:#EB6262;font-size:12px!important;font-weight:800;letter-spacing:.18em}.br1x-kicker:before{content:"";width:34px;height:2px;background:#EB6262}
.br1x h1{font:700 clamp(42px,5.1vw,72px)/.96 "Space Grotesk";letter-spacing:-.055em;margin:18px 0 20px}.br1x h1 em{font-style:normal;color:#EB6262;text-decoration:none}.br1x-copy>p{font-size:17px!important;line-height:1.75;color:rgba(246,237,237,.74);max-width:590px;margin:0}
.br1x-points{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.br1x-points span{padding:10px 13px;border:1px solid rgba(235,98,98,.22);background:rgba(17,9,9,.48);backdrop-filter:blur(12px);font-size:13px!important;color:#D8B6B6}.br1x-points b{color:#EB6262;margin-right:4px}.br1x-cta{display:inline-flex;align-items:center;gap:10px;padding:14px 19px;border-radius:12px;background:#EB6262;color:#170C0C;font-weight:800;font-size:14px!important;transition:.3s}.br1x-cta:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(235,98,98,.22)}
.br1x-stage{height:590px;position:relative;display:grid;place-items:center}.br1x-halo{position:absolute;width:370px;height:370px;border-radius:50%;background:rgba(227,68,68,.28);filter:blur(55px);animation:br1Halo 4.5s ease-in-out infinite}.br1x-ring{position:absolute;border:1px solid rgba(235,98,98,.42);border-radius:50%;transform-style:preserve-3d}.ring-a{width:510px;height:220px;transform:rotate(-18deg) rotateX(62deg);animation:br1Orbit 9s linear infinite}.ring-b{width:420px;height:420px;transform:rotate(38deg) rotateY(68deg);animation:br1Orbit2 12s linear infinite}.ring-c{width:560px;height:300px;transform:rotate(72deg) rotateX(64deg);opacity:.5;animation:br1Orbit 14s linear infinite reverse}
.br1x-cube-wrap{width:270px;height:270px;perspective:1100px;position:relative;z-index:3}.br1x-cube-wrap:after{content:"";position:absolute;left:12%;right:12%;bottom:-45px;height:35px;background:rgba(0,0,0,.5);filter:blur(18px);border-radius:50%}.br1x .brand-cube{width:220px;height:220px;position:absolute;left:25px;top:25px;transform:rotateX(-16deg) rotateY(-32deg);animation:br1Cube 12s linear infinite;transform-style:preserve-3d}.br1x .cube-face{width:220px;height:220px;position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border:1px solid rgba(235,98,98,.58);background:linear-gradient(145deg,#241414,#0E0707);color:#F5E6E6;box-shadow:inset 0 0 35px rgba(235,98,98,.06),0 0 25px rgba(235,98,98,.08);backface-visibility:hidden}.br1x .cube-face b{font:700 47px "Space Grotesk"}.br1x .cube-face span{font-size:12px!important;letter-spacing:.16em;color:#EB6262}.br1x .cube-front{transform:translateZ(110px)}.br1x .cube-back{transform:rotateY(180deg) translateZ(110px)}.br1x .cube-right{transform:rotateY(90deg) translateZ(110px)}.br1x .cube-left{transform:rotateY(-90deg) translateZ(110px)}.br1x .cube-top{transform:rotateX(90deg) translateZ(110px)}.br1x .cube-bottom{transform:rotateX(-90deg) translateZ(110px)}
.br1x-satellite{position:absolute;z-index:5;padding:8px 11px;border:1px solid rgba(235,98,98,.28);background:rgba(10,5,5,.65);backdrop-filter:blur(10px);color:#E8D1D1;font:700 10px "Space Grotesk";letter-spacing:.12em;box-shadow:0 0 18px rgba(235,98,98,.08);animation:br1Float 4s ease-in-out infinite}.sat-a{top:12%;left:18%}.sat-b{top:22%;right:9%;animation-delay:-1s}.sat-c{bottom:22%;left:8%;animation-delay:-2s}.sat-d{bottom:12%;right:17%;animation-delay:-3s}.sat-e{top:48%;left:2%;animation-delay:-1.5s}.sat-f{top:58%;right:1%;animation-delay:-2.5s}.br1x-stage-label{position:absolute;right:3%;bottom:4%;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.br1x-stage-label small{font-size:10px!important;letter-spacing:.2em;color:#C28D8D}.br1x-stage-label strong{font:700 17px/1.05 "Space Grotesk";color:#EB6262;letter-spacing:.08em}
@keyframes br1Cube{to{transform:rotateX(-16deg) rotateY(328deg)}}@keyframes br1Orbit{to{transform:rotate(342deg) rotateX(62deg)}}@keyframes br1Orbit2{to{transform:rotate(398deg) rotateY(68deg)}}@keyframes br1Halo{50%{transform:scale(1.12);opacity:.75}}@keyframes br1Float{50%{transform:translateY(-9px) rotate(2deg)}}
.br2x{background:#140A0A;color:#F4EBEB;padding:0!important}.br2x:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,rgba(230,72,72,.13),transparent 34%),linear-gradient(180deg,#140A0A,#190E0E);z-index:0}.br2x-top,.br2x-rail-shell,.br2x-bottom{position:relative;z-index:1}.br2x-top{width:min(1260px,calc(100% - 56px));margin:auto;padding:62px 0 30px;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:end}.br2x-top>div span{font-size:11px!important;color:#EB6262;letter-spacing:.18em;font-weight:800}.br2x-top h2{font:700 clamp(36px,4.5vw,60px)/.98 "Space Grotesk";letter-spacing:-.045em;margin:13px 0 0}.br2x-top h2 em{font-style:normal;color:#EB6262}.br2x-top p{font-size:16px!important;line-height:1.7;color:#BE8787;max-width:480px;margin:0 0 3px}
.br2x-rail-shell{width:100%;overflow:hidden;border-top:1px solid rgba(235,98,98,.18);border-bottom:1px solid rgba(235,98,98,.18);position:relative;padding:20px 0}.br2x-rail-shell:before,.br2x-rail-shell:after{content:"";position:absolute;top:0;bottom:0;width:12%;z-index:3;pointer-events:none}.br2x-rail-shell:before{left:0;background:linear-gradient(90deg,#140A0A,transparent)}.br2x-rail-shell:after{right:0;background:linear-gradient(-90deg,#140A0A,transparent)}.br2x-glow{position:absolute;left:50%;top:50%;width:42%;height:90px;transform:translate(-50%,-50%);background:rgba(232,76,76,.11);filter:blur(45px)}.br2x-track{display:flex;width:max-content;gap:12px;animation:br2Rail 30s linear infinite}.br2x-rail-shell:hover .br2x-track{animation-play-state:paused}.br2x-logo{width:205px;height:155px;flex:none;padding:20px 21px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(235,98,98,.18);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.018));position:relative;transition:.35s}.br2x-logo:before{content:"";position:absolute;left:0;top:0;width:3px;height:0;background:#EB6262;transition:.35s}.br2x-logo:hover{transform:translateY(-10px) scale(1.035);border-color:rgba(235,98,98,.65);box-shadow:0 20px 45px rgba(0,0,0,.28),0 0 35px rgba(235,98,98,.1)}.br2x-logo:hover:before{height:100%}.br2x-logo b{font:700 38px "Space Grotesk";color:#F5E9E9}.br2x-logo span{font:700 15px "Space Grotesk";letter-spacing:.1em}.br2x-logo small{font-size:10px!important;letter-spacing:.16em;color:#B47575}.br2x-bottom{width:min(1260px,calc(100% - 56px));margin:auto;padding:22px 0 28px;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:18px;color:#AE6969;font-size:11px!important;letter-spacing:.1em}.br2x-bottom span:first-child{color:#EB6262}.br2x-bottom i{font-size:6px}.br2x-bottom a{justify-self:end;color:#E9D5D5;font-weight:800;font-size:12px!important;letter-spacing:0}.br2x-bottom a i{font-size:12px;margin-left:5px}@keyframes br2Rail{to{transform:translateX(calc(-50% - 6px))}}
@media(max-width:1023px){.br1x-content{grid-template-columns:1fr;min-height:auto;padding:70px 0 60px}.br1x-copy{text-align:center;margin:auto}.br1x-points{justify-content:center}.br1x-stage{height:520px}.br1x-stage-label{right:8%}.br2x-top{grid-template-columns:1fr;gap:15px;padding-top:55px}.br2x-bottom{grid-template-columns:1fr 1fr}.br2x-bottom a{justify-self:start}}
@media(max-width:767px){.br1x-content,.br2x-top,.br2x-bottom{width:calc(100% - 28px)}.br1x-content{padding:52px 0 35px}.br1x h1{font-size:43px}.br1x-copy>p{font-size:14px!important}.br1x-points span{font-size:12px!important}.br1x-stage{height:410px;margin-top:0}.br1x-cube-wrap{transform:scale(.72)}.br1x-ring.ring-a{width:350px;height:150px}.br1x-ring.ring-b{width:300px;height:300px}.br1x-ring.ring-c{width:390px;height:210px}.br1x-satellite{font-size:8px;padding:6px 8px}.sat-a{left:1%;top:12%}.sat-b{right:1%;top:19%}.sat-c{left:1%;bottom:20%}.sat-d{right:1%;bottom:13%}.sat-e{left:0;top:48%}.sat-f{right:0;top:55%}.br1x-stage-label{bottom:0;right:2%}.br1x-stage-label strong{font-size:13px}.br2x-top{padding:46px 0 22px}.br2x-top h2{font-size:39px}.br2x-top p{font-size:14px!important}.br2x-rail-shell{padding:14px 0}.br2x-logo{width:160px;height:125px;padding:15px}.br2x-logo b{font-size:29px}.br2x-logo span{font-size:12px}.br2x-logo small{font-size:8px!important}.br2x-bottom{grid-template-columns:1fr 1fr;padding:18px 0 22px;gap:12px}.br2x-bottom span,.br2x-bottom a{font-size:9px!important}.br2x-bottom a{grid-column:1/-1}}
html.light .br1x{color:#F7EFEF}html.light .br1x-overlay{background:linear-gradient(90deg,rgba(21,12,12,.92),rgba(29,16,16,.75) 48%,rgba(25,13,13,.6)),linear-gradient(180deg,rgba(14,7,7,.25),rgba(14,7,7,.62))}html.light .br1x-bg img{filter:saturate(.78) brightness(.75) contrast(1.06)}html.light .br1x-copy>p{color:rgba(248,240,240,.82)}html.light .br2x{background:#241414;color:#F5E9E9}html.light .br2x:before{background:radial-gradient(circle at 50% 48%,rgba(230,72,72,.16),transparent 34%),linear-gradient(180deg,#241414,#1D0F0F)}html.light .br2x-logo{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035))}


/* === BRANDS FINAL RESPONSIVE / READABILITY PATCH === */
.brands-page .br-sec *{box-sizing:border-box}
.brands-page .br-sec p,
.brands-page .br-sec li,
.brands-page .br-sec label,
.brands-page .br-sec input,
.brands-page .br-sec select,
.brands-page .br-sec button,
.brands-page .br-sec a,
.brands-page .br-sec small,
.brands-page .br-sec span{font-size:max(14px,1em)}
.brands-page .br2x-top>div span,
.brands-page .br2x-logo small,
.brands-page .br2x-bottom{font-size:14px!important}
.brands-page .br2x{min-height:auto!important;padding:0!important}
.brands-page .br2x-top{padding:46px 0 24px!important;gap:32px}
.brands-page .br2x-top h2{font-size:clamp(36px,4.2vw,58px)!important;margin:10px 0 0!important}
.brands-page .br2x-top p{font-size:16px!important;color:#C99B9B}
.brands-page .br2x-rail-shell{padding:18px 0!important}
.brands-page .br2x-logo{width:190px;height:132px;padding:17px 18px}
.brands-page .br2x-logo b{font-size:31px}
.brands-page .br2x-logo span{font-size:15px!important}
.brands-page .br2x-logo small{font-size:14px!important;letter-spacing:.1em}
.brands-page .br2x-bottom{padding:17px 0 22px!important;font-size:14px!important}
.brands-page .br2x-bottom a{font-size:14px!important}
@media (max-width:1023px){
 .brands-page .br2x-top{grid-template-columns:1fr!important;padding:42px 0 22px!important;gap:12px!important}
 .brands-page .br2x-top p{max-width:760px!important;margin:0!important}
 .brands-page .br2x-bottom{grid-template-columns:1fr 1fr!important;row-gap:14px}
 .brands-page .br2x-bottom a{justify-self:start!important}
}
@media (max-width:767px){
 .brands-page .br2x-top{width:calc(100% - 28px)!important;padding:34px 0 18px!important}
 .brands-page .br2x-top h2{font-size:34px!important;line-height:1.05!important;letter-spacing:-.035em!important}
 .brands-page .br2x-top p{font-size:14px!important;line-height:1.65!important}
 .brands-page .br2x-rail-shell{padding:12px 0!important}
 .brands-page .br2x-track{gap:10px!important;animation-duration:48s}
 .brands-page .br2x-logo{width:142px;height:112px;padding:13px!important}
 .brands-page .br2x-logo b{font-size:25px!important}
 .brands-page .br2x-logo span{font-size:14px!important}
 .brands-page .br2x-logo small{font-size:14px!important;letter-spacing:.06em}
 .brands-page .br2x-bottom{width:calc(100% - 28px)!important;grid-template-columns:1fr 1fr!important;padding:14px 0 18px!important;gap:10px!important}
 .brands-page .br2x-bottom span,.brands-page .br2x-bottom a{font-size:14px!important;line-height:1.35!important}
 .brands-page .br2x-bottom a{grid-column:1/-1!important}
 /* prevent responsive text collisions in the later brand sections */
 .brands-page .br3x,.brands-page .br4x,.brands-page .br5x,.brands-page .br6x,.brands-page .br7x,.brands-page .br8x{overflow:hidden}
 .brands-page .br-story,.brands-page .br-cube-gallery{min-height:auto}
 .brands-page .story-content,.brands-page .gallery-head,.brands-page .stats-head,.brands-page .test-head,.brands-page .portal-box{max-width:100%;min-width:0}
 .brands-page .story-content h2,.brands-page .gallery-head h2,.brands-page .stats-head h2,.brands-page .test-head h2,.brands-page .typewriter-copy h2{font-size:clamp(32px,10vw,46px)!important;line-height:1.06!important}
 .brands-page .story-content p,.brands-page .gallery-head p,.brands-page .stats-head p,.brands-page .test-head p,.brands-page .typewriter-copy p{font-size:14px!important;line-height:1.65!important}
 .brands-page .story-images{width:calc(100% - 28px)!important;margin:20px auto 0!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
 .brands-page .story-images figure,.brands-page .story-images figure:nth-child(2),.brands-page .story-images figure:nth-child(3){width:100%!important;transform:none!important}
 .brands-page .story-images img{height:230px!important}
 .brands-page .product-cube-stage{height:430px!important}
 .brands-page .product-cube{transform:scale(.68) rotateX(-8deg) rotateY(22deg)!important}
 .brands-page .proof-top{display:block!important}
 .brands-page .proof-top p{margin-top:16px!important}
 .brands-page .proof-numbers{grid-template-columns:1fr!important}
 .brands-page .proof-number,.brands-page .proof-number:not(:first-child){padding:20px 0!important;border-right:0!important;border-bottom:1px solid var(--line)}
 .brands-page .proof-quote{grid-template-columns:1fr!important;gap:12px!important;padding:28px 0!important}
 .brands-page .proof-quote-mark{font-size:60px!important}
 .brands-page .proof-quote blockquote{font-size:22px!important;line-height:1.35!important}
 .brands-page .proof-quote figcaption{grid-column:1!important;font-size:14px!important;flex-wrap:wrap}
 .brands-page .typewriter-wrap{grid-template-columns:1fr!important;gap:30px!important;min-height:auto!important}
 .brands-page .typewriter-copy h2{min-height:0!important}
}
html.light .brands-page .br2x,
html.light .brands-page .br2x-top h2,
html.light .brands-page .br2x-logo span,
html.light .brands-page .br2x-logo b{color:#241313!important}
html.light .brands-page .br2x-top p,
html.light .brands-page .br2x-logo small,
html.light .brands-page .br2x-bottom span,
html.light .brands-page .br2x-bottom a{color:#583030!important}
html.light .brands-page .br2x-top>div span,
html.light .brands-page .br2x-top h2 em,
html.light .brands-page .br2x-bottom span:first-child{color:#762020!important}
html.light .brands-page .br2x-logo{background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(236,220,220,.82));border-color:rgba(89,48,48,.28)}
/* global light-mode readability for brand content */
html.light .brands-page .br-sec p,
html.light .brands-page .br-sec figcaption,
html.light .brands-page .br-sec small,
html.light .brands-page .br-sec .muted,
html.light .brands-page .br-sec .brand-footline{color:#583030!important}
html.light .brands-page .br-sec h1,
html.light .brands-page .br-sec h2,
html.light .brands-page .br-sec h3,
html.light .brands-page .br-sec h4,
html.light .brands-page .br-sec blockquote,
html.light .brands-page .br-sec label{color:#241313}
html.light .brands-page .br-sec .eyebrow,
html.light .brands-page .br-sec [class*="kicker"],
html.light .brands-page .br-sec [class*="head"]>span{color:#762020!important}


/* ===== Brands Section 02 — marquee alignment stability ===== */
.brands-page .br2x-rail-shell{
  overflow:hidden!important;
  contain:layout paint;
}
.brands-page .br2x-track{
  width:max-content!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  animation:none!important;
  transform:translate3d(0,0,0);
  will-change:transform;
}
.brands-page .br2x-logo{
  flex:0 0 190px!important;
  min-width:190px!important;
  margin:0!important;
  position:relative!important;
  transform:none;
}
.brands-page .br2x-logo:hover{
  transform:translateY(-8px) scale(1.025);
}
@media(max-width:767px){
  .brands-page .br2x-track{gap:10px!important}
  .brands-page .br2x-logo{
    flex-basis:142px!important;
    min-width:142px!important;
    width:142px!important;
  }
}

/* =========================================================
   BRANDS SECTION 04 — RESPONSIVE OVERLAP FIX / CLEAN RESTRUCTURE
   The desktop composition stays cinematic, while tablet/mobile
   move the visual cluster below the copy so nothing can collide.
   ========================================================= */
.brands-page #brandEcosystem{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  min-height:760px!important;
  display:block!important;
  padding:88px 7vw 92px!important;
}
.brands-page #brandEcosystem .ecosystem-head{
  position:relative!important;
  z-index:20!important;
  width:44%!important;
  max-width:520px!important;
  min-width:0!important;
  margin:0!important;
}
.brands-page #brandEcosystem .ecosystem-head h2{
  font-size:clamp(42px,4.8vw,66px)!important;
  line-height:.96!important;
  margin:14px 0 20px!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.brands-page #brandEcosystem .ecosystem-head p{
  width:100%!important;
  max-width:440px!important;
  font-size:16px!important;
  line-height:1.7!important;
  margin:0!important;
}
.brands-page #brandEcosystem .ecosystem-head .br-cta{
  position:relative!important;
  z-index:25!important;
  margin-top:24px!important;
}
.brands-page #brandEcosystem .ecosystem-cross{
  left:61%!important;
  top:12%!important;
  width:330px!important;
  height:560px!important;
  opacity:.65;
}
.brands-page #brandEcosystem .eco-orbit-a{
  left:76%!important;
  top:53%!important;
  width:430px!important;
  height:430px!important;
}
.brands-page #brandEcosystem .eco-orbit-b{
  left:76%!important;
  top:53%!important;
  width:570px!important;
  height:205px!important;
}
.brands-page #brandEcosystem .eco-core{
  left:76%!important;
  top:53%!important;
  width:210px!important;
  height:210px!important;
}
.brands-page #brandEcosystem .eco-panel{
  width:174px!important;
  min-width:174px!important;
  padding:16px!important;
}
.brands-page #brandEcosystem .eco-panel b{font-size:18px!important;line-height:1.1!important}
.brands-page #brandEcosystem .eco-panel span{font-size:14px!important;line-height:1.4!important}
.brands-page #brandEcosystem .eco-north{
  left:52%!important;top:15%!important;transform:translateY(-70px);
}
.brands-page #brandEcosystem .eco-east{
  right:2%!important;top:43%!important;transform:translateX(80px);
}
.brands-page #brandEcosystem .eco-west{
  left:52%!important;top:66%!important;transform:translateX(-80px);
}
.brands-page #brandEcosystem .eco-south{
  left:69%!important;bottom:7%!important;transform:translateY(70px);
}
.brands-page #brandEcosystem .eco-footer{
  left:7vw!important;right:7vw!important;bottom:25px!important;
  display:flex!important;gap:24px!important;flex-wrap:wrap!important;
  font-size:14px!important;line-height:1.35!important;
  z-index:12!important;
}

/* Tablet: keep copy and visual in separate horizontal zones. */
@media (min-width:768px) and (max-width:1100px){
  .brands-page #brandEcosystem{
    min-height:760px!important;
    padding:76px 6vw 88px!important;
  }
  .brands-page #brandEcosystem .ecosystem-head{
    width:47%!important;
    max-width:470px!important;
  }
  .brands-page #brandEcosystem .ecosystem-head h2{
    font-size:clamp(40px,5.2vw,56px)!important;
  }
  .brands-page #brandEcosystem .ecosystem-head p{
    max-width:420px!important;
    font-size:15px!important;
  }
  .brands-page #brandEcosystem .ecosystem-cross{left:60%!important;top:10%!important}
  .brands-page #brandEcosystem .eco-orbit-a{left:76%!important;top:55%!important;width:390px!important;height:390px!important}
  .brands-page #brandEcosystem .eco-orbit-b{left:76%!important;top:55%!important;width:500px!important;height:180px!important}
  .brands-page #brandEcosystem .eco-core{left:76%!important;top:55%!important;width:190px!important;height:190px!important}
  .brands-page #brandEcosystem .eco-panel{width:160px!important;min-width:160px!important;padding:14px!important}
  .brands-page #brandEcosystem .eco-panel b{font-size:16px!important}
  .brands-page #brandEcosystem .eco-panel span{font-size:14px!important}
  .brands-page #brandEcosystem .eco-north{left:53%!important;top:17%!important}
  .brands-page #brandEcosystem .eco-east{right:1%!important;top:44%!important}
  .brands-page #brandEcosystem .eco-west{left:51%!important;top:67%!important}
  .brands-page #brandEcosystem .eco-south{left:68%!important;bottom:8%!important}
}

/* Mobile: copy first, visual cluster second. No absolute object is
   allowed inside the copy zone, eliminating the screenshot overlap. */
@media (max-width:767px){
  .brands-page #brandEcosystem{
    min-height:930px!important;
    height:930px!important;
    padding:58px 6vw 90px!important;
  }
  .brands-page #brandEcosystem .ecosystem-head{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  .brands-page #brandEcosystem .ecosystem-head h2{
    font-size:clamp(34px,10vw,46px)!important;
    line-height:1.02!important;
    margin:12px 0 16px!important;
  }
  .brands-page #brandEcosystem .ecosystem-head p{
    max-width:100%!important;
    font-size:14px!important;
    line-height:1.65!important;
  }
  .brands-page #brandEcosystem .ecosystem-head .br-cta{
    margin-top:18px!important;
    padding:12px 15px!important;
  }
  .brands-page #brandEcosystem .ecosystem-cross{
    left:50%!important;top:405px!important;width:250px!important;height:470px!important;
    transform:translateX(-50%) rotate(18deg)!important;
    opacity:.4!important;
  }
  .brands-page #brandEcosystem .eco-orbit-a{
    left:50%!important;top:650px!important;width:320px!important;height:320px!important;
  }
  .brands-page #brandEcosystem .eco-orbit-b{
    left:50%!important;top:650px!important;width:420px!important;height:150px!important;
  }
  .brands-page #brandEcosystem .eco-core{
    left:50%!important;top:650px!important;width:160px!important;height:160px!important;
  }
  .brands-page #brandEcosystem .eco-core span{font-size:14px!important}
  .brands-page #brandEcosystem .eco-panel{
    width:132px!important;min-width:132px!important;padding:12px!important;
    gap:5px!important;
  }
  .brands-page #brandEcosystem .eco-panel b{font-size:15px!important;line-height:1.1!important}
  .brands-page #brandEcosystem .eco-panel span{font-size:14px!important;line-height:1.3!important}
  .brands-page #brandEcosystem .eco-north{
    left:4%!important;top:485px!important;transform:translateX(-90px);
  }
  .brands-page #brandEcosystem .eco-east{
    right:4%!important;top:535px!important;transform:translateX(90px);
  }
  .brands-page #brandEcosystem .eco-west{
    left:4%!important;top:700px!important;transform:translateX(-90px);
  }
  .brands-page #brandEcosystem .eco-south{
    left:auto!important;right:4%!important;bottom:auto!important;top:750px!important;
    transform:translateX(90px);
  }
  .brands-page #brandEcosystem .eco-footer{
    left:6vw!important;right:6vw!important;bottom:20px!important;
    gap:8px 18px!important;font-size:14px!important;
  }
}

/* Very narrow phones: reduce only the visual cluster, never the copy. */
@media (max-width:380px){
  .brands-page #brandEcosystem{min-height:900px!important;height:900px!important;padding-top:50px!important}
  .brands-page #brandEcosystem .eco-orbit-a{top:625px!important;width:285px!important;height:285px!important}
  .brands-page #brandEcosystem .eco-orbit-b{top:625px!important;width:365px!important;height:135px!important}
  .brands-page #brandEcosystem .eco-core{top:625px!important;width:145px!important;height:145px!important}
  .brands-page #brandEcosystem .eco-north{top:465px!important}
  .brands-page #brandEcosystem .eco-east{top:515px!important}
  .brands-page #brandEcosystem .eco-west{top:675px!important}
  .brands-page #brandEcosystem .eco-south{top:720px!important}
  .brands-page #brandEcosystem .eco-panel{width:118px!important;min-width:118px!important;padding:10px!important}
  .brands-page #brandEcosystem .eco-panel b{font-size:14px!important}
  .brands-page #brandEcosystem .eco-panel span{font-size:14px!important}
}

/* Light mode: keep the restructured section readable. */
html.light .brands-page #brandEcosystem .ecosystem-head h2,
html.light .brands-page #brandEcosystem .ecosystem-head p,
html.light .brands-page #brandEcosystem .eco-panel b,
html.light .brands-page #brandEcosystem .eco-panel span,
html.light .brands-page #brandEcosystem .eco-footer span{color:#241313!important}
html.light .brands-page #brandEcosystem .ecosystem-head>span{color:#762020!important}
html.light .brands-page #brandEcosystem .eco-panel{background:rgba(247,239,239,.96)!important;border-color:rgba(83,44,44,.24)!important;box-shadow:0 16px 45px rgba(62,34,34,.12)!important}
html.light .brands-page #brandEcosystem .eco-core{box-shadow:0 0 65px rgba(118,32,32,.22)!important}


/* ===== BRANDS 03 — IMAGE-LED RESTRUCTURE ===== */
.brands-page #brandStory.brand-story-image{
  min-height:780px!important;
  padding:92px 8vw 82px!important;
  background:#110909!important;
  overflow:hidden!important;
  isolation:isolate;
}
.brand-story-bg{position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 72% 52%,rgba(232,93,93,.16),transparent 24%),radial-gradient(circle at 18% 80%,rgba(125,50,50,.13),transparent 28%);}
.brand-story-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(12,7,7,.97) 0%,rgba(12,7,7,.78) 42%,rgba(12,7,7,.22) 100%);}
.brand-story-layout{width:min(1240px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(320px,.9fr) minmax(460px,1.1fr);align-items:center;gap:6vw;min-height:610px;position:relative;z-index:3;}
.brand-story-copy{max-width:560px;position:relative;z-index:5;}
.brand-story-copy>span{display:block;color:#E86A6A;font-weight:800;letter-spacing:.16em;font-size:14px!important;}
.brand-story-copy h2{font:700 clamp(42px,5.1vw,70px)/.96 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:18px 0 24px;color:#F5ECEC;}
.brand-story-copy h2 em{font-style:normal;color:#E86A6A;}
.brand-story-copy p{max-width:540px;color:#D7B4B4!important;line-height:1.8;margin:0;font-size:16px!important;}
.brand-story-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:30px 0 4px;}
.brand-story-points div{padding:14px 12px;border-top:1px solid rgba(232,106,106,.3);background:rgba(255,255,255,.025);}
.brand-story-points b{display:block;color:#E86A6A;font-size:14px!important;margin-bottom:5px;}
.brand-story-points span{display:block;color:#E6D0D0!important;font-size:14px!important;line-height:1.35;}
.brand-story-copy .br-cta{margin-top:26px;font-size:14px!important;}
.brand-story-visual{position:relative;min-height:590px;display:grid;place-items:center;}
.brand-story-image-frame{position:relative;width:min(430px,62%);aspect-ratio:1/1.14;overflow:hidden;border:1px solid rgba(232,104,104,.55);box-shadow:0 0 90px rgba(224,68,68,.16),0 28px 80px rgba(0,0,0,.42);clip-path:polygon(7% 0,100% 6%,94% 100%,0 93%);z-index:5;}
.brand-story-image-frame img{width:100%;height:100%;object-fit:cover;display:block;filter:brightness(.72) saturate(.95);transform:scale(1.04);transition:transform .8s ease,filter .8s ease;}
.brand-story-image-frame:hover img{transform:scale(1.1);filter:brightness(.86) saturate(1.08);}
.brand-story-image-glow{position:absolute;inset:0;background:linear-gradient(145deg,rgba(232,106,106,.12),transparent 45%,rgba(10,6,6,.6));pointer-events:none;}
.brand-story-image-label{position:absolute;left:24px;right:24px;bottom:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px;color:#F5ECEC;text-shadow:0 2px 18px #000000;}
.brand-story-image-label strong{font:800 22px/1.02 'Space Grotesk',sans-serif;letter-spacing:.13em;}
.brand-story-image-label span{font-size:14px!important;letter-spacing:.12em;color:#E38F8F!important;text-align:right;}
.brand-story-image-frame:before{content:"";position:absolute;inset:12px;border:1px solid rgba(241,135,135,.25);z-index:3;pointer-events:none;}
.brand-story-image-frame:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;border:1px solid rgba(232,104,104,.7);right:-20px;top:-20px;box-shadow:0 0 30px rgba(232,104,104,.18);z-index:4;}
.brand-story-image-frame~.join-panel{position:absolute;z-index:7;width:190px;padding:16px 17px;background:rgba(20,11,11,.9);border:1px solid rgba(232,104,104,.3);box-shadow:0 18px 45px rgba(0,0,0,.32);backdrop-filter:blur(10px);transition:transform .55s ease,border-color .55s ease,background .55s ease;}
.brand-story-image-frame~.join-panel:hover{border-color:#E86A6A;background:rgba(31,16,16,.96);}
.brand-story-image-frame~.join-panel b{display:block;color:#F5ECEC;font:800 16px/1.1 'Space Grotesk',sans-serif;letter-spacing:.04em;}
.brand-story-image-frame~.join-panel span{display:block;color:#C99A9A!important;font-size:14px!important;line-height:1.4;margin-top:6px;}
.brand-story-image-frame~.jp-top{top:5%;left:3%;transform:translate(-80px,-45px);}
.brand-story-image-frame~.jp-left{left:-2%;bottom:12%;transform:translate(-85px,45px);}
.brand-story-image-frame~.jp-right{right:-2%;top:27%;transform:translate(85px,0);}
.brand-story-image-frame~.jp-bottom{right:4%;bottom:4%;transform:translate(85px,55px);}
.brand-story-footer{position:absolute;left:8vw;right:8vw;bottom:24px;display:flex;justify-content:space-between;gap:20px;padding-top:17px;border-top:1px solid rgba(232,106,106,.16);color:#BE8787;font-size:14px!important;letter-spacing:.08em;z-index:4;}
.brand-story-footer i{color:#E86A6A;font-size:8px;margin-right:7px;}
@media(max-width:1050px){
 .brands-page #brandStory.brand-story-image{padding:82px 6vw 90px!important;min-height:850px!important;}
 .brand-story-layout{grid-template-columns:1fr 1fr;gap:3vw;min-height:650px;}
 .brand-story-copy h2{font-size:50px;}
 .brand-story-copy p{font-size:15px!important;}
 .brand-story-points{grid-template-columns:1fr;gap:7px;max-width:430px;}
 .brand-story-visual{min-height:610px;}
 .brand-story-image-frame{width:min(350px,64%);}
 .brand-story-image-frame~.join-panel{width:165px;padding:13px;}
 .brand-story-image-frame~.jp-top{left:0;top:6%;}
 .brand-story-image-frame~.jp-left{left:-3%;bottom:13%;}
 .brand-story-image-frame~.jp-right{right:-3%;top:26%;}
 .brand-story-image-frame~.jp-bottom{right:0;bottom:5%;}
 .brand-story-footer{left:6vw;right:6vw;}
}
@media(max-width:767px){
 .brands-page #brandStory.brand-story-image{min-height:0!important;padding:72px 6vw 88px!important;}
 .brand-story-layout{display:flex;flex-direction:column;align-items:stretch;gap:28px;min-height:0;}
 .brand-story-copy{max-width:none;}
 .brand-story-copy h2{font-size:42px;line-height:.98;margin:15px 0 20px;}
 .brand-story-copy p{font-size:15px!important;line-height:1.72;}
 .brand-story-points{grid-template-columns:1fr 1fr 1fr;max-width:none;margin-top:22px;}
 .brand-story-points div{padding:11px 9px;min-height:70px;}
 .brand-story-points span{font-size:14px!important;}
 .brand-story-copy .br-cta{margin-top:20px;}
 .brand-story-visual{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-height:0;align-items:stretch;}
 .brand-story-image-frame{grid-column:1/-1;grid-row:1;width:100%;height:320px;aspect-ratio:auto;clip-path:polygon(3% 0,100% 3%,97% 100%,0 96%);margin-bottom:4px;}
 .brand-story-image-frame~.join-panel{position:relative!important;inset:auto!important;transform:none!important;width:auto!important;grid-row:auto;min-height:74px;padding:13px 12px;display:flex;flex-direction:column;justify-content:center;}
 .brand-story-image-frame~.jp-top{grid-column:1;grid-row:2;}
 .brand-story-image-frame~.jp-left{grid-column:2;grid-row:2;}
 .brand-story-image-frame~.jp-right{grid-column:1;grid-row:3;}
 .brand-story-image-frame~.jp-bottom{grid-column:2;grid-row:3;}
 .brand-story-image-label{left:17px;right:17px;bottom:17px;}
 .brand-story-image-label strong{font-size:19px;}
 .brand-story-image-label span{font-size:14px!important;}
 .brand-story-footer{position:relative;left:auto;right:auto;bottom:auto;margin-top:28px;padding-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:14px!important;line-height:1.4;}
}
@media(max-width:390px){
 .brand-story-copy h2{font-size:37px;}
 .brand-story-points{grid-template-columns:1fr;}
 .brand-story-points div{min-height:0;}
 .brand-story-image-frame{height:275px;}
 .brand-story-image-label{flex-direction:column;align-items:flex-start;}
 .brand-story-image-label span{text-align:left;}
 .brand-story-footer{grid-template-columns:1fr;}
}
html.light .brands-page #brandStory.brand-story-image{background:#F2E8E8!important;color:#251414;}
html.light .brands-page #brandStory .brand-story-bg{background:radial-gradient(circle at 72% 52%,rgba(170,57,57,.18),transparent 24%),radial-gradient(circle at 18% 80%,rgba(127,57,57,.12),transparent 28%);}
html.light .brands-page #brandStory .brand-story-bg:after{background:linear-gradient(110deg,rgba(242,232,232,.94) 0%,rgba(242,232,232,.72) 44%,rgba(242,232,232,.2) 100%);}
html.light .brands-page #brandStory .brand-story-copy h2{color:#241313!important;}
html.light .brands-page #brandStory .brand-story-copy p{color:#623434!important;}
html.light .brands-page #brandStory .brand-story-points div{background:rgba(255,255,255,.45);border-top-color:rgba(98,47,47,.28);}
html.light .brands-page #brandStory .brand-story-points span{color:#4F2A2A!important;}
html.light .brands-page #brandStory .brand-story-image-frame~.join-panel{background:rgba(247,239,239,.96);border-color:rgba(83,44,44,.25);box-shadow:0 16px 45px rgba(62,34,34,.14);}
html.light .brands-page #brandStory .brand-story-image-frame~.join-panel b{color:#2A1616!important;}
html.light .brands-page #brandStory .brand-story-image-frame~.join-panel span{color:#6A3939!important;}
html.light .brands-page #brandStory .brand-story-footer{color:#693939!important;border-top-color:rgba(83,44,44,.2);}


/* =========================================================
   VOLTIVA — BRANDS SECTION 04 / EDITORIAL IMAGE FLOW
   No transparent cards / no 3D / responsive-safe
   ========================================================= */
.brands-page .br-ecosystem-editorial{
  min-height:100vh;
  padding:92px 7vw 54px;
  background:#100909;
  color:#F7EFEF;
  display:grid;
  grid-template-columns:minmax(260px,.82fr) minmax(430px,1.18fr);
  grid-template-rows:auto 1fr auto;
  column-gap:6vw;
  row-gap:28px;
  isolation:isolate;
}
.eco-editorial-bg{
  position:absolute;inset:0;z-index:-2;
  background:
    radial-gradient(circle at 72% 48%,rgba(231,76,76,.16),transparent 24%),
    linear-gradient(120deg,#100707 0%,#F29191 54%,#100707 100%);
}
.eco-editorial-bg:after{
  content:"";position:absolute;inset:0;opacity:.18;
  background-image:linear-gradient(115deg,transparent 0 49.7%,rgba(232,107,107,.42) 49.9%,transparent 50.1%);
  background-size:260px 260px;
}
.eco-editorial-head{grid-column:1;grid-row:1;position:relative;z-index:2;align-self:end}
.eco-editorial-kicker{
  display:flex;align-items:center;gap:10px;
  color:#ED6262;font:800 13px/1.2 Inter,sans-serif;
  letter-spacing:.16em;text-transform:uppercase;
}
.eco-editorial-head h2{
  font:700 clamp(40px,5.1vw,76px)/.94 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;margin:18px 0 22px;max-width:650px;
}
.eco-editorial-head h2 em{font-style:normal;color:#ED6262}
.eco-editorial-head p{
  max-width:570px;margin:0;color:#D7B6B6;font-size:17px!important;line-height:1.72;
}
.eco-editorial-media{
  grid-column:2;grid-row:1 / span 2;
  position:relative;min-height:650px;
  display:flex;align-items:center;justify-content:center;
}
.eco-media-main{
  width:min(610px,90%);height:500px;margin:0;
  position:relative;overflow:hidden;
  clip-path:polygon(7% 0,100% 8%,94% 100%,0 91%);
  transform:translate(3%,0) rotate(-2.5deg);
  box-shadow:0 28px 70px rgba(0,0,0,.42);
  animation:ecoImageFloat 6s ease-in-out infinite;
}
.eco-media-main img,.eco-media-detail img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .9s ease,filter .9s ease;
}
.eco-media-main img{filter:saturate(.88) contrast(1.05)}
.eco-media-main:hover img{transform:scale(1.06)}
.eco-media-main figcaption,.eco-media-detail figcaption{
  position:absolute;left:24px;bottom:20px;
  font:800 12px/1.2 Inter,sans-serif;letter-spacing:.15em;color:#FFFFFF;
  text-shadow:0 2px 12px #000000;
}
.eco-media-detail{
  position:absolute;width:230px;height:285px;right:1%;bottom:18px;margin:0;
  overflow:hidden;clip-path:polygon(10% 0,100% 8%,92% 100%,0 92%);
  border:1px solid rgba(236,96,96,.65);
  transform:rotate(6deg);
  box-shadow:0 22px 50px rgba(0,0,0,.5);
  animation:ecoDetailFloat 5s ease-in-out 1s infinite;
}
.eco-media-detail img{filter:saturate(.75) brightness(.72)}
.eco-media-detail:hover img{transform:scale(1.1)}
.eco-media-detail figcaption{left:15px;bottom:14px;font-size:10px}
.eco-editorial-sweep{
  position:absolute;width:76%;height:76%;border:1px solid rgba(237,98,98,.22);
  border-radius:50%;transform:rotate(-16deg);pointer-events:none;
  animation:ecoSweep 10s linear infinite;
}
.eco-editorial-sweep:after{
  content:"";position:absolute;left:50%;top:-8px;width:7px;height:7px;border-radius:50%;
  background:#ED6262;box-shadow:0 0 22px #ED6262;
}
.eco-brand-index{
  grid-column:1;grid-row:2;
  align-self:center;display:grid;grid-template-columns:1fr 1fr;
  gap:0 30px;border-top:1px solid rgba(237,98,98,.24);
  border-bottom:1px solid rgba(237,98,98,.24);
}
.eco-brand-index a{
  min-height:92px;padding:18px 0;display:grid;
  grid-template-columns:34px 1fr;grid-template-rows:auto auto;
  column-gap:10px;align-content:center;text-decoration:none;color:#F5EDED;
  border-bottom:1px solid rgba(237,98,98,.13);
  transition:transform .35s ease,color .35s ease;
}
.eco-brand-index a:nth-child(3),.eco-brand-index a:nth-child(4){border-bottom:0}
.eco-brand-index a:hover{transform:translateX(8px);color:#ED6262}
.eco-brand-index strong{grid-row:1 / span 2;color:#B47474;font-size:12px!important;letter-spacing:.1em}
.eco-brand-index b{font:800 18px/1.1 "Space Grotesk";letter-spacing:.02em}
.eco-brand-index span{color:#C99A9A;font-size:14px!important;margin-top:5px}
.eco-editorial-foot{
  grid-column:1 / -1;grid-row:3;
  display:flex;align-items:center;gap:28px;
  padding-top:18px;border-top:1px solid rgba(237,98,98,.2);
  color:#C69696;font-size:14px!important;letter-spacing:.05em;
}
.eco-editorial-foot span:before{content:"•";color:#ED6262;margin-right:8px}
.eco-editorial-foot a{
  margin-left:auto;color:#ED6262;text-decoration:none;font-weight:800;
  display:inline-flex;align-items:center;gap:10px;
}
.eco-editorial-foot a i{transition:transform .3s ease}.eco-editorial-foot a:hover i{transform:translateX(5px)}
@keyframes ecoImageFloat{0%,100%{transform:translate(3%,0) rotate(-2.5deg)}50%{transform:translate(3%,-12px) rotate(-1deg)}}
@keyframes ecoDetailFloat{0%,100%{transform:rotate(6deg) translateY(0)}50%{transform:rotate(3deg) translateY(-12px)}}
@keyframes ecoSweep{from{transform:rotate(-16deg)}to{transform:rotate(344deg)}}

/* =========================================================
   VOLTIVA — REPAIR SECTION 01 / NEW EDITORIAL TRANSFORMATION
   No 3D / no overlapping text / image-led
   ========================================================= */
.repair-page .rs-hero-editorial{
  min-height:calc(100vh - 74px);position:relative;overflow:hidden;
  background:#0E0808;color:#F7EFEF;padding:48px 7vw 28px;
  display:grid;grid-template-rows:auto 1fr auto;isolation:isolate;
}
.repair-editorial-bg{
  position:absolute;inset:0;z-index:-2;
  background:
    linear-gradient(90deg,rgba(11,5,5,.98) 0%,rgba(11,5,5,.9) 43%,rgba(11,5,5,.28) 72%,rgba(11,5,5,.55) 100%),
    url('../images/smartphone-lifestyle-flatlay.jpg') center/cover no-repeat;
  transform:scale(1.04);
  animation:repairBgDrift 14s ease-in-out infinite alternate;
}
.repair-editorial-bg:after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 72% 52%,rgba(237,98,98,.18),transparent 25%);
}
.repair-editorial-grid{
  position:absolute;inset:0;z-index:-1;opacity:.18;pointer-events:none;
  background-image:linear-gradient(90deg,transparent 49.8%,rgba(237,98,98,.45) 50%,transparent 50.2%);
  background-size:180px 100%;
}
.repair-editorial-top{
  display:flex;justify-content:space-between;align-items:center;
  border-bottom:1px solid rgba(231,160,160,.2);padding-bottom:16px;
  position:relative;z-index:3;
}
.repair-editorial-kicker{
  color:#ED6262;font:800 13px/1.2 Inter,sans-serif;letter-spacing:.16em;
  text-transform:uppercase;
}
.repair-editorial-kicker b{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid rgba(237,98,98,.6);border-radius:50%;margin-right:8px}
.repair-editorial-code{color:#B26F6F;font:700 12px/1 Inter,sans-serif;letter-spacing:.14em}
.repair-editorial-layout{
  display:grid;grid-template-columns:minmax(340px,.9fr) minmax(460px,1.1fr);
  gap:6vw;align-items:center;min-height:0;
}
.repair-editorial-copy{max-width:680px;position:relative;z-index:3}
.repair-editorial-copy h1{
  font:700 clamp(48px,6.2vw,88px)/.92 "Space Grotesk",sans-serif;
  letter-spacing:-.06em;margin:0 0 24px;
}
.repair-editorial-copy h1 em{font-style:normal;color:#ED6262}
.repair-editorial-copy p{max-width:620px;color:#D9B8B8;font-size:17px!important;line-height:1.72;margin:0}
.repair-editorial-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}
.repair-editorial-link{color:#F7EFEF;text-decoration:none;font-weight:800;display:inline-flex;gap:9px;align-items:center}
.repair-editorial-link i{color:#ED6262}
.repair-editorial-points{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;
  margin-top:42px;padding-top:18px;border-top:1px solid rgba(231,160,160,.2);
}
.repair-editorial-points span{color:#C99A9A;font-size:14px!important}
.repair-editorial-points b{color:#ED6262;margin-right:7px}
.repair-editorial-visual{
  min-height:560px;position:relative;display:grid;place-items:center;
}
.repair-image{
  position:absolute;overflow:hidden;margin:0;
  box-shadow:0 30px 80px rgba(0,0,0,.45);
}
.repair-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s ease}
.repair-image:hover img{transform:scale(1.07)}
.repair-image-main{
  width:min(500px,76%);height:530px;right:5%;top:4%;
  clip-path:polygon(8% 0,100% 6%,94% 100%,0 93%);
  animation:repairMainFloat 6s ease-in-out infinite;
}
.repair-image-detail{
  width:235px;height:265px;left:3%;bottom:2%;
  clip-path:polygon(0 8%,90% 0,100% 92%,8% 100%);
  border:1px solid rgba(237,98,98,.65);
  animation:repairDetailFloat 5s ease-in-out 1s infinite;
}
.repair-image-main img{filter:saturate(1.05) contrast(1.04)}
.repair-image-detail img{filter:saturate(.65) brightness(.68)}
.repair-image span{
  position:absolute;left:18px;bottom:17px;color:#FFFFFF;
  font:800 11px/1.2 Inter,sans-serif;letter-spacing:.14em;text-shadow:0 2px 12px #000000;
}
.repair-image-line{
  position:absolute;width:1px;height:74%;left:50%;top:12%;
  background:linear-gradient(to bottom,transparent,#ED6262,transparent);
  box-shadow:0 0 20px rgba(237,98,98,.45);transform:rotate(13deg);
}
.repair-editorial-badge{
  position:absolute;right:0;top:7%;display:grid;grid-template-columns:auto 1fr;
  column-gap:9px;align-items:center;color:#110909;background:#ED6262;
  padding:12px 16px;clip-path:polygon(0 0,95% 0,100% 20%,100% 100%,5% 100%,0 78%);
  box-shadow:0 15px 35px rgba(0,0,0,.3);
}
.repair-editorial-badge i{grid-row:1 / span 2;font-size:18px}
.repair-editorial-badge span{font-size:10px!important;letter-spacing:.12em;font-weight:900}
.repair-editorial-badge b{font-size:15px!important}
.repair-editorial-stats{
  display:grid;grid-template-columns:repeat(4,1fr);
  border-top:1px solid rgba(231,160,160,.22);
  position:relative;z-index:3;
}
.repair-editorial-stats div{padding:16px 18px 4px 0;border-right:1px solid rgba(231,160,160,.13)}
.repair-editorial-stats div:last-child{border-right:0}
.repair-editorial-stats strong{display:block;font:700 28px/1 "Space Grotesk";color:#F7EFEF}
.repair-editorial-stats span{display:block;margin-top:5px;color:#BF8787;font-size:14px!important}
@keyframes repairBgDrift{from{transform:scale(1.04) translateX(0)}to{transform:scale(1.09) translateX(-12px)}}
@keyframes repairMainFloat{0%,100%{transform:rotate(2deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-10px)}}
@keyframes repairDetailFloat{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(1deg) translateY(-10px)}}

@media(max-width:1100px){
  .brands-page .br-ecosystem-editorial{padding-left:5vw;padding-right:5vw;grid-template-columns:1fr 1.1fr;column-gap:35px}
  .eco-editorial-media{min-height:570px}.eco-media-main{height:440px;width:92%}.eco-media-detail{width:190px;height:230px}
  .repair-page .rs-hero-editorial{padding-left:5vw;padding-right:5vw}
  .repair-editorial-layout{grid-template-columns:1fr 1fr;gap:30px}
  .repair-editorial-visual{min-height:500px}.repair-image-main{height:460px;width:78%}.repair-image-detail{width:190px;height:220px}
}
@media(max-width:900px){
  .brands-page .br-ecosystem-editorial{display:flex;flex-direction:column;padding-top:82px;min-height:auto}
  .eco-editorial-head{order:1}.eco-editorial-media{order:2;min-height:480px;margin:4px 0 0}
  .eco-brand-index{order:3;width:100%}.eco-editorial-foot{order:4;flex-wrap:wrap}
  .repair-page .rs-hero-editorial{min-height:auto;display:block;padding-top:36px}
  .repair-editorial-top{margin-bottom:35px}
  .repair-editorial-layout{display:flex;flex-direction:column;align-items:stretch}
  .repair-editorial-copy{max-width:760px}.repair-editorial-visual{min-height:500px;margin-top:12px}
  .repair-image-main{right:7%;width:64%;height:450px}.repair-image-detail{left:5%;bottom:0}
  .repair-editorial-stats{margin-top:24px}
}
@media(max-width:767px){
  .brands-page .br-ecosystem-editorial{padding:72px 20px 30px;row-gap:22px}
  .eco-editorial-head h2{font-size:clamp(38px,11vw,58px);margin:14px 0 18px}
  .eco-editorial-head p{font-size:15px!important;line-height:1.65}
  .eco-editorial-media{min-height:390px}
  .eco-media-main{width:88%;height:330px;transform:rotate(-1.5deg)}
  .eco-media-detail{width:135px;height:170px;right:0;bottom:4px}
  .eco-editorial-sweep{width:88%;height:65%}
  .eco-brand-index{grid-template-columns:1fr;gap:0}
  .eco-brand-index a,.eco-brand-index a:nth-child(3){border-bottom:1px solid rgba(237,98,98,.13)}
  .eco-brand-index a:last-child{border-bottom:0}
  .eco-brand-index a{min-height:72px;padding:13px 0}
  .eco-editorial-foot{gap:12px 18px;font-size:14px!important}
  .eco-editorial-foot a{width:100%;margin-left:0;margin-top:3px}
  .repair-page .rs-hero-editorial{padding:28px 20px 24px}
  .repair-editorial-top{align-items:flex-start;gap:12px}
  .repair-editorial-code{font-size:10px!important;text-align:right}
  .repair-editorial-copy h1{font-size:clamp(42px,12vw,62px);line-height:.94}
  .repair-editorial-copy p{font-size:15px!important;line-height:1.65}
  .repair-editorial-actions{gap:14px;margin-top:24px}
  .repair-editorial-points{margin-top:28px}
  .repair-editorial-points span{font-size:13px!important}
  .repair-editorial-visual{min-height:390px}
  .repair-image-main{width:70%;height:350px;right:3%;top:2%}
  .repair-image-detail{width:145px;height:180px;left:0;bottom:2%}
  .repair-editorial-badge{right:0;top:0;padding:9px 11px}
  .repair-editorial-stats{grid-template-columns:1fr 1fr;margin-top:20px}
  .repair-editorial-stats div{padding:13px 10px 8px 0}
  .repair-editorial-stats strong{font-size:24px}
  .repair-editorial-stats span{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){
  .eco-media-main,.eco-media-detail,.eco-editorial-sweep,.repair-editorial-bg,.repair-image-main,.repair-image-detail{animation:none!important}
}
html.light .brands-page .br-ecosystem-editorial,
html.light .repair-page .rs-hero-editorial{color:#231313}
html.light .brands-page .eco-editorial-bg{
  background:
    radial-gradient(circle at 72% 48%,rgba(183,64,64,.16),transparent 26%),
    linear-gradient(120deg,#F2E8E8,#EDDDDD 55%,#F4EBEB);
}
html.light .brands-page .eco-editorial-bg:after{opacity:.12}
html.light .brands-page .eco-editorial-head p,
html.light .brands-page .eco-brand-index span{color:#633535}
html.light .brands-page .eco-brand-index a{color:#241313;border-color:rgba(73,39,39,.18)}
html.light .brands-page .eco-brand-index strong{color:#8E4D4D}
html.light .brands-page .eco-editorial-foot{color:#7A4242;border-color:rgba(73,39,39,.2)}
html.light .repair-page .repair-editorial-bg{
  background:
    linear-gradient(90deg,rgba(245,237,237,.97) 0%,rgba(245,237,237,.9) 42%,rgba(245,237,237,.3) 73%,rgba(245,237,237,.48) 100%),
    url('../images/smartphone-lifestyle-flatlay.jpg') center/cover no-repeat;
}
html.light .repair-page .repair-editorial-bg:after{background:radial-gradient(circle at 72% 52%,rgba(165,48,48,.18),transparent 25%)}
html.light .repair-page .repair-editorial-copy p{color:#603434}
html.light .repair-page .repair-editorial-link{color:#261515}
html.light .repair-page .repair-editorial-points span,
html.light .repair-page .repair-editorial-stats span{color:#764040}
html.light .repair-page .repair-editorial-stats{border-color:rgba(73,39,39,.2)}
html.light .repair-page .repair-editorial-stats div{border-color:rgba(73,39,39,.15)}
html.light .repair-page .repair-editorial-stats strong{color:#231313}


/* =========================================================
   BRANDS 04 — FULL-BLEED ECOSYSTEM RESTRUCTURE
   No transparent cards / no dead space / responsive-safe
   ========================================================= */
.brands-page #brandEcosystem.brand-four-new{
  position:relative;
  min-height:760px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
  background:#0F0808!important;
  color:#F5EDED;
}
.brand-four-bg{
  position:absolute;inset:0;z-index:-3;
  background:
    radial-gradient(circle at 68% 48%,rgba(235,92,92,.15),transparent 22%),
    radial-gradient(circle at 92% 80%,rgba(235,92,92,.07),transparent 28%),
    linear-gradient(115deg,#100707 0%,#140B0B 48%,#100707 100%);
}
.brand-four-bg:before{
  content:"";position:absolute;inset:0;opacity:.20;
  background-image:
    linear-gradient(90deg,transparent 49.7%,rgba(234,101,101,.25) 50%,transparent 50.3%),
    linear-gradient(0deg,transparent 49.7%,rgba(234,101,101,.12) 50%,transparent 50.3%);
  background-size:220px 220px;
}
.brand-four-wrap{
  width:min(1380px,100%);
  min-height:690px;
  margin:0 auto;
  padding:70px 6vw 30px;
  display:grid;
  grid-template-columns:minmax(310px,.72fr) minmax(470px,1.05fr) minmax(190px,.43fr);
  align-items:center;
  gap:28px;
  position:relative;
}
.brand-four-copy{
  position:relative;
  z-index:6;
  align-self:center;
}
.brand-four-kicker{
  display:block;
  color:#ED6262;
  font:800 14px/1.2 Inter,sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.brand-four-copy h2{
  font:700 clamp(40px,4.5vw,68px)/.96 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;
  margin:0 0 24px;
  max-width:620px;
}
.brand-four-copy h2 em{
  color:#ED6262;font-style:normal;
}
.brand-four-lead{
  max-width:570px;
  margin:0;
  color:#DCBFBF!important;
  font-size:17px!important;
  line-height:1.75;
}
.brand-four-facts{
  display:flex;
  flex-wrap:wrap;
  gap:26px;
  margin-top:28px;
}
.brand-four-facts div{
  min-width:115px;
  padding-left:12px;
  border-left:2px solid rgba(237,98,98,.7);
}
.brand-four-facts b{
  display:block;
  color:#ED6262;
  font:800 23px/1.1 "Space Grotesk",sans-serif;
}
.brand-four-facts span{
  display:block;
  color:#D0A9A9;
  font-size:14px!important;
  line-height:1.45;
  margin-top:5px;
}
.brand-four-cta{
  margin-top:28px!important;
}
.brand-four-visual{
  min-height:610px;
  position:relative;
  display:grid;
  place-items:center;
  z-index:2;
}
.brand-four-image{
  position:relative;
  width:min(540px,92%);
  height:500px;
  overflow:hidden;
  clip-path:polygon(8% 0,100% 7%,94% 100%,0 92%);
  transform:rotate(-2deg);
  box-shadow:0 30px 80px rgba(0,0,0,.42);
  z-index:3;
  animation:brandFourFloat 7s ease-in-out infinite;
}
.brand-four-image:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(9,4,4,.05),rgba(9,4,4,.48));
  pointer-events:none;
}
.brand-four-image img{
  width:100%;height:100%;object-fit:cover;
  display:block;
  transform:scale(1.04);
  transition:transform .8s ease;
}
.brand-four-image:hover img{transform:scale(1.11)}
.brand-four-image-tag{
  position:absolute;
  left:28px;bottom:26px;
  color:#F7EFEF;
  font:800 13px/1.2 Inter,sans-serif;
  letter-spacing:.16em;
  z-index:2;
}
.brand-four-detail{
  position:absolute;
  width:175px;height:215px;
  right:2%;bottom:3%;
  overflow:hidden;
  clip-path:polygon(0 8%,92% 0,100% 90%,9% 100%);
  transform:rotate(4deg);
  z-index:4;
  box-shadow:0 18px 45px rgba(0,0,0,.45);
}
.brand-four-detail img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .7s ease;
}
.brand-four-detail:hover img{transform:scale(1.1)}
.brand-four-ring{
  position:absolute;
  width:510px;height:510px;
  border:1px solid rgba(237,98,98,.24);
  border-radius:50%;
  pointer-events:none;
  z-index:1;
}
.ring-one{animation:brandFourOrbit 15s linear infinite}
.ring-two{
  width:650px;height:330px;
  transform:rotate(-25deg);
  border-color:rgba(237,98,98,.13);
  animation:brandFourOrbitTwo 18s linear infinite;
}
.brand-four-dot{
  position:absolute;width:8px;height:8px;border-radius:50%;
  background:#ED6262;
  box-shadow:0 0 18px rgba(237,98,98,.8);
  z-index:5;
}
.dot-one{top:17%;right:13%;animation:brandFourPulse 2.8s ease-in-out infinite}
.dot-two{bottom:15%;left:10%;animation:brandFourPulse 3.5s ease-in-out infinite .6s}
.brand-four-names{
  align-self:center;
  display:flex;
  flex-direction:column;
  gap:0;
  position:relative;
  z-index:6;
}
.brand-four-names a{
  color:#F3E8E8!important;
  text-decoration:none;
  padding:20px 0 20px 15px;
  border-left:2px solid rgba(237,98,98,.2);
  transition:padding .35s ease,border-color .35s ease,transform .35s ease;
}
.brand-four-names a + a{border-top:1px solid rgba(237,98,98,.12)}
.brand-four-names a:hover{
  padding-left:25px;
  border-left-color:#ED6262;
  transform:translateX(5px);
}
.brand-four-names strong{
  display:inline-block;
  width:28px;
  color:#B37171;
  font-size:13px!important;
}
.brand-four-names b{
  font:800 16px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.04em;
}
.brand-four-names span{
  display:block;
  margin:7px 0 0 28px;
  color:#C99B9B;
  font-size:14px!important;
  line-height:1.4;
}
.brand-four-bottom{
  min-height:70px;
  padding:18px 6vw;
  border-top:1px solid rgba(237,98,98,.16);
  display:grid;
  grid-template-columns:1fr 1.4fr auto;
  align-items:center;
  gap:25px;
  color:#BF8888;
  font-size:14px!important;
  letter-spacing:.08em;
}
.brand-four-bottom a{
  color:#EF7878!important;
  text-decoration:none;
  font-weight:800;
  letter-spacing:0;
  font-size:14px!important;
}
@keyframes brandFourFloat{
  0%,100%{transform:rotate(-2deg) translateY(0)}
  50%{transform:rotate(1deg) translateY(-12px)}
}
@keyframes brandFourOrbit{to{transform:rotate(360deg)}}
@keyframes brandFourOrbitTwo{to{transform:rotate(335deg)}}
@keyframes brandFourPulse{50%{transform:scale(1.8);opacity:.45}}

@media(max-width:1100px){
  .brand-four-wrap{
    grid-template-columns:minmax(290px,.8fr) minmax(390px,1fr);
    padding-left:5vw;padding-right:5vw;
  }
  .brand-four-names{
    position:absolute;
    left:5vw;right:5vw;bottom:30px;
    display:grid;grid-template-columns:repeat(4,1fr);
    gap:20px;
  }
  .brand-four-names a{padding:10px 0;border-left:0;border-top:1px solid rgba(237,98,98,.2)}
  .brand-four-names a + a{border-top:1px solid rgba(237,98,98,.2)}
  .brand-four-names span{margin-left:0}
  .brand-four-bottom{display:none}
}
@media(max-width:900px){
  .brands-page #brandEcosystem.brand-four-new{min-height:auto!important}
  .brand-four-wrap{
    min-height:auto;
    padding:64px 24px 34px;
    display:flex;
    flex-direction:column;
    gap:0;
  }
  .brand-four-copy{width:100%}
  .brand-four-copy h2{font-size:clamp(38px,10vw,56px);margin-bottom:20px}
  .brand-four-lead{font-size:16px!important;line-height:1.7}
  .brand-four-facts{gap:18px;margin-top:24px}
  .brand-four-visual{
    width:100%;
    min-height:440px;
    margin-top:20px;
  }
  .brand-four-image{width:min(500px,88vw);height:390px}
  .brand-four-detail{width:135px;height:165px;right:3%;bottom:3%}
  .brand-four-ring{width:390px;height:390px}
  .ring-two{width:480px;height:260px}
  .brand-four-names{
    position:static;
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
    margin-top:18px;
  }
  .brand-four-names a{
    padding:15px 0;
    border-top:1px solid rgba(237,98,98,.2);
  }
  .brand-four-names a + a{border-top:1px solid rgba(237,98,98,.2)}
  .brand-four-names span{margin-left:28px}
}
@media(max-width:520px){
  .brand-four-wrap{padding:52px 20px 28px}
  .brand-four-kicker{font-size:14px!important}
  .brand-four-copy h2{font-size:clamp(35px,11vw,48px)}
  .brand-four-lead{font-size:15px!important}
  .brand-four-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px}
  .brand-four-facts div{min-width:0}
  .brand-four-visual{min-height:350px;margin-top:18px}
  .brand-four-image{height:310px;width:94%}
  .brand-four-detail{width:105px;height:130px;right:0;bottom:0}
  .brand-four-ring{width:310px;height:310px}
  .ring-two{width:360px;height:200px}
  .brand-four-names{grid-template-columns:1fr;gap:0}
  .brand-four-names a{padding:14px 0}
  .brand-four-names span{margin-left:28px}
}
@media(prefers-reduced-motion:reduce){
  .brand-four-image,.brand-four-ring,.brand-four-dot{animation:none!important}
}
html.light .brands-page #brandEcosystem.brand-four-new{
  background:#F2E8E8!important;
  color:#231313!important;
}
html.light .brands-page .brand-four-bg{
  background:
    radial-gradient(circle at 68% 48%,rgba(174,62,62,.17),transparent 24%),
    linear-gradient(115deg,#F6EFEF 0%,#EDDEDE 50%,#F5EDED 100%);
}
html.light .brands-page .brand-four-bg:before{opacity:.12}
html.light .brands-page .brand-four-copy h2{color:#231313}
html.light .brands-page .brand-four-lead{color:#562E2E!important}
html.light .brands-page .brand-four-facts span{color:#633535}
html.light .brands-page .brand-four-names a{color:#281515!important}
html.light .brands-page .brand-four-names span{color:#6A3939}
html.light .brands-page .brand-four-bottom{color:#753F3F}
html.light .brands-page .brand-four-image{box-shadow:0 25px 60px rgba(57,30,30,.20)}
/* Keep the shared back-to-top control identical to the other pages. */
.brands-page .back-top{
  width:43px!important;height:43px!important;
  right:20px!important;bottom:20px!important;
  border-radius:12px!important;
  background:var(--accent)!important;color:var(--ink)!important;
}
.brands-page .back-top i{font-size:16px!important}


/* ===== Contact page — pink theme ===== */
.contact-redesign{--ct-bg:#12090D;--ct-bg2:#1B0D13;--ct-ink:#F8EEF3;--ct-muted:#D2B4C0;--ct-lime:#F07FA8;--ct-line:rgba(240,127,168,.22);--ct-soft:rgba(255,255,255,.055);background:var(--ct-bg);color:var(--ct-ink);overflow:hidden}
.contact-redesign *{box-sizing:border-box}
.contact-redesign .ct-section{position:relative;width:100%;isolation:isolate}
.contact-redesign p,.contact-redesign span,.contact-redesign a,.contact-redesign label,.contact-redesign input,.contact-redesign textarea,.contact-redesign select,.contact-redesign button,.contact-redesign summary,.contact-redesign small{font-size:max(14px,1em)}
.contact-redesign h1,.contact-redesign h2,.contact-redesign h3,.contact-redesign p{margin-top:0}
.contact-redesign h1,.contact-redesign h2{font-family:"Space Grotesk",sans-serif;letter-spacing:-.045em}
.contact-redesign em{font-style:normal;color:var(--ct-lime)}
.contact-redesign .ct-kicker{display:block;color:var(--ct-lime);font:800 14px/1.2 "Space Grotesk",sans-serif;letter-spacing:.16em;text-transform:uppercase}
.contact-redesign .ct-lead{color:var(--ct-muted);line-height:1.8}
.contact-redesign .ct-hero{min-height:calc(100svh - 78px);display:grid;align-items:center;background:
 radial-gradient(circle at 76% 48%,rgba(200,239,87,.13),transparent 23%),
 linear-gradient(120deg,#07100a 0%,#0a130d 52%,#1B0D13 100%)}
.contact-redesign .ct-hero:before,.contact-redesign .ct-hero:after{content:"";position:absolute;pointer-events:none}
.contact-redesign .ct-hero:before{inset:0;background:repeating-linear-gradient(115deg,transparent 0 110px,rgba(240,127,168,.045) 111px,transparent 112px);mask-image:linear-gradient(to bottom,#000,transparent 85%)}
.contact-redesign .ct-hero:after{width:44vw;height:44vw;border:1px solid var(--ct-line);border-radius:50%;right:-18vw;bottom:-25vw;animation:ctSpin 18s linear infinite}
.contact-redesign .ct-hero-grid{width:min(1240px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);gap:50px;align-items:center;padding:62px 0}
.contact-redesign .ct-hero-copy{position:relative;z-index:3}
.contact-redesign .ct-hero h1{font-size:clamp(54px,7.2vw,104px);line-height:.91;margin:22px 0 26px;max-width:800px}
.contact-redesign .ct-type-line{display:block;min-height:1em}
.contact-redesign .ct-type-line:after{content:"|";color:var(--ct-lime);animation:ctBlink .75s steps(1) infinite}
.contact-redesign .ct-hero .ct-lead{max-width:650px;font-size:18px}
.contact-redesign .ct-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}
.contact-redesign .ct-btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:15px 21px;border-radius:12px;font-weight:800;transition:transform .3s,box-shadow .3s,background .3s}
.contact-redesign .ct-btn-main{background:var(--ct-lime);color:#220E16}
.contact-redesign .ct-btn-main:hover{transform:translateY(-5px);box-shadow:0 18px 35px rgba(240,127,168,.20)}
.contact-redesign .ct-btn-line{border:1px solid var(--ct-line);color:var(--ct-ink)}
.contact-redesign .ct-btn-line:hover{background:var(--ct-soft);transform:translateY(-5px)}
.contact-redesign .ct-mini{display:flex;flex-wrap:wrap;gap:18px;color:#D7C0C9}
.contact-redesign .ct-mini i{color:var(--ct-lime);margin-right:6px}
.contact-redesign .ct-hero-art{min-height:590px;position:relative;display:grid;place-items:center}
.contact-redesign .ct-art-glow{position:absolute;width:330px;height:330px;border-radius:50%;background:rgba(240,127,168,.20);filter:blur(45px);animation:ctPulse 4s ease-in-out infinite}
.contact-redesign .ct-orbit{position:absolute;border:1px solid var(--ct-line);border-radius:50%;animation:ctSpin 20s linear infinite}
.contact-redesign .ct-orbit-a{width:470px;height:280px;transform:rotate(28deg)}
.contact-redesign .ct-orbit-b{width:360px;height:500px;transform:rotate(-30deg);animation-direction:reverse}
.contact-redesign .ct-photo-main{width:min(390px,72%);aspect-ratio:4/5;overflow:hidden;clip-path:polygon(8% 0,100% 7%,94% 100%,0 92%);box-shadow:0 30px 70px rgba(0,0,0,.45);transform:rotate(-5deg);position:relative;z-index:2}
.contact-redesign .ct-photo-main img,.contact-redesign .ct-photo-small img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.contact-redesign .ct-photo-main:hover img,.contact-redesign .ct-photo-small:hover img{transform:scale(1.1)}
.contact-redesign .ct-photo-small{position:absolute;width:190px;height:245px;right:3%;bottom:5%;overflow:hidden;clip-path:polygon(0 8%,90% 0,100% 92%,10% 100%);border:1px solid var(--ct-line);z-index:3;transform:rotate(7deg)}
.contact-redesign .ct-art-tag{position:absolute;left:0;top:16%;z-index:4;background:#241119;border-left:3px solid var(--ct-lime);padding:15px 19px;display:flex;flex-direction:column;gap:3px;box-shadow:0 12px 35px rgba(0,0,0,.25);animation:ctFloat 4s ease-in-out infinite}
.contact-redesign .ct-art-tag strong{font:700 27px "Space Grotesk";color:var(--ct-lime)}
.contact-redesign .ct-art-tag span{color:#d1d7cd}
.contact-redesign .ct-scroll-note{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:9px;color:#9da99b;letter-spacing:.1em;text-transform:uppercase;font-size:12px}
.contact-redesign .ct-scroll-note span{width:7px;height:7px;border-radius:50%;background:var(--ct-lime);animation:ctDot 1.5s infinite}

.contact-redesign .ct-channels{padding:90px max(32px,calc((100% - 1240px)/2));background:#160A10}
.contact-redesign .ct-section-head{display:grid;grid-template-columns:1fr .72fr;gap:60px;align-items:end;margin-bottom:46px}
.contact-redesign .ct-section-head h2,.contact-redesign .ct-horizontal h2,.contact-redesign .ct-stacked-intro h2{font-size:clamp(42px,5.2vw,72px);line-height:.96;margin:18px 0 0}
.contact-redesign .ct-section-head>p{color:var(--ct-muted);font-size:17px;line-height:1.75;max-width:520px;margin:0 0 3px}
.contact-redesign .ct-channel-grid{display:grid;grid-template-columns:1.15fr 1fr .95fr;min-height:380px;border-top:1px solid var(--ct-line);border-bottom:1px solid var(--ct-line)}
.contact-redesign .ct-channel{padding:38px 32px;display:flex;flex-direction:column;align-items:flex-start;min-width:0;border-right:1px solid var(--ct-line);position:relative;overflow:hidden;transition:background .35s,transform .35s}
.contact-redesign .ct-channel:last-child{border-right:0}
.contact-redesign .ct-channel:before{content:"";position:absolute;width:180px;height:180px;border:1px solid var(--ct-line);border-radius:50%;right:-70px;top:-70px;transition:transform .6s}
.contact-redesign .ct-channel:hover{background:rgba(200,239,87,.055);transform:translateY(-8px)}
.contact-redesign .ct-channel:hover:before{transform:scale(1.6)}
.contact-redesign .ct-channel i{font-size:28px;color:var(--ct-lime);margin:38px 0 22px}
.contact-redesign .ct-channel-no{font:700 14px "Space Grotesk";color:#93a18f;letter-spacing:.1em}
.contact-redesign .ct-channel h3{font:700 clamp(24px,2.2vw,34px) "Space Grotesk";margin-bottom:12px}
.contact-redesign .ct-channel p{color:var(--ct-muted);line-height:1.7;max-width:340px}
.contact-redesign .ct-channel b{margin-top:auto;color:var(--ct-lime);font-size:14px}
.contact-redesign .ct-channel b i{font-size:12px;margin:0 0 0 7px}
.contact-redesign .ct-channel-line{display:flex;align-items:center;gap:18px;margin-top:26px;color:#8f9b8c;letter-spacing:.14em;font-size:12px}
.contact-redesign .ct-channel-line span{height:1px;background:var(--ct-line);flex:1}

.contact-redesign .ct-location{display:grid;grid-template-columns:1.08fr .92fr;min-height:650px;background:#1B0D13}
.contact-redesign .ct-location-map{min-height:650px;position:relative;overflow:hidden}
.contact-redesign .ct-location-map>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.26;filter:saturate(.65);transition:transform 1.2s}
.contact-redesign .ct-location:hover .ct-location-map>img{transform:scale(1.06)}
.contact-redesign .ct-map-grid{position:absolute;inset:0;z-index:1;background:linear-gradient(rgba(240,127,168,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(240,127,168,.09) 1px,transparent 1px);background-size:48px 48px;transform:perspective(500px) rotateX(45deg) scale(1.4);transform-origin:center bottom}
.contact-redesign .ct-map-route{position:absolute;z-index:2;border:1px solid var(--ct-lime);opacity:.55;border-radius:50%;width:500px;height:220px;left:22%;top:42%;transform:rotate(-18deg);animation:ctRoute 5s ease-in-out infinite}
.contact-redesign .route-two{width:360px;height:180px;left:42%;top:26%;transform:rotate(32deg);animation-delay:-2s}
.contact-redesign .ct-map-pin{position:absolute;z-index:4;left:53%;top:48%;width:62px;height:62px;border:1px solid var(--ct-lime);border-radius:50%;display:grid;place-items:center;color:#220E16;background:var(--ct-lime);box-shadow:0 0 0 14px rgba(240,127,168,.09),0 0 55px rgba(200,239,87,.35);animation:ctPin 2.4s infinite}
.contact-redesign .ct-map-label{position:absolute;z-index:4;left:7%;bottom:8%;display:flex;flex-direction:column;padding:18px 21px;background:rgba(7,16,10,.88);border-left:2px solid var(--ct-lime);backdrop-filter:blur(8px)}
.contact-redesign .ct-map-label small{color:var(--ct-lime);letter-spacing:.15em}
.contact-redesign .ct-map-label strong{font:700 28px "Space Grotesk";margin:3px 0}
.contact-redesign .ct-map-label span{color:#c0c8bd}
.contact-redesign .ct-location-copy{padding:85px clamp(35px,7vw,100px);display:flex;flex-direction:column;justify-content:center}
.contact-redesign .ct-location-copy h2{font-size:clamp(46px,5vw,74px);line-height:.95;margin:20px 0 25px}
.contact-redesign .ct-location-copy>p{color:var(--ct-muted);font-size:17px;line-height:1.8;max-width:520px}
.contact-redesign .ct-address{display:flex;gap:17px;align-items:flex-start;margin:25px 0 18px;padding:19px 0;border-top:1px solid var(--ct-line);border-bottom:1px solid var(--ct-line)}
.contact-redesign .ct-address>i{color:var(--ct-lime);font-size:20px;margin-top:4px}
.contact-redesign .ct-address div{display:flex;flex-direction:column;gap:2px}
.contact-redesign .ct-address strong{font-size:18px}.contact-redesign .ct-address span,.ct-location-meta{color:#aeb9aa}
.contact-redesign .ct-location-meta{display:flex;flex-direction:column;gap:9px}
.contact-redesign .ct-location-meta i{width:20px;color:var(--ct-lime)}
.contact-redesign .ct-text-link{color:var(--ct-lime);font-weight:800;margin-top:25px;width:max-content;border-bottom:1px solid var(--ct-lime);padding-bottom:5px}

.contact-redesign .ct-horizontal{padding:88px 0 74px;background:#12090D}
.contact-redesign .ct-horizontal-head{width:min(1240px,calc(100% - 64px));margin:0 auto 38px;display:grid;grid-template-columns:1fr .8fr;gap:50px;align-items:end}
.contact-redesign .ct-horizontal-head p{color:var(--ct-muted);margin:0;line-height:1.7}
.contact-redesign .ct-lane-window{overflow:hidden;border-top:1px solid var(--ct-line);border-bottom:1px solid var(--ct-line)}
.contact-redesign .ct-lane-track{display:flex;width:max-content;will-change:transform}
.contact-redesign .ct-lane{width:min(430px,76vw);min-height:350px;padding:34px 35px;border-right:1px solid var(--ct-line);display:flex;flex-direction:column;position:relative;overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.025),transparent)}
.contact-redesign .ct-lane:after{content:"";position:absolute;width:160px;height:160px;border:1px solid var(--ct-line);border-radius:50%;right:-75px;bottom:-75px;transition:transform .7s}
.contact-redesign .ct-lane:hover:after{transform:scale(1.7)}
.contact-redesign .ct-lane>span{color:#829080;font:700 13px "Space Grotesk";letter-spacing:.12em}
.contact-redesign .ct-lane>i{color:var(--ct-lime);font-size:30px;margin:38px 0 18px}
.contact-redesign .ct-lane h3{font:700 28px "Space Grotesk";margin-bottom:10px}
.contact-redesign .ct-lane p{color:var(--ct-muted);line-height:1.7;max-width:340px}
.contact-redesign .ct-lane a{color:var(--ct-lime);font-weight:800;margin-top:auto}
.contact-redesign .ct-drag-hint{text-align:center;color:#8c998a;letter-spacing:.14em;text-transform:uppercase;font-size:12px;margin-top:20px}
.contact-redesign .ct-drag-hint span{color:var(--ct-lime);margin:0 8px}

.contact-redesign .ct-pinned{min-height:155vh;background:radial-gradient(circle at 72% 50%,rgba(200,239,87,.11),transparent 26%),#1B0D13;display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;padding:0 max(32px,calc((100% - 1240px)/2))}
.contact-redesign .ct-pin-copy{position:sticky;top:120px;height:max-content;padding:110px 0 70px;align-self:start}
.contact-redesign .ct-pin-copy h2{font-size:clamp(48px,5.3vw,76px);line-height:.94;margin:18px 0 25px}
.contact-redesign .ct-pin-copy p{color:var(--ct-muted);font-size:17px;line-height:1.8;max-width:450px}
.contact-redesign .ct-progress{height:3px;background:rgba(255,255,255,.12);max-width:350px;margin:32px 0 14px;overflow:hidden}
.contact-redesign .ct-progress span{display:block;width:33%;height:100%;background:var(--ct-lime);transition:width .5s}
.contact-redesign .ct-pin-copy small{color:#8d9a8b;letter-spacing:.12em}
.contact-redesign .ct-pin-stage{position:relative;padding:170px 0 100px;min-height:1300px}
.contact-redesign .ct-pin-step{min-height:245px;display:grid;grid-template-columns:70px 1fr;gap:22px;align-items:start;padding:30px 0;border-bottom:1px solid rgba(200,239,87,.14);opacity:.28;transform:translateX(40px);transition:opacity .5s,transform .6s}
.contact-redesign .ct-pin-step.is-active{opacity:1;transform:none}
.contact-redesign .ct-pin-step>b{width:58px;height:58px;border:1px solid var(--ct-line);border-radius:50%;display:grid;place-items:center;color:var(--ct-lime);font-family:"Space Grotesk"}
.contact-redesign .ct-pin-step strong{display:block;font:700 30px "Space Grotesk";margin-bottom:9px}
.contact-redesign .ct-pin-step span{color:var(--ct-muted);line-height:1.7;display:block;max-width:460px}
.contact-redesign .ct-pin-image{width:68%;aspect-ratio:1.35;overflow:hidden;margin:25px 0 0 auto;clip-path:polygon(4% 0,100% 7%,94% 100%,0 90%);border:1px solid var(--ct-line)}
.contact-redesign .ct-pin-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.ct-pin-image:hover img{transform:scale(1.08)}

.contact-redesign .ct-stacked{padding:95px max(32px,calc((100% - 1100px)/2));background:#12090D;display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}
.contact-redesign .ct-stacked-intro{align-self:start}
.contact-redesign .ct-stacked-intro h2{margin-top:18px}
.contact-redesign .ct-stacked-intro p{color:var(--ct-muted);line-height:1.8;max-width:370px;margin-top:25px}
.contact-redesign .ct-stack{display:flex;flex-direction:column;padding-top:15px}
.contact-redesign .ct-stack-card{background:#241119;border:1px solid var(--ct-line);margin-bottom:-1px;position:relative;transition:transform .45s,background .35s;box-shadow:0 12px 35px rgba(0,0,0,.18)}
.contact-redesign .ct-stack-card:nth-child(2){transform:translateX(24px);z-index:2}.contact-redesign .ct-stack-card:nth-child(3){transform:translateX(48px);z-index:3}
.contact-redesign .ct-stack-card:hover{transform:translateX(0) translateY(-7px);background:#2D151F}
.contact-redesign .ct-stack-card summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px 1fr 24px;gap:16px;align-items:center;padding:28px 25px;font-size:17px;font-weight:700}
.contact-redesign .ct-stack-card summary::-webkit-details-marker{display:none}
.contact-redesign .ct-stack-card summary span{color:var(--ct-lime);font:700 13px "Space Grotesk"}
.contact-redesign .ct-stack-card summary i{transition:transform .3s}.ct-stack-card[open] summary i{transform:rotate(45deg)}
.contact-redesign .ct-stack-card>p{padding:0 25px 28px 89px;color:var(--ct-muted);line-height:1.75;margin:0;max-width:700px}

.contact-redesign .ct-form-section{padding:100px max(32px,calc((100% - 1240px)/2));background:linear-gradient(145deg,#101a12,#0a120d);display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;border-top:1px solid var(--ct-line)}
.contact-redesign .ct-form-intro h2{font-size:clamp(50px,5.6vw,82px);line-height:.92;margin:18px 0 25px}
.contact-redesign .ct-form-intro>p{color:var(--ct-muted);font-size:17px;line-height:1.8;max-width:430px}
.contact-redesign .ct-form-promise{display:flex;flex-direction:column;gap:13px;margin-top:32px;color:#CDB7C1}
.contact-redesign .ct-form-promise i{color:var(--ct-lime);margin-right:9px}
.contact-redesign .ct-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-content:start}
.contact-redesign .ct-field{display:flex;flex-direction:column;gap:8px}
.contact-redesign .ct-field-full{grid-column:1/-1}
.contact-redesign .ct-field label{font-weight:700;color:#E9DCE2}
.contact-redesign .ct-field input,.contact-redesign .ct-field select,.contact-redesign .ct-field textarea{width:100%;border:1px solid rgba(240,127,168,.20);background:#160A10;color:#F8EFF3;border-radius:10px;padding:14px 15px;outline:0;transition:border-color .25s,box-shadow .25s,transform .25s;resize:vertical}
.contact-redesign .ct-field input:focus,.contact-redesign .ct-field select:focus,.contact-redesign .ct-field textarea:focus{border-color:var(--ct-lime);box-shadow:0 0 0 4px rgba(240,127,168,.09);transform:translateY(-2px)}
.contact-redesign .ct-field input::placeholder,.contact-redesign .ct-field textarea::placeholder{color:#A98B98}
.contact-redesign .ct-submit{grid-column:1/-1;border:0;border-radius:11px;background:var(--ct-lime);color:#220E16;padding:17px 20px;font-weight:800;font-size:16px;transition:transform .3s,box-shadow .3s}
.contact-redesign .ct-submit:hover{transform:translateY(-4px);box-shadow:0 18px 35px rgba(240,127,168,.20)}
.contact-redesign .ct-submit i{margin-left:8px}.contact-redesign .ct-form-status{grid-column:1/-1;min-height:22px;color:var(--ct-lime);font-weight:700;margin:0}
.contact-redesign .ct-form-status.error{color:#FF9DBA}

.contact-redesign .ct-reveal{opacity:0;transform:translateY(35px);transition:opacity .75s,transform .75s}.contact-redesign .ct-reveal.in{opacity:1;transform:none}
.contact-redesign .ct-shake{animation:ctShake .4s ease}

@keyframes ctBlink{50%{opacity:0}}@keyframes ctPulse{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:.9}}
@keyframes ctSpin{to{transform:rotate(360deg)}}@keyframes ctFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes ctDot{0%,100%{box-shadow:0 0 0 0 rgba(200,239,87,.5)}50%{box-shadow:0 0 0 9px rgba(240,127,168,0)}}
@keyframes ctPin{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes ctRoute{50%{transform:rotate(-18deg) translate(15px,-8px)}}@keyframes ctShake{25%{transform:translateX(-7px)}75%{transform:translateX(7px)}}

@media (prefers-reduced-motion:reduce){
 .contact-redesign *,.contact-redesign *:before,.contact-redesign *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}
@media (max-width:1100px){
 .contact-redesign .ct-hero-grid{grid-template-columns:1fr .8fr;gap:25px}.contact-redesign .ct-hero-art{min-height:500px}
 .contact-redesign .ct-photo-main{width:300px}.contact-redesign .ct-photo-small{width:150px;height:200px}
 .contact-redesign .ct-channel-grid{grid-template-columns:1fr 1fr}.contact-redesign .ct-channel:last-child{grid-column:1/-1;border-top:1px solid var(--ct-line);border-right:0}
 .contact-redesign .ct-location-copy{padding:65px 45px}.contact-redesign .ct-pinned{gap:30px}.contact-redesign .ct-stacked{gap:40px}
}
@media (max-width:767px){
 .contact-redesign .ct-hero{min-height:auto}.contact-redesign .ct-hero-grid{width:calc(100% - 32px);grid-template-columns:1fr;gap:20px;padding:58px 0 65px}
 .contact-redesign .ct-hero h1{font-size:clamp(48px,14vw,66px);line-height:.94;margin:18px 0 20px}.contact-redesign .ct-hero .ct-lead{font-size:15px;line-height:1.7}
 .contact-redesign .ct-actions{margin:24px 0}.contact-redesign .ct-btn{width:100%}.contact-redesign .ct-mini{gap:10px 15px}.contact-redesign .ct-mini span{font-size:14px}
 .contact-redesign .ct-hero-art{min-height:410px}.contact-redesign .ct-photo-main{width:245px}.contact-redesign .ct-photo-small{width:120px;height:160px;right:0;bottom:3%}.contact-redesign .ct-orbit-a{width:320px;height:200px}.contact-redesign .ct-orbit-b{width:250px;height:340px}.contact-redesign .ct-art-tag{left:0;top:7%;padding:11px 13px}.contact-redesign .ct-art-tag strong{font-size:21px}.contact-redesign .ct-scroll-note{display:none}
 .contact-redesign .ct-channels{padding:65px 16px}.contact-redesign .ct-section-head{display:block;margin-bottom:30px}.contact-redesign .ct-section-head h2,.contact-redesign .ct-horizontal h2,.contact-redesign .ct-stacked-intro h2{font-size:clamp(39px,11vw,54px);line-height:.98}.contact-redesign .ct-section-head>p{font-size:15px;margin-top:20px}
 .contact-redesign .ct-channel-grid{display:block;min-height:0}.contact-redesign .ct-channel{min-height:290px;border-right:0;border-bottom:1px solid var(--ct-line);padding:28px 22px}.contact-redesign .ct-channel:last-child{border-bottom:0}.contact-redesign .ct-channel i{margin:28px 0 16px}
 .contact-redesign .ct-location{display:flex;flex-direction:column;min-height:0}.contact-redesign .ct-location-map{min-height:390px}.contact-redesign .ct-location-copy{padding:55px 22px 65px}.contact-redesign .ct-location-copy h2{font-size:clamp(43px,12vw,58px)}.contact-redesign .ct-location-copy>p{font-size:15px}
 .contact-redesign .ct-map-route{width:320px;height:150px;left:7%;top:42%}.contact-redesign .route-two{width:250px;height:120px;left:20%;top:28%}.contact-redesign .ct-map-pin{left:47%;top:44%}.contact-redesign .ct-map-label{left:18px;bottom:18px}.contact-redesign .ct-map-label strong{font-size:22px}
 .contact-redesign .ct-horizontal{padding:65px 0}.contact-redesign .ct-horizontal-head{width:calc(100% - 32px);display:block;margin-bottom:27px}.contact-redesign .ct-horizontal-head p{font-size:15px;margin-top:18px}.contact-redesign .ct-lane-window{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.contact-redesign .ct-lane-track{width:max-content}.contact-redesign .ct-lane{width:82vw;min-height:320px;padding:28px 25px}.contact-redesign .ct-drag-hint{font-size:11px}
 .contact-redesign .ct-pinned{min-height:auto;display:block;padding:0 16px}.contact-redesign .ct-pin-copy{position:relative;top:auto;padding:65px 6px 25px}.contact-redesign .ct-pin-copy h2{font-size:clamp(44px,12vw,60px)}.contact-redesign .ct-pin-copy p{font-size:15px}.contact-redesign .ct-pin-stage{min-height:0;padding:10px 0 60px}.contact-redesign .ct-pin-step{min-height:0;grid-template-columns:52px 1fr;gap:14px;padding:25px 7px;opacity:.55;transform:none}.contact-redesign .ct-pin-step>b{width:45px;height:45px}.contact-redesign .ct-pin-step strong{font-size:23px}.contact-redesign .ct-pin-step span{font-size:14px}.contact-redesign .ct-pin-image{width:100%;margin:25px 0 0;aspect-ratio:1.2}
 .contact-redesign .ct-stacked{padding:65px 16px;display:block}.contact-redesign .ct-stacked-intro p{font-size:15px}.contact-redesign .ct-stack{padding-top:25px}.contact-redesign .ct-stack-card,.contact-redesign .ct-stack-card:nth-child(2),.contact-redesign .ct-stack-card:nth-child(3){transform:none;margin-bottom:10px}.contact-redesign .ct-stack-card summary{padding:21px 17px;grid-template-columns:35px 1fr 20px;font-size:15px}.contact-redesign .ct-stack-card>p{padding:0 17px 22px 69px;font-size:14px}
 .contact-redesign .ct-form-section{padding:65px 16px;display:block}.contact-redesign .ct-form-intro h2{font-size:clamp(47px,13vw,65px)}.contact-redesign .ct-form-intro>p{font-size:15px}.contact-redesign .ct-form{margin-top:38px;display:grid;grid-template-columns:1fr;gap:15px}.contact-redesign .ct-field-full,.contact-redesign .ct-submit,.contact-redesign .ct-form-status{grid-column:auto}
}
@media (min-width:768px) and (max-width:1023px){
 .contact-redesign .ct-hero h1{font-size:58px}.contact-redesign .ct-hero-grid{grid-template-columns:1fr 1fr}.contact-redesign .ct-hero-art{min-height:470px}.contact-redesign .ct-photo-main{width:260px}.contact-redesign .ct-photo-small{width:125px;height:170px}
 .contact-redesign .ct-location{grid-template-columns:1fr}.contact-redesign .ct-location-map{min-height:460px}.contact-redesign .ct-pinned{grid-template-columns:1fr;min-height:auto}.contact-redesign .ct-pin-copy{position:relative;top:auto;padding:75px 0 15px}.contact-redesign .ct-pin-stage{min-height:0;padding:20px 0 70px}.contact-redesign .ct-stacked,.contact-redesign .ct-form-section{grid-template-columns:1fr;gap:30px}
}


/* ===== CONTACT PINK PALETTE — FINAL OVERRIDE ===== */
.contact-redesign{
  --ct-bg:#12090D !important;
  --ct-bg2:#1B0D13 !important;
  --ct-ink:#F8EEF3 !important;
  --ct-muted:#D2B4C0 !important;
  --ct-lime:#F07FA8 !important;
  --ct-line:rgba(240,127,168,.25) !important;
  --ct-soft:rgba(255,255,255,.055) !important;
}
.contact-redesign em,.contact-redesign .ct-kicker,.contact-redesign .ct-mini i,.contact-redesign .ct-form-promise i,.contact-redesign .ct-form-status{color:#F07FA8 !important}
.contact-redesign .ct-btn-main,.contact-redesign .ct-submit{background:#F07FA8 !important;color:#220E16 !important}
.contact-redesign .ct-btn-main:hover,.contact-redesign .ct-submit:hover{box-shadow:0 18px 35px rgba(240,127,168,.24) !important}
.contact-redesign .ct-field input:focus,.contact-redesign .ct-field select:focus,.contact-redesign .ct-field textarea:focus{border-color:#F07FA8 !important;box-shadow:0 0 0 4px rgba(240,127,168,.11) !important}
.contact-redesign .ct-field input,.contact-redesign .ct-field select,.contact-redesign .ct-field textarea{border-color:rgba(240,127,168,.22) !important;background:#160A10 !important;color:#F8EEF3 !important}
.contact-redesign .ct-stack-card{border-color:rgba(240,127,168,.22) !important;background:#241119 !important}
.contact-redesign .ct-stack-card:hover{background:#2D151F !important}
.contact-redesign .ct-photo-main,.contact-redesign .ct-photo-small{border-color:rgba(240,127,168,.45) !important}
.contact-redesign .ct-orbit,.contact-redesign .ct-progress span{border-color:#F07FA8 !important;background-color:#F07FA8}
@keyframes ctDotPink{0%,100%{box-shadow:0 0 0 0 rgba(240,127,168,.5)}50%{box-shadow:0 0 0 9px rgba(240,127,168,0)}}
.contact-redesign .ct-map-pin,.contact-redesign .ct-art-tag i{color:#F07FA8 !important}


/* =========================================================
   CONTACT PAGE — FINAL PINK MODE + SPLIT HERO
   No green/lime tones on Contact page.
   Light palette: #FBEFEF
   Dark accent:  #F29191
   ========================================================= */
.contact-page .contact-redesign{
  --ct-pink:#F29191;
  --ct-light:#FBEFEF;
  --ct-dark:#140A0D;
  --ct-dark-2:#211116;
  --ct-ink:#F9F1F3;
  --ct-muted:#D8C2C9;
  --ct-line:rgba(242,145,145,.30);
  --ct-soft:rgba(242,145,145,.08);
  background:var(--ct-dark);
  color:var(--ct-ink);
}

/* Remove every old green accent from the contact page. */
.contact-page .contact-redesign .ct-lime,
.contact-page .contact-redesign em,
.contact-page .contact-redesign .ct-kicker,
.contact-page .contact-redesign .ct-mini i,
.contact-page .contact-redesign .ct-form-promise i,
.contact-page .contact-redesign .ct-form-status,
.contact-page .contact-redesign .ct-art-tag strong,
.contact-page .contact-redesign .ct-channel b,
.contact-page .contact-redesign .ct-map-label small,
.contact-page .contact-redesign .ct-address i,
.contact-page .contact-redesign .ct-location-meta i,
.contact-page .contact-redesign .ct-text-link,
.contact-page .contact-redesign .ct-lane>a,
.contact-page .contact-redesign .ct-pin-step.is-active>b,
.contact-page .contact-redesign .ct-progress span{
  color:var(--ct-pink)!important;
}
.contact-page .contact-redesign .ct-btn-main,
.contact-page .contact-redesign .ct-submit{
  background:var(--ct-pink)!important;
  color:#241014!important;
}
.contact-page .contact-redesign .ct-btn-main:hover,
.contact-page .contact-redesign .ct-submit:hover{
  box-shadow:0 18px 40px rgba(242,145,145,.28)!important;
}
.contact-page .contact-redesign .ct-btn-line:hover,
.contact-page .contact-redesign .ct-channel:hover{
  background:rgba(242,145,145,.07)!important;
}
.contact-page .contact-redesign .ct-orbit,
.contact-page .contact-redesign .ct-photo-main,
.contact-page .contact-redesign .ct-photo-small,
.contact-page .contact-redesign .ct-map-route,
.contact-page .contact-redesign .ct-map-pin,
.contact-page .contact-redesign .ct-stack-card,
.contact-page .contact-redesign .ct-field input,
.contact-page .contact-redesign .ct-field select,
.contact-page .contact-redesign .ct-field textarea{
  border-color:rgba(242,145,145,.30)!important;
}

/* Light mode: pale pink page, dark readable typography. */
html.light .contact-page .contact-redesign{
  --ct-bg:var(--ct-light);
  --ct-ink:#26171A;
  --ct-muted:#624B50;
  --ct-dark:#FBEFEF;
  --ct-dark-2:#F6E3E3;
  --ct-line:rgba(73,39,44,.18);
  --ct-soft:rgba(242,145,145,.12);
  background:#FBEFEF!important;
  color:#26171A!important;
}
html.light .contact-page .contact-redesign .ct-lead,
html.light .contact-page .contact-redesign .ct-section-head>p,
html.light .contact-page .contact-redesign .ct-location-copy>p,
html.light .contact-page .contact-redesign .ct-horizontal-head p,
html.light .contact-page .contact-redesign .ct-stacked-intro p,
html.light .contact-page .contact-redesign .ct-form-intro>p{
  color:#624B50!important;
}
html.light .contact-page .contact-redesign .ct-btn-line{color:#26171A!important;border-color:rgba(73,39,44,.22)!important}
html.light .contact-page .contact-redesign .ct-channel,
html.light .contact-page .contact-redesign .ct-stack-card,
html.light .contact-page .contact-redesign .ct-field input,
html.light .contact-page .contact-redesign .ct-field select,
html.light .contact-page .contact-redesign .ct-field textarea{
  color:#26171A!important;
  background:#F6E3E3!important;
}
html.light .contact-page .contact-redesign .ct-field label,
html.light .contact-page .contact-redesign .ct-channel h3,
html.light .contact-page .contact-redesign .ct-channel p,
html.light .contact-page .contact-redesign .ct-location-copy h2,
html.light .contact-page .contact-redesign .ct-horizontal h2,
html.light .contact-page .contact-redesign .ct-stacked-intro h2,
html.light .contact-page .contact-redesign .ct-form-intro h2{
  color:#26171A!important;
}
html.light .contact-page .contact-redesign .ct-field input::placeholder,
html.light .contact-page .contact-redesign .ct-field textarea::placeholder{color:#80656B!important}
html.light .contact-page .contact-redesign .ct-location,
html.light .contact-page .contact-redesign .ct-channels,
html.light .contact-page .contact-redesign .ct-horizontal,
html.light .contact-page .contact-redesign .ct-stacked,
html.light .contact-page .contact-redesign .ct-form-section{background:#FBEFEF!important}

/* Dark mode: pink/coral accent, never green. */
html.dark .contact-page .contact-redesign{
  background:#140A0D!important;
  color:#F9F1F3!important;
}
html.dark .contact-page .contact-redesign .ct-lead,
html.dark .contact-page .contact-redesign .ct-section-head>p,
html.dark .contact-page .contact-redesign .ct-location-copy>p,
html.dark .contact-page .contact-redesign .ct-horizontal-head p,
html.dark .contact-page .contact-redesign .ct-stacked-intro p,
html.dark .contact-page .contact-redesign .ct-form-intro>p{color:#D8C2C9!important}
html.dark .contact-page .contact-redesign .ct-field input,
html.dark .contact-page .contact-redesign .ct-field select,
html.dark .contact-page .contact-redesign .ct-field textarea{background:#211116!important;color:#F9F1F3!important}

/* ----- Section 01: split-screen hero ----- */
.contact-page .ct-hero-split{
  min-height:calc(100svh - 78px);
  display:grid!important;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  overflow:hidden;
  background:#140A0D!important;
}
html.light .contact-page .ct-hero-split{background:#FBEFEF!important}
.contact-page .ct-split-panel{position:relative;min-width:0;overflow:hidden}
.contact-page .ct-split-copy{
  display:flex;
  align-items:center;
  border-right:1px solid rgba(242,145,145,.22);
  background:linear-gradient(135deg,#140A0D 0%,#1C0D12 72%,#2A1419 100%);
}
html.light .contact-page .ct-split-copy{background:#FBEFEF!important}
.contact-page .ct-split-inner{
  width:min(620px,calc(100% - 90px));
  margin-left:max(40px,calc((100vw - 1240px)/2));
  padding:70px 0;
  position:relative;
  z-index:5;
}
.contact-page .ct-split-copy:after{
  content:"";
  position:absolute;
  width:360px;height:360px;
  right:-210px;bottom:-210px;
  border:1px solid rgba(242,145,145,.18);
  border-radius:50%;
  box-shadow:0 0 100px rgba(242,145,145,.10);
  animation:ctSplitOrbit 12s linear infinite;
}
.contact-page .ct-hero-split h1{
  font-size:clamp(58px,7vw,100px)!important;
  line-height:.88!important;
  margin:22px 0 28px!important;
  max-width:650px!important;
}
.contact-page .ct-hero-split .ct-type-line{display:block;min-height:1em}
.contact-page .ct-hero-split .ct-lime{display:block;color:var(--ct-pink)!important}
.contact-page .ct-hero-split .ct-lead{max-width:590px;font-size:18px;line-height:1.72}
.contact-page .ct-hero-split .ct-actions{margin:28px 0 25px}
.contact-page .ct-hero-split .ct-mini{gap:16px;color:#CBB6BD}
html.light .contact-page .ct-hero-split .ct-mini{color:#624B50}

.contact-page .ct-split-visual{
  min-height:calc(100svh - 78px);
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 50%,rgba(242,145,145,.17),transparent 35%),
    linear-gradient(135deg,#1A0C10 0%,#241218 100%);
}
html.light .contact-page .ct-split-visual{
  background:
    radial-gradient(circle at 50% 50%,rgba(242,145,145,.34),transparent 36%),
    #FBEFEF!important;
}
.contact-page .ct-split-visual:before{
  content:"";position:absolute;inset:0;
  background:repeating-linear-gradient(120deg,transparent 0 92px,rgba(242,145,145,.07) 93px,transparent 94px);
  mask-image:linear-gradient(to bottom,#000,transparent 92%);
}
.contact-page .ct-split-image{
  position:absolute;overflow:hidden;z-index:3;
  box-shadow:0 28px 70px rgba(0,0,0,.38);
  border:1px solid rgba(242,145,145,.38);
  transition:transform .65s cubic-bezier(.2,.8,.2,1),clip-path .65s ease;
}
.contact-page .ct-split-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform 1.2s ease,filter .6s ease}
.contact-page .ct-split-image:hover img{transform:scale(1.08)}
.contact-page .ct-split-image.image-a{
  width:min(410px,55%);height:min(500px,67%);
  left:13%;top:16%;
  clip-path:polygon(8% 0,100% 5%,94% 100%,0 94%);
  transform:rotate(-5deg);
}
.contact-page .ct-split-image.image-b{
  width:min(220px,30%);height:min(300px,40%);
  right:9%;bottom:12%;
  clip-path:polygon(0 8%,91% 0,100% 92%,9% 100%);
  transform:rotate(7deg);
  z-index:4;
}
.contact-page .ct-split-image.image-a:hover{transform:rotate(-2deg) translateY(-8px)}
.contact-page .ct-split-image.image-b:hover{transform:rotate(3deg) translateY(-8px)}
.contact-page .ct-split-ring{position:absolute;border:1px solid rgba(242,145,145,.42);border-radius:50%;pointer-events:none}
.contact-page .ct-split-ring.ring-a{width:470px;height:470px;animation:ctSplitOrbit 18s linear infinite}
.contact-page .ct-split-ring.ring-b{width:310px;height:520px;transform:rotate(35deg);animation:ctSplitOrbitReverse 14s linear infinite}
.contact-page .ct-split-label{
  position:absolute;z-index:6;left:8%;top:12%;
  display:flex;flex-direction:column;gap:2px;
  padding:15px 18px;background:#211116;border-left:3px solid var(--ct-pink);
  box-shadow:0 15px 35px rgba(0,0,0,.28);
  animation:ctSplitFloat 4s ease-in-out infinite;
}
html.light .contact-page .ct-split-label{background:#FFF7F7;color:#26171A}
.contact-page .ct-split-label small{font-size:12px!important;letter-spacing:.16em;color:var(--ct-pink)}
.contact-page .ct-split-label strong{font:700 31px/1 "Space Grotesk";color:var(--ct-pink)}
.contact-page .ct-split-label span{font-size:14px!important;color:#D8C2C9}
html.light .contact-page .ct-split-label span{color:#624B50}
.contact-page .ct-split-cross{position:absolute;right:8%;top:49%;width:34px;height:34px;z-index:5}
.contact-page .ct-split-cross span{position:absolute;left:16px;top:0;width:1px;height:34px;background:var(--ct-pink)}
.contact-page .ct-split-cross span+span{transform:rotate(90deg)}
.contact-page .ct-split-line{position:absolute;z-index:8;top:0;bottom:0;left:50%;width:1px;background:rgba(242,145,145,.55);box-shadow:0 0 24px rgba(242,145,145,.22)}
.contact-page .ct-scroll-note{z-index:9;color:#C4ADB4!important}
html.light .contact-page .ct-scroll-note{color:#624B50!important}

/* Split-screen entrance: panels open from the center. */
.contact-page .ct-split-copy{animation:ctPanelLeft 1s cubic-bezier(.77,0,.18,1) both}
.contact-page .ct-split-visual{animation:ctPanelRight 1s cubic-bezier(.77,0,.18,1) both}
.contact-page .ct-split-inner>*{animation:ctHeroText .8s cubic-bezier(.2,.8,.2,1) both;animation-delay:.55s}
.contact-page .ct-split-inner h1{animation-delay:.68s}
.contact-page .ct-split-inner .ct-lead{animation-delay:.78s}
.contact-page .ct-split-inner .ct-actions{animation-delay:.88s}
.contact-page .ct-split-inner .ct-mini{animation-delay:.98s}

@keyframes ctPanelLeft{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}
@keyframes ctPanelRight{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ctHeroText{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:none}}
@keyframes ctSplitOrbit{to{transform:rotate(360deg)}}
@keyframes ctSplitOrbitReverse{to{transform:rotate(-360deg)}}
@keyframes ctSplitFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

@media(max-width:1100px){
  .contact-page .ct-split-inner{width:calc(100% - 60px);margin-left:30px;padding:55px 0}
  .contact-page .ct-hero-split h1{font-size:clamp(52px,7vw,76px)!important}
  .contact-page .ct-hero-split .ct-lead{font-size:16px}
  .contact-page .ct-split-image.image-a{width:55%;height:58%;left:10%;top:20%}
  .contact-page .ct-split-image.image-b{width:27%;height:36%;right:7%;bottom:16%}
  .contact-page .ct-split-ring.ring-a{width:390px;height:390px}
}
@media(max-width:767px){
  .contact-page .ct-hero-split{display:block!important;min-height:0!important}
  .contact-page .ct-split-line{display:none}
  .contact-page .ct-split-copy{min-height:520px;border-right:0;border-bottom:1px solid rgba(242,145,145,.24)}
  .contact-page .ct-split-inner{width:calc(100% - 34px);margin:0 auto;padding:52px 0 38px}
  .contact-page .ct-hero-split h1{font-size:clamp(49px,14vw,67px)!important;line-height:.9!important;margin:17px 0 20px!important}
  .contact-page .ct-hero-split .ct-lead{font-size:15px;line-height:1.68}
  .contact-page .ct-hero-split .ct-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .contact-page .ct-hero-split .ct-btn{width:100%;min-height:48px}
  .contact-page .ct-hero-split .ct-mini{gap:9px 13px}
  .contact-page .ct-split-visual{min-height:500px!important;height:500px}
  .contact-page .ct-split-image.image-a{width:64%;height:68%;left:7%;top:12%;transform:rotate(-4deg)}
  .contact-page .ct-split-image.image-b{width:34%;height:46%;right:5%;bottom:8%;transform:rotate(6deg)}
  .contact-page .ct-split-ring.ring-a{width:330px;height:330px}
  .contact-page .ct-split-ring.ring-b{width:230px;height:390px}
  .contact-page .ct-split-label{left:5%;top:7%;padding:12px 14px}
  .contact-page .ct-split-label strong{font-size:24px}
  .contact-page .ct-split-cross{right:7%;top:46%}
  .contact-page .ct-scroll-note{display:none}
}
@media(prefers-reduced-motion:reduce){
  .contact-page .ct-split-copy,.contact-page .ct-split-visual,.contact-page .ct-split-inner>*{animation:none!important}
}

/* CONTACT — remove remaining green backgrounds from older rules */
.contact-page .contact-redesign .ct-hero,
.contact-page .contact-redesign .ct-channels,
.contact-page .contact-redesign .ct-location,
.contact-page .contact-redesign .ct-horizontal,
.contact-page .contact-redesign .ct-pinned,
.contact-page .contact-redesign .ct-stacked,
.contact-page .contact-redesign .ct-form-section{
  background:#140A0D!important;
}
html.light .contact-page .contact-redesign .ct-hero,
html.light .contact-page .contact-redesign .ct-channels,
html.light .contact-page .contact-redesign .ct-location,
html.light .contact-page .contact-redesign .ct-horizontal,
html.light .contact-page .contact-redesign .ct-pinned,
html.light .contact-page .contact-redesign .ct-stacked,
html.light .contact-page .contact-redesign .ct-form-section{
  background:#FBEFEF!important;
}
.contact-page .contact-redesign .ct-hero:before,
.contact-page .contact-redesign .ct-location .ct-map-grid,
.contact-page .contact-redesign .ct-pinned:before{
  background-image:repeating-linear-gradient(115deg,transparent 0 110px,rgba(242,145,145,.055) 111px,transparent 112px)!important;
}
.contact-page .contact-redesign .ct-channel-no,
.contact-page .contact-redesign .ct-channel-line,
.contact-page .contact-redesign .ct-drag-hint,
.contact-page .contact-redesign .ct-pin-copy small{
  color:#BFA7AE!important;
}
html.light .contact-page .contact-redesign .ct-channel-no,
html.light .contact-page .contact-redesign .ct-channel-line,
html.light .contact-page .contact-redesign .ct-drag-hint,
html.light .contact-page .contact-redesign .ct-pin-copy small{
  color:#70575D!important;
}
.contact-page .contact-redesign .ct-channel:hover{background:rgba(242,145,145,.07)!important}
.contact-page .contact-redesign .ct-map-pin{
  box-shadow:0 0 0 14px rgba(242,145,145,.10),0 0 55px rgba(242,145,145,.28)!important;
}
.contact-page .contact-redesign .ct-form-section{
  background:linear-gradient(145deg,#140A0D,#211116)!important;
}
html.light .contact-page .contact-redesign .ct-form-section{
  background:#FBEFEF!important;
}


/* =========================================================
   CONTACT 02 + 03 — COMPLETE RESTRUCTURE
   Pink-only visual system. No green/lime.
   ========================================================= */
.contact-page .contact-redesign .ct-contact-constellation{
  --pink:#F29191;
  --ink:#F9F1F3;
  --muted:#D8C2C9;
  --line:rgba(242,145,145,.28);
  background:#140A0D!important;
  color:var(--ink);
  padding:86px max(28px,calc((100% - 1240px)/2)) 54px!important;
  overflow:hidden;
}
.contact-page .ct-constellation-head{
  display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end;
  margin-bottom:48px;position:relative;z-index:5;
}
.contact-page .ct-constellation-head h2{
  margin:16px 0 0;font-size:clamp(46px,6vw,78px);line-height:.9;
}
.contact-page .ct-constellation-head h2 em{color:var(--pink)!important;font-style:normal}
.contact-page .ct-constellation-head p{
  margin:0;color:var(--muted)!important;font-size:17px;line-height:1.75;max-width:520px;
}
.contact-page .ct-constellation{
  height:510px;position:relative;max-width:1120px;margin:0 auto;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  isolation:isolate;
}
.contact-page .ct-constellation:before{
  content:"";position:absolute;inset:8% 10%;
  background:
    radial-gradient(circle at 50% 50%,rgba(242,145,145,.13),transparent 18%),
    radial-gradient(circle at 18% 20%,rgba(242,145,145,.07),transparent 20%),
    radial-gradient(circle at 84% 78%,rgba(242,145,145,.06),transparent 22%);
  pointer-events:none;
}
.contact-page .ct-constellation:after{
  content:"";position:absolute;width:760px;height:760px;border:1px solid rgba(242,145,145,.08);
  border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);
  animation:ctConstOrbit 16s linear infinite;pointer-events:none;
}
.contact-page .ct-constellation-core{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:154px;height:154px;border-radius:50%;display:grid;place-items:center;
  background:#211116;border:1px solid var(--pink);z-index:4;
  box-shadow:0 0 70px rgba(242,145,145,.18);
}
.contact-page .ct-constellation-core strong{font:800 45px "Space Grotesk";color:var(--pink)}
.contact-page .ct-constellation-core small{
  position:absolute;bottom:25px;font-size:14px;letter-spacing:.18em;color:#D8C2C9;
}
.contact-page .ct-core-ring{
  position:absolute;inset:-15px;border:1px solid rgba(242,145,145,.35);border-radius:50%;
  animation:ctCorePulse 2.8s ease-in-out infinite;
}
.contact-page .ct-core-dot{
  position:absolute;width:7px;height:7px;border-radius:50%;background:var(--pink);
  top:9px;left:50%;box-shadow:0 0 20px var(--pink);
}
.contact-page .ct-channel-node{
  position:absolute;width:280px;min-height:126px;padding:21px 22px;
  border:1px solid var(--line);background:#1A0E12;color:var(--ink);
  display:grid;grid-template-columns:32px 38px 1fr;column-gap:11px;align-items:center;
  text-decoration:none;z-index:6;overflow:hidden;transition:transform .55s cubic-bezier(.2,.8,.2,1),border-color .4s,background .4s,box-shadow .4s;
}
.contact-page .ct-channel-node:before{
  content:"";position:absolute;width:130px;height:130px;border:1px solid rgba(242,145,145,.18);
  border-radius:50%;right:-62px;top:-70px;transition:transform .6s;
}
.contact-page .ct-channel-node:after{
  content:"";position:absolute;left:-100%;bottom:0;width:100%;height:2px;background:var(--pink);
  transition:left .6s;
}
.contact-page .ct-channel-node:hover{
  transform:translateY(-9px) scale(1.025);border-color:var(--pink);
  background:#241319;box-shadow:0 22px 55px rgba(0,0,0,.24);
}
.contact-page .ct-channel-node:hover:before{transform:scale(1.8)}
.contact-page .ct-channel-node:hover:after{left:0}
.contact-page .ct-channel-node>i{font-size:21px;color:var(--pink)}
.contact-page .ct-channel-node .node-index{font:700 13px "Space Grotesk";color:#9D858B;align-self:start}
.contact-page .ct-channel-node div{min-width:0}
.contact-page .ct-channel-node div strong{display:block;font:700 21px "Space Grotesk";margin-bottom:5px}
.contact-page .ct-channel-node div span{display:block;color:var(--muted);font-size:14px;line-height:1.45}
.contact-page .ct-channel-node>b{grid-column:3;color:var(--pink);font-size:14px;margin-top:12px}
.contact-page .node-one{left:1%;top:38px}
.contact-page .node-two{right:1%;top:38px}
.contact-page .node-three{left:5%;bottom:34px}
.contact-page .node-four{right:5%;bottom:34px}
.contact-page .ct-constellation-line{
  position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--pink),transparent);
  transform-origin:left center;opacity:.35;z-index:2;
}
.contact-page .line-a{width:330px;left:25%;top:35%;transform:rotate(14deg)}
.contact-page .line-b{width:330px;left:58%;top:35%;transform:rotate(166deg)}
.contact-page .line-c{width:300px;left:28%;top:67%;transform:rotate(-15deg)}
.contact-page .line-d{width:300px;left:58%;top:67%;transform:rotate(195deg)}
.contact-page .ct-channel-strip{
  display:flex;justify-content:center;gap:52px;margin-top:28px;color:#B89FA6;font-size:14px;
  letter-spacing:.08em;text-transform:uppercase;
}
.contact-page .ct-channel-strip i{color:var(--pink);margin-right:8px}

/* Section 03 — image-led location reveal */
.contact-page .ct-location-reveal{
  display:grid!important;grid-template-columns:1.08fr .92fr!important;
  min-height:720px!important;padding:0!important;background:#170B10!important;
}
.contact-page .ct-location-visual{
  min-height:720px;position:relative;overflow:hidden;background:#12090D;
}
.contact-page .ct-location-image{position:absolute;inset:0;overflow:hidden}
.contact-page .ct-location-image img{
  width:100%;height:100%;object-fit:cover;filter:saturate(.75);
  transform:scale(1.08);transition:transform 1.4s cubic-bezier(.2,.7,.2,1),filter 1s;
}
.contact-page .ct-location-reveal:hover .ct-location-image img{transform:scale(1);filter:saturate(1)}
.contact-page .ct-image-wash{
  position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,10,13,.08),rgba(20,10,13,.72)),
  linear-gradient(0deg,rgba(20,10,13,.76),transparent 50%);z-index:1;
}
.contact-page .ct-location-scan{
  position:absolute;left:0;right:0;top:-5%;height:2px;background:var(--pink);z-index:3;
  box-shadow:0 0 24px rgba(242,145,145,.75);animation:ctScan 4.5s ease-in-out infinite;
}
.contact-page .ct-route{
  position:absolute;border:1px solid rgba(242,145,145,.48);border-radius:50%;z-index:3;
  pointer-events:none;animation:ctRoutePink 7s ease-in-out infinite;
}
.contact-page .ct-location-visual .route-one{width:600px;height:300px;left:8%;top:35%;transform:rotate(-16deg)}
.contact-page .ct-location-visual .route-two{width:430px;height:230px;left:31%;top:14%;transform:rotate(28deg);animation-delay:-2s}
.contact-page .ct-location-visual .route-three{width:270px;height:150px;left:45%;top:54%;transform:rotate(-31deg);animation-delay:-4s}
.contact-page .ct-location-pin{
  position:absolute;left:58%;top:47%;width:68px;height:68px;border-radius:50%;
  background:var(--pink);color:#2B1418;display:grid;place-items:center;z-index:5;
  box-shadow:0 0 0 14px rgba(242,145,145,.10),0 0 60px rgba(242,145,145,.34);
  animation:ctLocationPin 2.5s ease-in-out infinite;
}
.contact-page .ct-location-pin i{font-size:23px}
.contact-page .pin-pulse{position:absolute;inset:-20px;border:1px solid var(--pink);border-radius:50%;animation:ctPinWave 2.2s infinite}
.contact-page .ct-location-tag{
  position:absolute;z-index:6;left:7%;bottom:8%;padding:19px 23px;
  background:rgba(20,10,13,.88);border-left:2px solid var(--pink);backdrop-filter:blur(9px);
  display:flex;flex-direction:column;gap:4px;
}
.contact-page .ct-location-tag small{color:var(--pink);font-size:14px;letter-spacing:.16em}
.contact-page .ct-location-tag strong{font:700 28px "Space Grotesk"}
.contact-page .ct-location-tag span{color:#D8C2C9;font-size:14px}
.contact-page .ct-location-coordinates{
  position:absolute;z-index:6;right:6%;bottom:6%;font:600 14px "Space Grotesk";
  color:#D8C2C9;letter-spacing:.08em;
}
.contact-page .ct-location-reveal .ct-location-copy{
  padding:82px clamp(34px,6vw,88px)!important;justify-content:center;
  background:#170B10;position:relative;overflow:hidden;
}
.contact-page .ct-location-copy:before{
  content:"03";position:absolute;right:-20px;top:20px;font:800 180px "Space Grotesk";
  color:rgba(242,145,145,.035);line-height:1;pointer-events:none;
}
.contact-page .ct-location-copy h2{
  font-size:clamp(48px,5vw,72px)!important;line-height:.93!important;margin:17px 0 24px!important;
}
.contact-page .ct-location-copy h2 em{color:var(--pink)!important;font-style:normal}
.contact-page .ct-location-copy>p{
  color:var(--muted)!important;font-size:17px!important;line-height:1.75!important;max-width:540px;
}
.contact-page .ct-location-points{
  margin:28px 0 22px;border-top:1px solid var(--line);
}
.contact-page .ct-location-point{
  display:grid;grid-template-columns:36px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);
  transition:padding-left .35s,background .35s;
}
.contact-page .ct-location-point:hover{padding-left:10px;background:rgba(242,145,145,.035)}
.contact-page .ct-location-point>span{color:var(--pink);font:700 13px "Space Grotesk"}
.contact-page .ct-location-point strong{display:block;font-size:16px;margin-bottom:3px}
.contact-page .ct-location-point small{display:block;color:var(--muted);font-size:14px;line-height:1.45}
.contact-page .ct-location-footer{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:8px;
}
.contact-page .ct-location-footer>div{
  display:flex;gap:10px;align-items:flex-start;color:var(--pink);font-size:14px;
}
.contact-page .ct-location-footer>div span{display:flex;flex-direction:column;gap:2px}
.contact-page .ct-location-footer strong{color:var(--ink);font-size:14px}
.contact-page .ct-location-footer small{color:var(--muted);font-size:14px}
.contact-page .ct-location-footer>a{
  grid-column:1/-1;color:var(--pink);font-weight:800;font-size:14px;
  margin-top:12px;width:max-content;border-bottom:1px solid var(--pink);padding-bottom:5px;
}

/* reveal classes */
.contact-page .ct-contact-constellation .ct-channel-node,
.contact-page .ct-location-reveal .ct-location-copy,
.contact-page .ct-location-reveal .ct-location-image,
.contact-page .ct-location-reveal .ct-location-point{
  opacity:0;transform:translateY(35px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.75,.2,1);
}
.contact-page .ct-contact-constellation.is-visible .ct-channel-node,
.contact-page .ct-location-reveal.is-visible .ct-location-copy,
.contact-page .ct-location-reveal.is-visible .ct-location-image,
.contact-page .ct-location-reveal.is-visible .ct-location-point{opacity:1;transform:none}
.contact-page .ct-contact-constellation.is-visible .node-one{transition-delay:.05s}
.contact-page .ct-contact-constellation.is-visible .node-two{transition-delay:.15s}
.contact-page .ct-contact-constellation.is-visible .node-three{transition-delay:.25s}
.contact-page .ct-contact-constellation.is-visible .node-four{transition-delay:.35s}
.contact-page .ct-location-reveal.is-visible .ct-location-point:nth-child(1){transition-delay:.15s}
.contact-page .ct-location-reveal.is-visible .ct-location-point:nth-child(2){transition-delay:.25s}
.contact-page .ct-location-reveal.is-visible .ct-location-point:nth-child(3){transition-delay:.35s}

@keyframes ctConstOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes ctCorePulse{0%,100%{transform:scale(1);opacity:.65}50%{transform:scale(1.08);opacity:1}}
@keyframes ctScan{0%{top:-5%;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:105%;opacity:0}}
@keyframes ctRoutePink{0%,100%{opacity:.25;transform:rotate(-16deg) scale(.96)}50%{opacity:.65;transform:rotate(-8deg) scale(1.03)}}
@keyframes ctLocationPin{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes ctPinWave{0%{transform:scale(.7);opacity:.8}100%{transform:scale(1.45);opacity:0}}

html.light .contact-page .ct-contact-constellation,
html.light .contact-page .ct-location-reveal,
html.light .contact-page .ct-location-reveal .ct-location-copy{
  background:#FBEFEF!important;color:#26171A!important;
}
html.light .contact-page .ct-constellation{border-color:rgba(73,39,44,.18)}
html.light .contact-page .ct-channel-node{
  background:#F6E3E3;color:#26171A;border-color:rgba(73,39,44,.20);
}
html.light .contact-page .ct-channel-node:hover{background:#F3DADA}
html.light .contact-page .ct-channel-node div span,
html.light .contact-page .ct-constellation-head p,
html.light .contact-page .ct-location-copy>p,
html.light .contact-page .ct-location-point small{color:#624B50!important}
html.light .contact-page .ct-location-visual{background:#EAD7D9}
html.light .contact-page .ct-image-wash{
  background:linear-gradient(90deg,rgba(251,239,239,.05),rgba(251,239,239,.68)),
  linear-gradient(0deg,rgba(251,239,239,.68),transparent 55%);
}
html.light .contact-page .ct-location-tag{background:rgba(251,239,239,.94)}
html.light .contact-page .ct-location-tag span,
html.light .contact-page .ct-location-coordinates{color:#624B50}
html.light .contact-page .ct-location-copy:before{color:rgba(242,145,145,.08)}
html.light .contact-page .ct-location-footer strong{color:#26171A}
html.light .contact-page .ct-location-footer small{color:#624B50}
html.light .contact-page .ct-channel-strip{color:#624B50}

/* Responsive — no overlaps, no absolute content collisions */
@media (max-width:900px){
  .contact-page .ct-contact-constellation{padding:68px 24px 44px!important}
  .contact-page .ct-constellation-head{grid-template-columns:1fr;gap:18px;margin-bottom:32px}
  .contact-page .ct-constellation-head h2{font-size:clamp(42px,8vw,62px)}
  .contact-page .ct-constellation{height:auto;min-height:650px;padding:150px 0 170px}
  .contact-page .ct-constellation-core{width:125px;height:125px}
  .contact-page .ct-channel-node{width:min(44%,290px);min-height:128px}
  .contact-page .node-one{left:0;top:28px}.contact-page .node-two{right:0;top:28px}
  .contact-page .node-three{left:0;bottom:25px}.contact-page .node-four{right:0;bottom:25px}
  .contact-page .ct-constellation-line{opacity:.2}
  .contact-page .ct-channel-strip{gap:18px;flex-wrap:wrap}
  .contact-page .ct-location-reveal{display:flex!important;flex-direction:column!important}
  .contact-page .ct-location-visual{min-height:500px;height:500px}
  .contact-page .ct-location-reveal .ct-location-copy{padding:65px 28px 60px!important}
  .contact-page .ct-location-coordinates{display:none}
}
@media (max-width:600px){
  .contact-page .ct-contact-constellation{padding:58px 16px 35px!important}
  .contact-page .ct-constellation-head h2{font-size:42px}
  .contact-page .ct-constellation-head p{font-size:15px}
  .contact-page .ct-constellation{min-height:850px;padding:150px 0 360px}
  .contact-page .ct-constellation-core{top:43%;width:112px;height:112px}
  .contact-page .ct-constellation-core strong{font-size:35px}
  .contact-page .ct-constellation-core small{bottom:18px;font-size:12px}
  .contact-page .ct-channel-node{width:calc(50% - 7px);min-height:145px;padding:17px 14px;display:flex;flex-direction:column;align-items:flex-start}
  .contact-page .ct-channel-node .node-index{margin-bottom:4px}
  .contact-page .ct-channel-node>i{margin-bottom:8px}
  .contact-page .ct-channel-node div strong{font-size:18px}
  .contact-page .ct-channel-node div span{font-size:14px}
  .contact-page .ct-channel-node>b{margin-top:9px}
  .contact-page .node-one,.contact-page .node-two{top:18px}
  .contact-page .node-three,.contact-page .node-four{bottom:18px}
  .contact-page .ct-channel-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:13px}
  .contact-page .ct-channel-strip span:last-child{grid-column:1/-1}
  .contact-page .ct-location-visual{min-height:410px;height:410px}
  .contact-page .ct-location-visual .route-one{width:420px;height:220px;left:-10%;top:35%}
  .contact-page .ct-location-visual .route-two{width:300px;height:160px;left:22%;top:15%}
  .contact-page .ct-location-visual .route-three{width:210px;height:120px;left:40%;top:55%}
  .contact-page .ct-location-pin{left:51%;top:45%;width:55px;height:55px}
  .contact-page .ct-location-tag{left:16px;bottom:16px;padding:14px 16px}
  .contact-page .ct-location-tag strong{font-size:22px}
  .contact-page .ct-location-tag small,.contact-page .ct-location-tag span{font-size:13px}
  .contact-page .ct-location-reveal .ct-location-copy{padding:54px 22px 50px!important}
  .contact-page .ct-location-copy h2{font-size:46px!important}
  .contact-page .ct-location-footer{grid-template-columns:1fr;gap:16px}
  .contact-page .ct-location-footer>a{grid-column:auto}
}
@media (prefers-reduced-motion:reduce){
  .contact-page .ct-constellation:after,.contact-page .ct-core-ring,.contact-page .ct-location-scan,
  .contact-page .ct-route,.contact-page .ct-location-pin,.contact-page .pin-pulse{animation:none!important}
  .contact-page .ct-channel-node,.contact-page .ct-location-reveal .ct-location-copy,
  .contact-page .ct-location-reveal .ct-location-image,.contact-page .ct-location-reveal .ct-location-point{
    opacity:1!important;transform:none!important;
  }
}

/* =========================================================
   CONTACT 04 + 05 — PINK MORPH / REVEAL REBUILD
   ========================================================= */
.contact-page .contact-redesign .ct-four,
.contact-page .contact-redesign .ct-five{
  --accent:#F29191;
  --accent-soft:rgba(242,145,145,.12);
  --accent-line:rgba(242,145,145,.28);
  color:var(--ct-ink);
  overflow:hidden;
}

/* 04 — four routes converging on one animated centre */
.contact-page .contact-redesign .ct-four{
  background:#140A0D;
  padding:92px max(24px,calc((100% - 1240px)/2)) 0;
}
.contact-page .contact-redesign .ct-four-head{
  display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end;margin-bottom:48px;
}
.contact-page .contact-redesign .ct-four-title h2{
  font-size:clamp(48px,6vw,82px);line-height:.92;margin:17px 0 0;letter-spacing:-.045em;
}
.contact-page .contact-redesign .ct-four-title h2 em{color:var(--accent);font-style:normal}
.contact-page .contact-redesign .ct-four-intro p{
  max-width:500px;margin:0;color:#D8C2C9;font-size:17px;line-height:1.75;
}
.contact-page .contact-redesign .ct-four-hint{
  display:flex;align-items:center;gap:9px;margin-top:22px;color:#B99DA7;font-size:14px;letter-spacing:.08em;text-transform:uppercase;
}
.contact-page .contact-redesign .ct-four-hint i{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 7px rgba(242,145,145,.08);animation:ctFourPulse 1.8s infinite}
.contact-page .contact-redesign .ct-four-stage{
  min-height:620px;position:relative;border-top:1px solid var(--accent-line);border-bottom:1px solid var(--accent-line);isolation:isolate;
  background:radial-gradient(circle at 50% 50%,rgba(242,145,145,.10),transparent 26%),linear-gradient(120deg,rgba(242,145,145,.025),transparent 45%,rgba(242,145,145,.035));
}
.contact-page .contact-redesign .ct-four-stage:before{
  content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;background:repeating-linear-gradient(120deg,transparent 0 78px,rgba(242,145,145,.07) 79px,transparent 80px 150px);animation:ctFourLines 14s linear infinite;
}
.contact-page .contact-redesign .ct-four-line{position:absolute;left:50%;top:50%;width:1px;height:47%;background:linear-gradient(var(--accent),transparent);transform-origin:top;opacity:.5;z-index:1}
.contact-page .contact-redesign .ct-four-line.line-one{transform:translate(-50%,-100%) rotate(35deg)}
.contact-page .contact-redesign .ct-four-line.line-two{transform:translate(-50%,-100%) rotate(-35deg)}
.contact-page .contact-redesign .ct-four-orbit{position:absolute;left:50%;top:50%;border:1px solid var(--accent-line);border-radius:50%;pointer-events:none;z-index:1}
.contact-page .contact-redesign .ct-four-orbit.orbit-a{width:410px;height:210px;transform:translate(-50%,-50%) rotate(-18deg);animation:ctFourOrbit 11s linear infinite}
.contact-page .contact-redesign .ct-four-orbit.orbit-b{width:280px;height:500px;transform:translate(-50%,-50%) rotate(28deg);animation:ctFourOrbit 15s linear infinite reverse}
.contact-page .contact-redesign .ct-four-morph{position:absolute;left:50%;top:50%;width:168px;height:168px;transform:translate(-50%,-50%);z-index:4;display:grid;place-items:center}
.contact-page .contact-redesign .ct-four-morph svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 20px rgba(242,145,145,.18))}
.contact-page .contact-redesign .ct-four-morph path{fill:rgba(242,145,145,.07);stroke:var(--accent);stroke-width:1.5}
.contact-page .contact-redesign .ct-four-morph span{font:800 34px "Space Grotesk";color:var(--accent);position:relative;z-index:2;animation:ctFourFloat 3.5s ease-in-out infinite}
.contact-page .contact-redesign .ct-four-grid{position:absolute;inset:0;z-index:5}
.contact-page .contact-redesign .ct-four-item{
  position:absolute;width:285px;min-height:185px;padding:23px 24px 21px;background:rgba(20,10,13,.72);border:1px solid var(--accent-line);backdrop-filter:blur(7px);display:grid;grid-template-columns:42px 1fr;column-gap:13px;row-gap:8px;opacity:0;transform:translateY(35px) scale(.96);transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .55s,background .35s,border-color .35s;overflow:hidden}
.contact-page .contact-redesign .ct-four-item:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(242,145,145,.10) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s}
.contact-page .contact-redesign .ct-four-item.in{opacity:1;transform:none}
.contact-page .contact-redesign .ct-four-item:hover{transform:translateY(-8px);background:rgba(35,16,22,.88);border-color:rgba(242,145,145,.58)}
.contact-page .contact-redesign .ct-four-item:hover:before{transform:translateX(120%)}
.contact-page .contact-redesign .ct-four-item.item-a{left:3%;top:8%;transition-delay:.05s}
.contact-page .contact-redesign .ct-four-item.item-b{right:3%;top:8%;transition-delay:.16s}
.contact-page .contact-redesign .ct-four-item.item-c{left:3%;bottom:8%;transition-delay:.27s}
.contact-page .contact-redesign .ct-four-item.item-d{right:3%;bottom:8%;transition-delay:.38s}
.contact-page .contact-redesign .ct-four-number{font:800 14px "Space Grotesk";color:#A98F98;letter-spacing:.1em}
.contact-page .contact-redesign .ct-four-item>i{grid-column:1;grid-row:2;color:var(--accent);font-size:22px;margin-top:3px}
.contact-page .contact-redesign .ct-four-item>div:nth-of-type(2){grid-column:2;grid-row:2}
.contact-page .contact-redesign .ct-four-item h3{font:700 22px "Space Grotesk";margin:0 0 5px}
.contact-page .contact-redesign .ct-four-item p{font-size:14px;line-height:1.55;color:#CDB7BF;margin:0}
.contact-page .contact-redesign .ct-four-item a{grid-column:1/-1;margin-top:10px;color:var(--accent);font-size:14px;font-weight:800;text-decoration:none}
.contact-page .contact-redesign .ct-four-item a span{display:inline-block;transition:transform .3s}.contact-page .contact-redesign .ct-four-item:hover a span{transform:translateX(5px)}
.contact-page .contact-redesign .ct-four-footer{display:grid;grid-template-columns:repeat(4,1fr);min-height:70px;align-items:center;gap:18px;color:#A9929C;font-size:13px;letter-spacing:.1em}
.contact-page .contact-redesign .ct-four-footer span:first-child{color:var(--accent)}
.contact-page .contact-redesign .ct-four-footer b{text-align:right;color:#CBB4BD;font-size:13px}

/* 05 — pinned visual story, with morphing SVG and progressive reveals */
.contact-page .contact-redesign .ct-five{background:#1A0C11;min-height:170vh;position:relative}
.contact-page .contact-redesign .ct-five-pin{position:sticky;top:0;min-height:100vh;width:min(1240px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center}
.contact-page .contact-redesign .ct-five-copy{align-self:center;position:relative;z-index:8}
.contact-page .contact-redesign .ct-five-copy h2{font-size:clamp(50px,6vw,82px);line-height:.91;letter-spacing:-.045em;margin:17px 0 24px}
.contact-page .contact-redesign .ct-five-copy h2 em{color:var(--accent);font-style:normal}
.contact-page .contact-redesign .ct-five-copy p{max-width:450px;color:#D7C0C8;font-size:17px;line-height:1.75;margin:0}
.contact-page .contact-redesign .ct-five-meter{width:min(410px,100%);height:2px;background:rgba(242,145,145,.16);margin:32px 0 13px;overflow:hidden}
.contact-page .contact-redesign .ct-five-meter span{display:block;width:33%;height:100%;background:var(--accent);box-shadow:0 0 14px rgba(242,145,145,.7);transition:width .55s}
.contact-page .contact-redesign .ct-five-status{display:flex;gap:12px;align-items:center;color:#BBA2AC;font-size:13px;letter-spacing:.12em}
.contact-page .contact-redesign .ct-five-status strong{color:var(--accent);font:800 18px "Space Grotesk"}
.contact-page .contact-redesign .ct-five-visual{height:670px;position:relative;isolation:isolate}
.contact-page .contact-redesign .ct-five-frame{position:absolute;overflow:hidden;border:1px solid var(--accent-line);background:#12090D;box-shadow:0 25px 80px rgba(0,0,0,.32);opacity:0;transform:translateY(45px) scale(.94);transition:opacity .7s,transform .9s cubic-bezier(.2,.8,.2,1)}
.contact-page .contact-redesign .ct-five-frame.in{opacity:1;transform:none}
.contact-page .contact-redesign .frame-main{width:66%;height:72%;left:8%;top:10%;clip-path:polygon(5% 0,100% 5%,94% 100%,0 94%);z-index:3}
.contact-page .contact-redesign .frame-secondary{width:37%;height:46%;right:2%;bottom:4%;clip-path:polygon(0 8%,91% 0,100% 91%,8% 100%);z-index:5;transition-delay:.2s}
.contact-page .contact-redesign .ct-five-frame img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter .6s}
.contact-page .contact-redesign .ct-five-frame:hover img{transform:scale(1.08);filter:saturate(1.08)}
.contact-page .contact-redesign .frame-wash{position:absolute;inset:0;background:linear-gradient(115deg,rgba(242,145,145,.18),transparent 45%,rgba(20,10,13,.3));mix-blend-mode:screen}
.contact-page .contact-redesign .frame-scan{position:absolute;left:0;right:0;height:2px;top:-4px;background:var(--accent);box-shadow:0 0 18px var(--accent);animation:ctFiveScan 4s ease-in-out infinite}
.contact-page .contact-redesign .ct-five-morph{position:absolute;width:310px;height:310px;right:7%;top:25%;z-index:2;opacity:.72;animation:ctFiveDrift 6s ease-in-out infinite}
.contact-page .contact-redesign .ct-five-morph svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 0 25px rgba(242,145,145,.14))}
.contact-page .contact-redesign .ct-five-morph path{fill:rgba(242,145,145,.035);stroke:var(--accent);stroke-width:1}
.contact-page .contact-redesign .ct-five-word{position:absolute;font:800 clamp(32px,4vw,58px) "Space Grotesk";letter-spacing:.16em;color:rgba(242,145,145,.18);opacity:0;transform:translateX(25px);transition:opacity .5s,transform .7s}
.contact-page .contact-redesign .ct-five-word.in{opacity:1;transform:none}
.contact-page .contact-redesign .word-one{right:8%;top:8%}.contact-page .contact-redesign .word-two{left:0;bottom:7%}.contact-page .contact-redesign .word-three{right:20%;bottom:0}
.contact-page .contact-redesign .ct-five-steps{width:min(1240px,calc(100% - 64px));margin:0 auto;position:relative;z-index:10;padding:0 0 24vh}
.contact-page .contact-redesign .ct-five-step{min-height:32vh;display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:25px;border-top:1px solid rgba(242,145,145,.18);opacity:.2;transform:translateY(20px);transition:opacity .5s,transform .6s;padding:35px 0}
.contact-page .contact-redesign .ct-five-step:last-child{border-bottom:1px solid rgba(242,145,145,.18)}
.contact-page .contact-redesign .ct-five-step.is-active{opacity:1;transform:none}
.contact-page .contact-redesign .ct-five-step>span{width:56px;height:56px;border:1px solid var(--accent-line);border-radius:50%;display:grid;place-items:center;color:var(--accent);font:800 15px "Space Grotesk";transition:background .4s,box-shadow .4s}
.contact-page .contact-redesign .ct-five-step.is-active>span{background:rgba(242,145,145,.09);box-shadow:0 0 30px rgba(242,145,145,.12)}
.contact-page .contact-redesign .ct-five-step small{color:var(--accent);font-size:13px;letter-spacing:.12em}
.contact-page .contact-redesign .ct-five-step h3{font:700 clamp(28px,3vw,43px) "Space Grotesk";margin:7px 0 8px}
.contact-page .contact-redesign .ct-five-step p{color:#CDB7BF;font-size:15px;line-height:1.7;max-width:550px;margin:0}
.contact-page .contact-redesign .ct-five-step>b{color:#8F7882;font-size:13px;letter-spacing:.1em;white-space:nowrap}

@keyframes ctFourPulse{50%{box-shadow:0 0 0 12px rgba(242,145,145,0)}}
@keyframes ctFourLines{to{transform:translateX(120px)}}
@keyframes ctFourOrbit{to{rotate:360deg}}
@keyframes ctFourFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes ctFiveScan{0%,100%{top:-4px;opacity:0}15%,80%{opacity:1}90%{top:102%;opacity:0}}
@keyframes ctFiveDrift{0%,100%{transform:rotate(-8deg) scale(.96)}50%{transform:rotate(8deg) scale(1.02)}}

/* Responsive: no absolute text collisions */
@media(max-width:900px){
 .contact-page .contact-redesign .ct-four{padding:70px 18px 0}
 .contact-page .contact-redesign .ct-four-head{grid-template-columns:1fr;gap:18px;margin-bottom:30px}
 .contact-page .contact-redesign .ct-four-title h2{font-size:clamp(44px,8vw,66px)}
 .contact-page .contact-redesign .ct-four-stage{min-height:690px}
 .contact-page .contact-redesign .ct-four-item{width:245px;min-height:175px}
 .contact-page .contact-redesign .ct-four-item.item-a{left:2%;top:5%}.contact-page .contact-redesign .ct-four-item.item-b{right:2%;top:5%}
 .contact-page .contact-redesign .ct-four-item.item-c{left:2%;bottom:5%}.contact-page .contact-redesign .ct-four-item.item-d{right:2%;bottom:5%}
 .contact-page .contact-redesign .ct-four-footer{grid-template-columns:repeat(2,1fr);padding:16px 0}
 .contact-page .contact-redesign .ct-four-footer b{text-align:left}
 .contact-page .contact-redesign .ct-five{min-height:auto}
 .contact-page .contact-redesign .ct-five-pin{position:relative;min-height:auto;width:calc(100% - 36px);display:block;padding:70px 0 25px}
 .contact-page .contact-redesign .ct-five-copy{margin-bottom:35px}
 .contact-page .contact-redesign .ct-five-visual{height:560px}
 .contact-page .contact-redesign .ct-five-steps{width:calc(100% - 36px);padding-bottom:70px}
 .contact-page .contact-redesign .ct-five-step{min-height:240px;grid-template-columns:56px 1fr;gap:16px;padding:30px 0}
 .contact-page .contact-redesign .ct-five-step>b{grid-column:2}
}
@media(max-width:600px){
 .contact-page .contact-redesign .ct-four{padding:58px 14px 0}
 .contact-page .contact-redesign .ct-four-stage{min-height:930px}
 .contact-page .contact-redesign .ct-four-morph{width:130px;height:130px;top:50%;}
 .contact-page .contact-redesign .ct-four-orbit.orbit-a{width:285px;height:150px}.contact-page .contact-redesign .ct-four-orbit.orbit-b{width:190px;height:360px}
 .contact-page .contact-redesign .ct-four-line{height:34%}
 .contact-page .contact-redesign .ct-four-grid{position:relative;height:100%}
 .contact-page .contact-redesign .ct-four-item{position:absolute;width:calc(50% - 8px);min-height:0;padding:18px 14px;display:block}
 .contact-page .contact-redesign .ct-four-item.item-a{left:0;top:5%}.contact-page .contact-redesign .ct-four-item.item-b{right:0;top:5%}
 .contact-page .contact-redesign .ct-four-item.item-c{left:0;bottom:5%}.contact-page .contact-redesign .ct-four-item.item-d{right:0;bottom:5%}
 .contact-page .contact-redesign .ct-four-item>i{display:block;margin:15px 0 10px}
 .contact-page .contact-redesign .ct-four-item h3{font-size:19px}.contact-page .contact-redesign .ct-four-item p{font-size:14px}.contact-page .contact-redesign .ct-four-item a{display:block;margin-top:15px}
 .contact-page .contact-redesign .ct-four-footer{font-size:12px;gap:10px}.contact-page .contact-redesign .ct-four-footer b{font-size:12px}
 .contact-page .contact-redesign .ct-five-pin{width:calc(100% - 28px);padding-top:58px}
 .contact-page .contact-redesign .ct-five-copy h2{font-size:clamp(45px,14vw,62px)}
 .contact-page .contact-redesign .ct-five-copy p{font-size:15px}
 .contact-page .contact-redesign .ct-five-visual{height:470px}
 .contact-page .contact-redesign .frame-main{width:76%;height:68%;left:3%;top:6%}.contact-page .contact-redesign .frame-secondary{width:43%;height:40%;right:0;bottom:3%}
 .contact-page .contact-redesign .ct-five-morph{width:210px;height:210px;right:3%;top:29%}
 .contact-page .contact-redesign .ct-five-word{font-size:27px}.contact-page .contact-redesign .word-one{right:0}.contact-page .contact-redesign .word-two{left:0}.contact-page .contact-redesign .word-three{right:7%}
 .contact-page .contact-redesign .ct-five-steps{width:calc(100% - 28px);padding-bottom:55px}
 .contact-page .contact-redesign .ct-five-step{min-height:0;grid-template-columns:45px 1fr;gap:14px;padding:28px 0}
 .contact-page .contact-redesign .ct-five-step>span{width:44px;height:44px}.contact-page .contact-redesign .ct-five-step h3{font-size:25px}.contact-page .contact-redesign .ct-five-step p{font-size:14px}.contact-page .contact-redesign .ct-five-step>b{font-size:12px}
}

/* Exact Contact palette for light/dark */
html.light .contact-page .contact-redesign .ct-four,
html.light .contact-page .contact-redesign .ct-five{background:#FBEFEF;color:#24191D}
html.light .contact-page .contact-redesign .ct-four-intro p,
html.light .contact-page .contact-redesign .ct-five-copy p,
html.light .contact-page .contact-redesign .ct-four-item p,
html.light .contact-page .contact-redesign .ct-five-step p{color:#514047}
html.light .contact-page .contact-redesign .ct-four-item{background:rgba(255,255,255,.58);border-color:rgba(145,79,79,.25)}
html.light .contact-page .contact-redesign .ct-four-item:hover{background:rgba(255,255,255,.86)}
html.light .contact-page .contact-redesign .ct-four-footer span,
html.light .contact-page .contact-redesign .ct-five-status,
html.light .contact-page .contact-redesign .ct-five-step>b{color:#67535A}

.contact-page .contact-redesign .ct-four-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(242,145,145,.10),transparent 70%);z-index:0}
.contact-page .contact-redesign .ct-four-grid,.contact-page .contact-redesign .ct-four-morph,.contact-page .contact-redesign .ct-four-line,.contact-page .contact-redesign .ct-four-orbit{z-index:2}
@media(max-width:600px){.contact-page .contact-redesign .ct-four-stage:after{display:none}}


/* Home scroll storytelling */
.vx-story{position:relative;background:#171012;color:#fff4f4;min-height:420vh;overflow:hidden}.vx-story-pin{position:sticky;top:78px;height:calc(100vh - 78px);min-height:620px;padding:28px clamp(22px,5vw,70px);display:flex;flex-direction:column}.vx-story-top{display:flex;justify-content:space-between;align-items:center;color:#d4bcbc;font:700 14px "Space Grotesk";letter-spacing:.1em}.vx-story-count{color:#F29191}.vx-story-stage{position:relative;flex:1;min-height:0}.vx-story-slide{position:absolute;inset:22px 0 20px;display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(25px,6vw,90px);align-items:center;opacity:0;pointer-events:none;transform:translateY(55px) scale(.97)}.vx-story-slide:nth-child(even){grid-template-columns:.92fr 1.08fr}.vx-story-slide:nth-child(even) .vx-story-media{order:2}.vx-story-slide:nth-child(even) .vx-story-copy{order:1}.vx-story-slide.is-active{opacity:1;pointer-events:auto;transform:none}.vx-story-media{height:min(70vh,650px);position:relative;overflow:hidden;clip-path:polygon(0 8%,94% 0,100% 90%,80% 100%,4% 92%);background:#241618}.vx-story-slide:nth-child(even) .vx-story-media{clip-path:polygon(7% 0,100% 9%,94% 100%,0 91%)}.vx-story-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.2s ease}.vx-story-slide.is-active .vx-story-media img{transform:scale(1)}.vx-story-number{position:absolute;right:24px;top:20px;color:#fff;background:#171012;padding:10px 13px;font-weight:800}.vx-story-copy{max-width:650px}.vx-story-kicker{color:#F29191;font:800 14px "Space Grotesk";letter-spacing:.14em}.vx-story-copy h2{font:700 clamp(45px,6vw,78px)/.94 "Space Grotesk";letter-spacing:-.055em;margin:18px 0 25px}.vx-story-copy h2 em{font-style:normal;color:#F29191}.vx-story-copy p{color:#cbb7b7;line-height:1.8;max-width:560px}.vx-story-copy a{display:inline-flex;gap:12px;align-items:center;margin-top:25px;color:#1b1112;background:#F29191;padding:14px 18px;border-radius:13px;font-weight:800}.vx-story-progress{display:flex;align-items:center;gap:14px;color:#9f8a8a;font-size:12px;letter-spacing:.13em}.vx-story-progress i{width:130px;height:3px;background:#F29191;transform-origin:left;transform:scaleX(.25)}
@media(max-width:800px){.vx-story{min-height:300vh}.vx-story-pin{position:relative;top:auto;height:auto;min-height:0;padding:70px 22px}.vx-story-stage{display:block}.vx-story-slide,.vx-story-slide:nth-child(even){position:relative;inset:auto;display:flex;flex-direction:column;gap:28px;opacity:1;pointer-events:auto;transform:none!important;padding:0 0 80px}.vx-story-slide:nth-child(even) .vx-story-media,.vx-story-slide:nth-child(even) .vx-story-copy{order:initial}.vx-story-media{height:390px;width:100%}.vx-story-copy h2{font-size:44px}.vx-story-progress{display:none}}
@media(prefers-reduced-motion:reduce){.vx-story{min-height:auto}.vx-story-pin{position:relative;top:auto;height:auto}.vx-story-slide{position:relative;opacity:1;transform:none;pointer-events:auto;padding-bottom:70px}}


/* =========================================================
   HOME PAGE 1 — CORRECTION 01
   Text floor + smaller hero heading + typewriter support
   ========================================================= */

/* Every readable UI/content text on Home 1 stays at 14px or above. */
.home-page :where(p, a, button, label, li, small, strong, b, span,
  .eyebrow, .hero-trust span, .hero-scroll-indicator span,
  .experience-tag, .experience-number, .collection-kicker,
  .collection-image-label, .collection-hint, .orbit-product small,
  .orbit-product strong, .repair-path-intro, .repair-node small,
  .repair-node h3, .repair-node p, .text-link) {
  font-size: max(14px, 1em);
}

/* Keep actual headings noticeably smaller than the previous oversized hero. */
.home-page .hero-title {
  font-size: clamp(42px, 5vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.045em;
  max-width: 650px;
  overflow: visible;
}

.home-page .hero-title .hero-typewriter {
  display: inline;
  color: var(--ink);
}

.home-page .hero-title-line {
  display: block;
  width: 0;
  height: 6px;
  margin-top: 9px;
  border-radius: 8px;
  background: linear-gradient(90deg, var(--accent), #ffb36b, #b88cff);
  box-shadow: 0 0 18px rgba(242,145,145,.35);
}

/* Typewriter cursor */
.home-page .hero-typewriter.is-typing::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: .88em;
  margin-left: 5px;
  vertical-align: -.08em;
  background: var(--accent);
  animation: heroTypingCursor .72s steps(1,end) infinite;
}

@keyframes heroTypingCursor {
  0%, 48% { opacity: 1; }
  49%, 100% { opacity: 0; }
}

/* Smaller supporting copy while keeping the 14px floor. */
.home-page .hero-description {
  font-size: 17px;
  line-height: 1.65;
}

@media (max-width: 767px) {
  .home-page .hero-title {
    font-size: clamp(34px, 10vw, 48px);
    line-height: 1.04;
  }

  .home-page .hero-description {
    font-size: 15px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .hero-typewriter.is-typing::after {
    animation: none;
    opacity: 0;
  }
}

/* =========================================================
   HOME 1 — EVERYDAY STORY / VISUAL RESTRUCTURE
   2D editorial motion, colorful accents, no 3D
   ========================================================= */
.vx-story-redesign{
  --story-bg:#110b0d;
  --story-ink:#fff7f5;
  --story-muted:#c9b5b4;
  --story-accent:#f29191;
  --story-yellow:#ffd166;
  --story-purple:#a78bfa;
  --story-cyan:#63d7d0;
  background:var(--story-bg);
  color:var(--story-ink);
  isolation:isolate;
}
.vx-story-redesign .vx-story-pin{padding:20px clamp(22px,4.5vw,68px) 22px;top:78px;height:calc(100vh - 78px);min-height:600px;overflow:hidden}
.vx-story-redesign .vx-story-top{position:relative;z-index:8;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.12)}
.vx-story-redesign .vx-story-top span{font-size:14px;letter-spacing:.14em;color:#e8d7d6}
.vx-story-redesign .vx-story-top span i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--story-accent);box-shadow:0 0 18px var(--story-accent);margin-right:8px}
.vx-story-redesign .vx-story-count{font-size:14px;color:#fff;background:rgba(242,145,145,.13);padding:7px 10px;border-radius:999px}
.vx-story-heading{position:absolute;right:clamp(22px,4.5vw,68px);top:105px;z-index:6;display:flex;align-items:center;gap:12px;opacity:.7}
.vx-story-heading small,.vx-story-heading span{font:700 14px/1 "Space Grotesk";letter-spacing:.12em;color:#d8c7c6}
.vx-story-heading span{color:var(--story-accent)}
.vx-story-stage{position:relative;z-index:3;flex:1;min-height:0;margin-top:5px}
.vx-story-slide,.vx-story-slide:nth-child(even){grid-template-columns:minmax(0,1.02fr) minmax(320px,.78fr);gap:clamp(34px,6vw,100px);align-items:center;inset:10px 0 25px}
.vx-story-slide:nth-child(even) .vx-story-media{order:2}
.vx-story-slide:nth-child(even) .vx-story-copy{order:1}
.vx-story-media,.vx-story-slide:nth-child(even) .vx-story-media{height:min(67vh,570px);clip-path:none;border-radius:34px 90px 34px 90px;background:#211619;box-shadow:20px 20px 0 rgba(242,145,145,.12);overflow:visible}
.vx-story-media:before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid rgba(242,145,145,.55);border-radius:34px 90px 34px 90px;z-index:-1;transform:rotate(-2deg)}
.vx-story-media:after{content:"";position:absolute;width:110px;height:110px;right:-35px;bottom:-35px;border-radius:50%;background:var(--story-yellow);opacity:.85;mix-blend-mode:screen;filter:blur(2px);z-index:3;animation:storyPulse 3.4s ease-in-out infinite}
.vx-story-slide:nth-child(2) .vx-story-media:after{background:var(--story-purple)}
.vx-story-slide:nth-child(3) .vx-story-media:after{background:var(--story-cyan)}
.vx-story-slide:nth-child(4) .vx-story-media:after{background:var(--story-accent)}
.vx-story-media img{border-radius:34px 90px 34px 90px;transform:scale(1.12);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter 1.2s ease;filter:saturate(.92) contrast(1.04)}
.vx-story-slide.is-active .vx-story-media img{transform:scale(1);filter:saturate(1.08) contrast(1.04)}
.vx-story-number{right:auto;left:22px;top:22px;background:#fff;color:#160d0f;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;padding:0;font-size:14px;z-index:4;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.vx-story-copy{max-width:610px;padding:20px 0}
.vx-story-kicker{display:inline-flex;align-items:center;gap:10px;font-size:14px!important;color:var(--story-accent);letter-spacing:.13em}
.vx-story-kicker:before{content:"";width:32px;height:2px;background:currentColor}
.vx-story-copy h2{font-size:clamp(34px,4.8vw,58px);line-height:1.02;letter-spacing:-.045em;margin:17px 0 19px;max-width:570px}
.vx-story-copy h2 em{color:var(--story-accent);position:relative}
.vx-story-copy h2 em:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:3px;background:linear-gradient(90deg,var(--story-accent),var(--story-yellow),transparent);transform-origin:left;animation:storyLine 2.5s ease-in-out infinite alternate}
.vx-story-copy p{font-size:16px!important;line-height:1.75;color:var(--story-muted);max-width:510px;margin:0}
.vx-story-copy a{font-size:14px!important;margin-top:23px;padding:12px 16px;border-radius:12px;background:var(--story-accent);color:#1a0e10;transition:transform .25s ease,box-shadow .25s ease}
.vx-story-copy a:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(242,145,145,.25)}
.vx-story-progress{position:relative;z-index:7;gap:12px;color:#a99393;font-size:14px!important}
.vx-story-progress i{height:3px;width:145px;background:linear-gradient(90deg,var(--story-accent),var(--story-yellow));box-shadow:0 0 14px rgba(242,145,145,.3)}
.vx-story-color{position:absolute;border-radius:50%;pointer-events:none;filter:blur(1px);opacity:.16;z-index:0;animation:storyFloat 8s ease-in-out infinite}
.vx-story-color.color-one{width:260px;height:260px;background:var(--story-accent);left:-110px;top:25%;filter:blur(45px)}
.vx-story-color.color-two{width:210px;height:210px;background:var(--story-purple);right:5%;top:12%;filter:blur(55px);animation-delay:-2s}
.vx-story-color.color-three{width:180px;height:180px;background:var(--story-cyan);right:20%;bottom:-80px;filter:blur(55px);animation-delay:-4s}
@keyframes storyPulse{0%,100%{transform:scale(.85);opacity:.5}50%{transform:scale(1.1);opacity:.9}}
@keyframes storyLine{0%{transform:scaleX(.35)}100%{transform:scaleX(1)}}
@keyframes storyFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(22px,-18px,0)}}

/* Light theme: same colorful language, lighter canvas */
html:not(.dark) .vx-story-redesign{--story-bg:#f8eeee;--story-ink:#241719;--story-muted:#665456}
html:not(.dark) .vx-story-redesign .vx-story-top{border-color:rgba(36,23,25,.12)}
html:not(.dark) .vx-story-redesign .vx-story-top span,html:not(.dark) .vx-story-redesign .vx-story-heading small{color:#5e494b}
html:not(.dark) .vx-story-redesign .vx-story-media{box-shadow:20px 20px 0 rgba(145,80,90,.11)}
html:not(.dark) .vx-story-redesign .vx-story-number{background:#241719;color:#fff}
html:not(.dark) .vx-story-redesign .vx-story-copy a{color:#241719}

@media(max-width:900px){
 .vx-story-redesign .vx-story-pin{padding:18px 22px 20px;min-height:620px}
 .vx-story-heading{display:none}
 .vx-story-slide,.vx-story-slide:nth-child(even){grid-template-columns:1fr;gap:22px;inset:10px 0 18px}
 .vx-story-slide:nth-child(even) .vx-story-media,.vx-story-slide:nth-child(even) .vx-story-copy{order:initial}
 .vx-story-media,.vx-story-slide:nth-child(even) .vx-story-media{height:min(48vh,390px);min-height:280px;border-radius:28px 60px 28px 60px}
 .vx-story-media:before{border-radius:28px 60px 28px 60px}
 .vx-story-copy{padding:0 4px}
 .vx-story-copy h2{font-size:clamp(32px,8vw,46px);margin:12px 0 14px}
 .vx-story-copy p{font-size:14px!important;line-height:1.65}
 .vx-story-copy a{margin-top:17px}
 .vx-story-progress{margin-top:4px}
}
@media(max-width:600px){
 .vx-story-redesign{min-height:400vh}
 .vx-story-redesign .vx-story-pin{padding:15px 16px 18px}
 .vx-story-redesign .vx-story-top span{font-size:14px}
 .vx-story-media,.vx-story-slide:nth-child(even) .vx-story-media{height:310px;min-height:0;border-radius:24px 48px 24px 48px}
 .vx-story-media:before{border-radius:24px 48px 24px 48px}
 .vx-story-media:after{width:70px;height:70px;right:-20px;bottom:-20px}
 .vx-story-copy h2{font-size:36px}
 .vx-story-copy p{font-size:14px!important}
 .vx-story-progress i{width:90px}
}
@media(prefers-reduced-motion:reduce){
 .vx-story-redesign .vx-story-color,.vx-story-redesign .vx-story-media:after,.vx-story-redesign .vx-story-copy h2 em:after{animation:none}
 .vx-story-redesign .vx-story-media img{transition:none}
}


/* =========================================================
   HOME 1 — FINAL NO-GAP STORY FLOW
   Keep Section 8 in normal document flow so it can never
   create a giant blank scroll area. Slides reveal as they enter.
   ========================================================= */
.vx-story-redesign{
  min-height:auto !important;
  height:auto !important;
  overflow:hidden;
}
.vx-story-redesign .vx-story-pin{
  position:relative !important;
  top:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0;
  padding:28px clamp(22px,4.5vw,68px) 34px;
  display:block;
}
.vx-story-redesign .vx-story-stage{
  display:flex;
  flex-direction:column;
  gap:70px;
  min-height:0 !important;
  margin-top:28px;
}
.vx-story-redesign .vx-story-slide,
.vx-story-redesign .vx-story-slide:nth-child(even){
  position:relative !important;
  inset:auto !important;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(320px,.78fr);
  gap:clamp(34px,6vw,100px);
  align-items:center;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto;
  transform:none !important;
  padding:0;
  min-height:0;
}
.vx-story-redesign .vx-story-slide:nth-child(even) .vx-story-media{order:2}
.vx-story-redesign .vx-story-slide:nth-child(even) .vx-story-copy{order:1}
.vx-story-redesign .vx-story-copy>*{
  opacity:1 !important;
  transform:none !important;
}
.vx-story-redesign .vx-story-progress{
  margin-top:48px;
}
.section9-typewriter{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
@media(max-width:900px){
  .vx-story-redesign .vx-story-pin{padding:24px 22px 28px}
  .vx-story-redesign .vx-story-stage{gap:52px;margin-top:22px}
  .vx-story-redesign .vx-story-slide,
  .vx-story-redesign .vx-story-slide:nth-child(even){
    grid-template-columns:1fr;
    gap:22px;
  }
  .vx-story-redesign .vx-story-slide:nth-child(even) .vx-story-media,
  .vx-story-redesign .vx-story-slide:nth-child(even) .vx-story-copy{order:initial}
  .vx-story-redesign .vx-story-progress{margin-top:30px}
}
@media(max-width:600px){
  .vx-story-redesign .vx-story-pin{padding:20px 16px 24px}
  .vx-story-redesign .vx-story-stage{gap:40px}
}

/* Section 8 — lightweight reveal without creating layout space */
.vx-story-redesign .vx-story-slide .vx-story-media,
.vx-story-redesign .vx-story-slide .vx-story-copy > *{
  transition:opacity .65s ease, transform .75s cubic-bezier(.2,.75,.2,1);
}
.vx-story-redesign .vx-story-slide .vx-story-copy > *:nth-child(1){transition-delay:.04s}
.vx-story-redesign .vx-story-slide .vx-story-copy > *:nth-child(2){transition-delay:.09s}
.vx-story-redesign .vx-story-slide .vx-story-copy > *:nth-child(3){transition-delay:.14s}
.vx-story-redesign .vx-story-slide .vx-story-copy > *:nth-child(4){transition-delay:.19s}
@media(prefers-reduced-motion:reduce){
  .vx-story-redesign .vx-story-slide .vx-story-media,
  .vx-story-redesign .vx-story-slide .vx-story-copy > *{transition:none !important}
}

/* =========================================================
   HOME PAGE 1 — SECTION 8 / EDITORIAL MOTION WALL
   Completely different from the previous right/left split layout.
   Full-bleed poster frames + scroll-driven crossfade/reveal.
   ========================================================= */
.vx8-editorial{--vx8-bg:#120b0d;--vx8-ink:#fff6f5;--vx8-muted:#d2bfc0;--vx8-pink:#f29191;--vx8-yellow:#ffd36a;position:relative;min-height:400vh;background:var(--vx8-bg);color:var(--vx8-ink);overflow:hidden}
.vx8-sticky{position:sticky;top:78px;height:calc(100vh - 78px);min-height:620px;padding:20px clamp(18px,4vw,64px);display:flex;flex-direction:column;isolation:isolate}
.vx8-noise{position:absolute;inset:0;pointer-events:none;opacity:.08;background-image:radial-gradient(rgba(255,255,255,.7) .6px,transparent .7px);background-size:5px 5px;mix-blend-mode:soft-light}
.vx8-head,.vx8-footer{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;flex:0 0 auto}
.vx8-brandline{display:flex;align-items:center;gap:10px;font:800 14px/1 "Space Grotesk";letter-spacing:.14em;color:#e8d8d8}
.vx8-brandline span{width:8px;height:8px;border-radius:50%;background:var(--vx8-pink);box-shadow:0 0 18px var(--vx8-pink);animation:vx8Pulse 2.2s ease-in-out infinite}
.vx8-index{display:flex;align-items:center;gap:9px;font:800 14px "Space Grotesk";color:#9f898b}
.vx8-index b:first-child{color:var(--vx8-pink)}
.vx8-index i{display:block;width:72px;height:2px;background:rgba(255,255,255,.18);position:relative;overflow:hidden}
.vx8-index i:after{content:"";position:absolute;left:0;top:0;width:var(--vx8-progress,25%);height:100%;background:linear-gradient(90deg,var(--vx8-pink),var(--vx8-yellow));transition:width .45s ease}
.vx8-canvas{position:relative;flex:1;min-height:0;margin:12px 0 10px;overflow:hidden}
.vx8-panel{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(8%) scale(.94);clip-path:inset(10% 0 0 0 round 34px);transition:opacity .65s ease,transform .8s cubic-bezier(.2,.75,.2,1),clip-path .8s cubic-bezier(.2,.75,.2,1);background:#201315}
.vx8-panel.is-active{opacity:1;visibility:visible;transform:none;clip-path:inset(0 round 34px)}
.vx8-panel:before{content:"";position:absolute;inset:0;z-index:5;border:1px solid rgba(255,255,255,.16);border-radius:34px;pointer-events:none}
.vx8-image{position:absolute;inset:0;overflow:hidden}
.vx8-image img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.12);filter:saturate(.82) contrast(1.06);transition:transform 1.5s cubic-bezier(.2,.7,.2,1),filter 1s ease}
.vx8-panel.is-active .vx8-image img{transform:scale(1);filter:saturate(1.08) contrast(1.04)}
.vx8-wash{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(11,7,8,.9) 0%,rgba(11,7,8,.57) 34%,rgba(11,7,8,.14) 68%,rgba(11,7,8,.28) 100%),linear-gradient(0deg,rgba(11,7,8,.65),transparent 42%)}
.vx8-panel-b .vx8-wash{background:linear-gradient(90deg,rgba(22,11,8,.86),rgba(22,11,8,.32) 52%,rgba(22,11,8,.12)),linear-gradient(0deg,rgba(22,11,8,.72),transparent 48%)}
.vx8-panel-c .vx8-wash{background:linear-gradient(90deg,rgba(6,14,20,.9),rgba(6,14,20,.35) 55%,rgba(6,14,20,.1)),linear-gradient(0deg,rgba(6,14,20,.72),transparent 50%)}
.vx8-panel-d .vx8-wash{background:linear-gradient(90deg,rgba(17,7,17,.9),rgba(17,7,17,.38) 55%,rgba(17,7,17,.1)),linear-gradient(0deg,rgba(17,7,17,.76),transparent 50%)}
.vx8-panel:after{content:"";position:absolute;width:clamp(150px,18vw,280px);height:clamp(150px,18vw,280px);right:-70px;top:-80px;border-radius:50%;background:var(--vx8-pink);filter:blur(2px);opacity:.78;z-index:3;box-shadow:0 0 80px rgba(242,145,145,.35);animation:vx8Float 6s ease-in-out infinite}
.vx8-panel-b:after{background:var(--vx8-yellow)}.vx8-panel-c:after{background:#83e6df}.vx8-panel-d:after{background:#c99cff}
.vx8-panel-no{position:absolute;z-index:8;right:30px;top:28px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:#2a1719;font:800 14px "Space Grotesk";box-shadow:0 12px 30px rgba(0,0,0,.25)}
.vx8-copy{position:absolute;z-index:8;left:clamp(24px,7vw,110px);bottom:clamp(35px,8vh,80px);width:min(670px,58vw);transform:translateY(28px);opacity:0;transition:opacity .7s ease .15s,transform .75s cubic-bezier(.2,.75,.2,1) .15s}
.vx8-panel.is-active .vx8-copy{opacity:1;transform:none}
.vx8-kicker{display:inline-flex;align-items:center;gap:10px;color:var(--vx8-pink);font:800 14px/1.2 "Space Grotesk";letter-spacing:.14em}
.vx8-kicker:before{content:"";width:38px;height:2px;background:linear-gradient(90deg,var(--vx8-pink),var(--vx8-yellow))}
.vx8-copy h2{font:700 clamp(38px,5.8vw,78px)/.92 "Space Grotesk";letter-spacing:-.055em;margin:16px 0 20px;max-width:720px}
.vx8-copy h2 em{font-style:normal;color:var(--vx8-pink);position:relative}
.vx8-copy h2 em:after{content:"";position:absolute;left:0;right:8%;bottom:-7px;height:3px;background:linear-gradient(90deg,var(--vx8-pink),var(--vx8-yellow),transparent);transform-origin:left;animation:vx8Line 2.4s ease-in-out infinite alternate}
.vx8-copy p{margin:0;max-width:590px;color:#ead8d8;font-size:16px!important;line-height:1.7}
.vx8-copy a{display:inline-flex;align-items:center;gap:12px;margin-top:22px;padding:13px 17px;border-radius:12px;background:var(--vx8-pink);color:#1c1012;font-size:14px!important;font-weight:800;transition:transform .25s ease,box-shadow .25s ease}
.vx8-copy a:hover{transform:translateY(-4px);box-shadow:0 14px 35px rgba(242,145,145,.28)}
.vx8-caption{position:absolute;z-index:8;right:30px;bottom:30px;color:rgba(255,255,255,.72);font:800 14px "Space Grotesk";letter-spacing:.13em}
.vx8-footer{gap:16px;color:#b9a5a6;font:800 14px "Space Grotesk";letter-spacing:.13em}
.vx8-footer strong{color:var(--vx8-pink)}
.vx8-progress{height:3px;flex:1;max-width:360px;background:rgba(255,255,255,.14);overflow:hidden}
.vx8-progress i{display:block;width:25%;height:100%;background:linear-gradient(90deg,var(--vx8-pink),var(--vx8-yellow));transform-origin:left;transition:width .5s ease}
@keyframes vx8Float{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-20px,18px) scale(1.08)}}
@keyframes vx8Pulse{0%,100%{transform:scale(1);opacity:.8}50%{transform:scale(1.35);opacity:1}}
@keyframes vx8Line{0%{transform:scaleX(.25);opacity:.55}100%{transform:scaleX(1);opacity:1}}

html:not(.dark) .vx8-editorial{--vx8-bg:#f8eeee;--vx8-ink:#251719;--vx8-muted:#604d4f}
html:not(.dark) .vx8-brandline{color:#604d4f}
html:not(.dark) .vx8-index{color:#806a6c}
html:not(.dark) .vx8-index i{background:rgba(37,23,25,.14)}
html:not(.dark) .vx8-panel{background:#e8dcdc}
html:not(.dark) .vx8-panel:before{border-color:rgba(37,23,25,.16)}
html:not(.dark) .vx8-wash{background:linear-gradient(90deg,rgba(28,15,17,.82),rgba(28,15,17,.38) 42%,rgba(28,15,17,.08)),linear-gradient(0deg,rgba(28,15,17,.6),transparent 45%)}
html:not(.dark) .vx8-copy p{color:#f6e9e9}
html:not(.dark) .vx8-footer{color:#705b5d}
html:not(.dark) .vx8-progress{background:rgba(37,23,25,.14)}

@media(max-width:900px){
  .vx8-editorial{min-height:auto}
  .vx8-sticky{position:relative;top:auto;height:auto;min-height:0;padding:18px 14px 24px}
  .vx8-canvas{display:flex;flex-direction:column;gap:0;overflow:visible;margin:12px 0 14px}
  .vx8-panel,.vx8-panel.is-active{position:relative;inset:auto;width:100%;height:560px;min-height:560px;opacity:1;visibility:visible;transform:none;clip-path:none;border-radius:26px;display:block;margin:0 0 12px}
  .vx8-panel:before{border-radius:26px}
  .vx8-copy{left:22px;right:22px;bottom:30px;width:auto;transform:none;opacity:1}
  .vx8-panel-no{right:20px;top:20px;width:46px;height:46px}
  .vx8-caption{right:20px;bottom:20px;font-size:12px}
  .vx8-footer{display:none}
}
@media(max-width:560px){
  .vx8-sticky{padding:15px 10px 18px}
  .vx8-brandline{font-size:12px;letter-spacing:.1em}
  .vx8-index{font-size:12px}.vx8-index i{width:38px}
  .vx8-panel,.vx8-panel.is-active{height:520px;min-height:520px;border-radius:20px;margin-bottom:8px}
  .vx8-panel:before{border-radius:20px}
  .vx8-copy{left:18px;right:18px;bottom:24px}
  .vx8-copy h2{font-size:clamp(34px,10vw,46px);margin:12px 0 15px}
  .vx8-copy p{font-size:14px!important;line-height:1.6}
  .vx8-copy a{margin-top:16px;padding:11px 14px}
  .vx8-panel-no{width:42px;height:42px;top:16px;right:16px}
}
@media(prefers-reduced-motion:reduce){
  .vx8-panel,.vx8-panel.is-active,.vx8-copy,.vx8-image img{transition:none!important;transform:none!important}
  .vx8-panel:after,.vx8-brandline span,.vx8-copy h2 em:after{animation:none!important}
}


/* =========================================================
   HOME PAGE 1 — SECTION 8 / FINAL HORIZONTAL AUTO FRAME FIX
   ========================================================= */
.vx8-editorial{min-height:100vh;height:100vh;overflow:hidden;margin:0;padding:0}
.vx8-sticky{top:78px;height:calc(100vh - 78px);min-height:0;padding:16px clamp(18px,4vw,64px) 12px}
.vx8-canvas.vx8-horizontal-canvas{display:flex;flex-direction:row;gap:0;margin:10px 0 8px;overflow:hidden;flex:1;min-height:0;width:100%;transform:translate3d(var(--vx8-x,0),0,0);transition:transform .72s cubic-bezier(.2,.75,.2,1)}
.vx8-canvas.vx8-horizontal-canvas.vx8-instant{transition:none}
.vx8-canvas.vx8-horizontal-canvas .vx8-panel,.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active{position:relative;inset:auto;flex:0 0 100%;width:100%;height:100%;min-height:0;opacity:1;visibility:visible;transform:none;clip-path:inset(0 round 30px);margin:0;pointer-events:none}
.vx8-canvas.vx8-horizontal-canvas .vx8-panel .vx8-copy{opacity:0;transform:translateY(28px);transition:opacity .42s ease .12s,transform .55s cubic-bezier(.2,.75,.2,1) .12s}
.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active .vx8-copy{opacity:1;transform:none}
.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active{pointer-events:auto}
.vx8-canvas.vx8-horizontal-canvas .vx8-image img{transform:scale(1.08);transition:transform .9s cubic-bezier(.2,.75,.2,1),filter .7s ease}
.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active .vx8-image img{transform:scale(1);filter:saturate(1.08) contrast(1.04)}
.vx8-copy a{display:none!important}
.vx8-footer{margin-top:0;min-height:26px}
.vx8-panel-no{display:grid}
@media(max-width:900px){
  .vx8-editorial{height:auto;min-height:calc(100svh - 0px);margin:0}
  .vx8-sticky{position:relative;top:auto;height:auto;min-height:calc(100svh - 0px);padding:14px 10px 10px}
  .vx8-canvas.vx8-horizontal-canvas{display:flex;flex-direction:row;gap:0;overflow:hidden;margin:8px 0 8px;height:calc(100svh - 125px);min-height:480px;flex:0 0 auto}
  .vx8-canvas.vx8-horizontal-canvas .vx8-panel,.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active{flex:0 0 100%;width:100%;height:100%;min-height:480px;border-radius:22px;clip-path:inset(0 round 22px)}
  .vx8-canvas.vx8-horizontal-canvas .vx8-copy{left:20px;right:20px;bottom:28px;width:auto}
  .vx8-footer{display:flex;min-height:24px;font-size:12px}
  .vx8-footer span{font-size:12px}
  .vx8-progress{max-width:150px}
}
@media(max-width:560px){
  .vx8-sticky{padding:12px 8px 8px}
  .vx8-brandline{font-size:12px}
  .vx8-index{font-size:12px}
  .vx8-canvas.vx8-horizontal-canvas{height:calc(100svh - 112px);min-height:500px;margin:6px 0 6px}
  .vx8-canvas.vx8-horizontal-canvas .vx8-panel,.vx8-canvas.vx8-horizontal-canvas .vx8-panel.is-active{min-height:500px;border-radius:18px;clip-path:inset(0 round 18px)}
  .vx8-canvas.vx8-horizontal-canvas .vx8-copy{left:18px;right:18px;bottom:24px}
  .vx8-copy h2{font-size:clamp(32px,9.5vw,44px);margin:10px 0 13px}
  .vx8-copy p{font-size:14px!important;line-height:1.55}
  .vx8-footer strong{display:none}
}
@media(prefers-reduced-motion:reduce){
  .vx8-canvas.vx8-horizontal-canvas,.vx8-canvas.vx8-horizontal-canvas .vx8-panel .vx8-copy,.vx8-canvas.vx8-horizontal-canvas .vx8-image img{transition:none!important}
}


/* FINAL SECTION 8 SLIDER TRACK CORRECTION */
.vx8-canvas.vx8-horizontal-canvas{transform:none!important}
.vx8-track.vx8-horizontal-track{display:flex;width:100%;height:100%;gap:0;transform:translate3d(var(--vx8-x,0),0,0);transition:transform .72s cubic-bezier(.2,.75,.2,1);will-change:transform}
.vx8-track.vx8-horizontal-track .vx8-panel,.vx8-track.vx8-horizontal-track .vx8-panel.is-active{position:relative;inset:auto;flex:0 0 100%;width:100%;height:100%;min-height:0;opacity:1;visibility:visible;transform:none;clip-path:inset(0 round 30px);margin:0;pointer-events:none}
.vx8-track.vx8-horizontal-track .vx8-panel.is-active{pointer-events:auto}
.vx8-track.vx8-horizontal-track .vx8-panel .vx8-copy{opacity:0;transform:translateY(26px);transition:opacity .42s ease .12s,transform .55s cubic-bezier(.2,.75,.2,1) .12s}
.vx8-track.vx8-horizontal-track .vx8-panel.is-active .vx8-copy{opacity:1;transform:none}
@media(max-width:900px){
 .vx8-canvas.vx8-horizontal-canvas{height:calc(100svh - 125px);min-height:480px}
 .vx8-track.vx8-horizontal-track{height:100%}
 .vx8-track.vx8-horizontal-track .vx8-panel,.vx8-track.vx8-horizontal-track .vx8-panel.is-active{height:100%;min-height:480px;border-radius:22px;clip-path:inset(0 round 22px);margin:0}
}
@media(max-width:560px){
 .vx8-canvas.vx8-horizontal-canvas{height:calc(100svh - 112px);min-height:500px}
 .vx8-track.vx8-horizontal-track .vx8-panel,.vx8-track.vx8-horizontal-track .vx8-panel.is-active{min-height:500px;border-radius:18px;clip-path:inset(0 round 18px)}
}
@media(prefers-reduced-motion:reduce){.vx8-track.vx8-horizontal-track{transition:none!important}}

/* =========================================================
   FINAL HOME 1 — VISIBILITY / PADDING / HEADING SCALE FIX
   ========================================================= */

/* Section 2: make the editorial rules/lines clearly visible in light mode
   and keep the content rail inside the viewport. */
html:not(.dark) .experience-section .experience-line-top,
html:not(.dark) .experience-section .experience-points,
html:not(.dark) .experience-section .experience-point{
  border-color:rgba(25,14,14,.34) !important;
}
html:not(.dark) .experience-section .experience-line-top{
  background:rgba(25,14,14,.34) !important;
}
html:not(.dark) .experience-section .experience-point strong,
html:not(.dark) .experience-section .experience-point>span{
  color:#190E0E !important;
}
html:not(.dark) .experience-section .experience-point small{
  color:#4C2A2A !important;
}
html:not(.dark) .experience-section .experience-tag{
  color:#3E2222 !important;
  border-color:rgba(25,14,14,.34) !important;
}
.experience-section,
.experience-wrap,
.experience-copy,
.experience-points{
  box-sizing:border-box;
}
.experience-wrap{min-width:0;}
.experience-copy{min-width:0;}
.experience-point{min-width:0;padding-inline:0;}
.experience-point>*{min-width:0;}

/* Section 5: never allow the repair copy/link to become black on the dark
   editorial background. */
html:not(.dark) .section5-repair,
html:not(.dark) .section5-repair .repair-path-wrap{
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair h1,
html:not(.dark) .section5-repair h2,
html:not(.dark) .section5-repair h3,
html:not(.dark) .section5-repair h4,
html:not(.dark) .section5-repair strong,
html:not(.dark) .section5-repair p,
html:not(.dark) .section5-repair a,
html:not(.dark) .section5-repair .text-link,
html:not(.dark) .section5-repair .repair-path-intro p,
html:not(.dark) .section5-repair .repair-node p,
html:not(.dark) .section5-repair .repair-node h3,
html:not(.dark) .section5-repair .repair-node small,
html:not(.dark) .section5-repair .node-no{
  color:#F6EDED !important;
}
html:not(.dark) .section5-repair .repair-path-intro .eyebrow,
html:not(.dark) .section5-repair .repair-node small,
html:not(.dark) .section5-repair .repair-node>i{
  color:#F29191 !important;
}
html:not(.dark) .section5-repair .text-link{
  border-bottom-color:rgba(246,237,237,.42) !important;
}

/* Section 8: smaller poster headings so the copy remains readable without
   dominating the frame. */
.vx8-copy h2{
  font-size:clamp(34px,4.25vw,60px) !important;
  line-height:.96 !important;
  max-width:650px;
  margin:14px 0 17px;
}
.vx8-copy p{font-size:15px !important;line-height:1.65 !important;}

/* Section 3: reduce the collection headline and keep horizontal content
   comfortably padded without creating a bottom gap. */
.collection-intro-panel h2{
  font-size:clamp(40px,5vw,64px) !important;
  line-height:.97 !important;
  margin:18px 0 16px;
}
.collection-intro-panel h3{
  font-size:clamp(38px,4.5vw,60px) !important;
  line-height:.97 !important;
}
.collection-track{box-sizing:border-box;}

/* Section 9: reduce typewriter heading and prevent long typed text from
   forcing horizontal overflow. */
.section9-typewriter .typewriter-copy h2,
.section8-typewriter .typewriter-copy h2{
  font-size:clamp(36px,4.4vw,56px) !important;
  line-height:1.02 !important;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}
.section9-typewriter .typewriter-text,
.section8-typewriter .typewriter-text{overflow-wrap:anywhere;}

@media (max-width:1023px){
  .experience-wrap{width:calc(100% - 32px);gap:34px;padding:64px 0 48px;}
  .experience-copy h2{font-size:clamp(36px,5.2vw,52px) !important;}
  .collection-track{padding:42px 4vw 48px;gap:5vw;}
  .collection-intro-panel h2{font-size:clamp(38px,6vw,56px) !important;}
  .vx8-copy h2{font-size:clamp(32px,5vw,52px) !important;}
  .section9-typewriter .typewriter-copy h2,
  .section8-typewriter .typewriter-copy h2{font-size:clamp(34px,5vw,50px) !important;}
}

@media (max-width:767px){
  .experience-wrap{width:calc(100% - 28px);padding:50px 0 36px;gap:22px;}
  .experience-copy h2{font-size:clamp(34px,9.5vw,48px) !important;line-height:1 !important;}
  .experience-point{grid-template-columns:30px minmax(0,1fr);gap:9px;min-height:64px;}
  .experience-point small{font-size:14px !important;line-height:1.35;}
  .experience-point strong{font-size:14px !important;}
  .experience-point>span{font-size:14px !important;}
  .experience-points{width:100%;}

  .collection-scroll-sticky{height:100vh;min-height:100vh;}
  .collection-track{padding:34px 14px 52px;gap:28px;}
  .collection-intro-panel h2{font-size:clamp(34px,10vw,46px) !important;}
  .collection-intro-panel h3{font-size:clamp(34px,9.5vw,48px) !important;}
  .collection-intro-panel>p{font-size:14px !important;}

  .vx8-copy{left:18px;right:18px;bottom:22px;width:auto;}
  .vx8-copy h2{font-size:clamp(30px,8.8vw,42px) !important;line-height:.99 !important;margin:10px 0 13px;}
  .vx8-copy p{font-size:14px !important;line-height:1.55 !important;max-width:100%;}

  .section9-typewriter .typewriter-copy h2,
  .section8-typewriter .typewriter-copy h2{font-size:clamp(32px,8.8vw,44px) !important;line-height:1.04 !important;}
}

@media (max-width:420px){
  .experience-wrap{width:calc(100% - 24px);}
  .experience-copy h2{font-size:34px !important;}
  .collection-intro-panel h2{font-size:34px !important;}
  .vx8-copy h2{font-size:30px !important;}
  .section9-typewriter .typewriter-copy h2,
  .section8-typewriter .typewriter-copy h2{font-size:32px !important;}
}

@media(prefers-reduced-motion:reduce){
  .vx8-copy h2,.collection-intro-panel h2,.section9-typewriter .typewriter-copy h2{transition:none !important;}
}


/* =========================================================
   FINAL MOBILE RESPONSIVE OVERLAP FIX
   Home Page 1 — Orbit + Brand Field
   ========================================================= */
@media (max-width: 767px){
  /* Section 4 / Everyday Essentials:
     replace the desktop absolute constellation with a real mobile grid.
     Nothing is allowed to overlap or sit on top of another text block. */
  .section4-orbit .orbit-wrap{
    width:100%;
    padding:0 14px;
    box-sizing:border-box;
  }
  .section4-orbit .orbit-heading{
    margin-bottom:18px;
  }
  .section4-orbit .orbit-heading h2{
    font-size:clamp(34px,10vw,48px) !important;
    line-height:1 !important;
    margin:12px 0 !important;
  }
  .section4-orbit .orbit-heading p{
    font-size:14px !important;
    line-height:1.55 !important;
  }
  .section4-orbit .orbit-stage{
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:22px 0 8px !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:26px 18px !important;
    align-items:start !important;
  }
  .section4-orbit .orbit-path{
    display:none !important;
  }
  .section4-orbit .orbit-product,
  .section4-orbit .orbit-product-a,
  .section4-orbit .orbit-product-b,
  .section4-orbit .orbit-product-c,
  .section4-orbit .orbit-product-d{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    gap:6px 8px !important;
    transform:none !important;
    margin:0 !important;
  }
  .section4-orbit .orbit-product img{
    grid-column:1/-1 !important;
    width:100% !important;
    height:118px !important;
    min-height:118px !important;
    object-fit:cover !important;
    clip-path:polygon(6% 0,100% 0,94% 100%,0 100%) !important;
    transform:none !important;
  }
  .section4-orbit .orbit-product>span{
    grid-column:1 !important;
    padding:3px 0 0 !important;
    font-size:14px !important;
    line-height:1.2 !important;
  }
  .section4-orbit .orbit-product>div{
    grid-column:2 !important;
    min-width:0 !important;
    padding:3px 0 8px !important;
    border-bottom:1px solid var(--line) !important;
  }
  .section4-orbit .orbit-product small{
    font-size:14px !important;
    line-height:1.25 !important;
    letter-spacing:.12em !important;
  }
  .section4-orbit .orbit-product strong{
    display:block !important;
    font-size:14px !important;
    line-height:1.3 !important;
    overflow-wrap:anywhere !important;
  }
  .section4-orbit .orbit-center{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    grid-column:1/-1 !important;
    grid-row:3 !important;
    justify-self:center !important;
    width:100% !important;
    padding:10px 0 0 !important;
    text-align:center !important;
    z-index:2 !important;
  }
  .section4-orbit .orbit-center span{
    font-size:14px !important;
  }
  .section4-orbit .orbit-center strong{
    font-size:18px !important;
    line-height:1.05 !important;
  }
}

/* Very narrow phones: keep two columns but give every item enough room. */
@media (max-width: 380px){
  .section4-orbit .orbit-wrap{padding:0 10px;}
  .section4-orbit .orbit-stage{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:24px 12px !important;
  }
  .section4-orbit .orbit-product img{
    height:105px !important;
    min-height:105px !important;
  }
  .section4-orbit .orbit-product small,
  .section4-orbit .orbit-product strong,
  .section4-orbit .orbit-product>span{
    font-size:14px !important;
  }
}

/* Section 6 / Brand Field:
   desktop uses free-positioned editorial nodes; mobile uses a clean
   two-column document flow so Apple/Samsung/Google/Anker/etc. never collide. */
@media (max-width: 767px){
  .section6-constellation .brand-constellation{
    width:calc(100% - 28px) !important;
    display:block !important;
  }
  .section6-constellation .brand-constellation-head{
    width:100% !important;
    max-width:none !important;
    margin-bottom:26px !important;
  }
  .section6-constellation .brand-constellation-head h2{
    font-size:clamp(34px,9.5vw,46px) !important;
    line-height:1 !important;
    margin:12px 0 14px !important;
  }
  .section6-constellation .brand-constellation-head p{
    font-size:14px !important;
    line-height:1.6 !important;
  }
  .section6-constellation .brand-field{
    height:auto !important;
    min-height:0 !important;
    border-left:0 !important;
    border-bottom:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    grid-template-rows:auto !important;
    gap:30px 18px !important;
    padding:34px 0 10px !important;
    overflow:visible !important;
  }
  .section6-constellation .brand-ghost{
    position:relative !important;
    grid-column:1/-1 !important;
    grid-row:1 !important;
    inset:auto !important;
    display:block !important;
    text-align:center !important;
    font-size:14px !important;
    line-height:1.3 !important;
    letter-spacing:.14em !important;
    opacity:.75 !important;
    margin:0 0 4px !important;
  }
  .section6-constellation .brand-node,
  .section6-constellation .brand-node-a,
  .section6-constellation .brand-node-b,
  .section6-constellation .brand-node-c,
  .section6-constellation .brand-node-d,
  .section6-constellation .brand-node-e,
  .section6-constellation .brand-node-f{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    width:100% !important;
    min-width:0 !important;
    min-height:88px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:5px !important;
    padding:0 !important;
    margin:0 !important;
    transform:none !important;
    box-sizing:border-box !important;
  }
  .section6-constellation .brand-node:nth-of-type(2){grid-column:1;grid-row:2;}
  .section6-constellation .brand-node:nth-of-type(3){grid-column:2;grid-row:2;}
  .section6-constellation .brand-node:nth-of-type(4){grid-column:1;grid-row:3;}
  .section6-constellation .brand-node:nth-of-type(5){grid-column:2;grid-row:3;}
  .section6-constellation .brand-node:nth-of-type(6){grid-column:1;grid-row:4;}
  .section6-constellation .brand-node:nth-of-type(7){grid-column:2;grid-row:4;}
  .section6-constellation .brand-node small{
    font-size:14px !important;
    line-height:1.25 !important;
    letter-spacing:.11em !important;
    white-space:normal !important;
  }
  .section6-constellation .brand-node strong{
    display:block !important;
    font-size:24px !important;
    line-height:1.05 !important;
    letter-spacing:-.03em !important;
    overflow-wrap:anywhere !important;
  }
  .section6-constellation .brand-node span{
    font-size:14px !important;
    line-height:1.3 !important;
    overflow-wrap:anywhere !important;
  }
  .section6-constellation .brand-node i{
    font-size:20px !important;
    line-height:1 !important;
  }
  .section6-constellation .brand-field-line{
    display:none !important;
  }
  .section6-constellation .brand-marquee{
    margin-top:18px !important;
    overflow:hidden !important;
  }
  .section6-constellation .brand-marquee span{
    font-size:14px !important;
  }
}

@media (max-width:380px){
  .section6-constellation .brand-constellation{
    width:calc(100% - 20px) !important;
  }
  .section6-constellation .brand-field{
    gap:26px 12px !important;
  }
  .section6-constellation .brand-node{
    min-height:82px !important;
  }
  .section6-constellation .brand-node small,
  .section6-constellation .brand-node span{
    font-size:14px !important;
  }
  .section6-constellation .brand-node strong{
    font-size:22px !important;
  }
}

/* Prevent accidental horizontal overflow from any animated child. */
@media (max-width:767px){
  .section4-orbit,
  .section4-orbit .orbit-wrap,
  .section4-orbit .orbit-stage,
  .section6-constellation,
  .section6-constellation .brand-constellation,
  .section6-constellation .brand-field{
    max-width:100%;
    box-sizing:border-box;
  }
  .section4-orbit img,
  .section6-constellation img{
    max-width:100%;
  }
}

/* =========================================================
   HOME 1 — FINAL SCROLL TEXT VISIBILITY FIX
   Keep editorial/scrolling copy readable over every image.
   ========================================================= */

/* Section 2 / Experience image label: strong contrast in both themes. */
.experience-tag{
  z-index:8 !important;
  color:#160f10 !important;
  background:rgba(248,238,238,.92) !important;
  border-color:rgba(22,15,16,.34) !important;
  text-shadow:none !important;
  box-shadow:0 8px 24px rgba(0,0,0,.14);
}
html.dark .experience-tag{
  color:#fff6f5 !important;
  background:rgba(18,11,13,.82) !important;
  border-color:rgba(255,255,255,.24) !important;
}

/* Section 8 / horizontal image story: always place copy on a readable dark
   editorial gradient instead of relying on the photo itself for contrast. */
.vx8-panel .vx8-wash{
  background:
    linear-gradient(90deg,rgba(7,5,6,.94) 0%,rgba(7,5,6,.78) 30%,rgba(7,5,6,.42) 56%,rgba(7,5,6,.10) 82%),
    linear-gradient(0deg,rgba(7,5,6,.82) 0%,rgba(7,5,6,.24) 52%,transparent 100%) !important;
}
.vx8-copy{
  z-index:12 !important;
  color:#fff8f7 !important;
  text-shadow:0 2px 18px rgba(0,0,0,.34);
}
.vx8-copy h2{
  color:#fff8f7 !important;
  text-shadow:0 4px 24px rgba(0,0,0,.38);
}
.vx8-copy h2 em{
  color:#f29191 !important;
  text-shadow:0 3px 18px rgba(0,0,0,.25);
}
.vx8-copy p{
  color:#f7e8e8 !important;
  text-shadow:0 2px 14px rgba(0,0,0,.42);
}
.vx8-kicker{color:#f7a0a0 !important;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.vx8-kicker:before{background:#f7a0a0 !important}
.vx8-caption{color:#fff4f3 !important;text-shadow:0 2px 12px rgba(0,0,0,.45)}

/* Light mode must not turn the scrolling story copy back to dark text. */
html:not(.dark) .vx8-copy,
html:not(.dark) .vx8-copy h2,
html:not(.dark) .vx8-copy p,
html:not(.dark) .vx8-caption{
  color:#fff8f7 !important;
}
html:not(.dark) .vx8-copy h2 em{color:#f29191 !important}
html:not(.dark) .vx8-kicker{color:#ffd0d0 !important}
html:not(.dark) .vx8-kicker:before{background:#ffd0d0 !important}

/* Make the reveal itself readable instead of showing a long invisible
   transition while the frame changes every second. */
.vx8-track.vx8-horizontal-track .vx8-panel .vx8-copy{
  opacity:0 !important;
  transform:translate3d(0,18px,0) !important;
  transition:opacity .28s ease,transform .38s cubic-bezier(.2,.75,.2,1) !important;
}
.vx8-track.vx8-horizontal-track .vx8-panel.is-active .vx8-copy{
  opacity:1 !important;
  transform:translate3d(0,0,0) !important;
}

/* Keep the image itself from washing out the copy during the horizontal move. */
.vx8-track.vx8-horizontal-track .vx8-panel .vx8-image img{
  filter:brightness(.82) saturate(.9) contrast(1.06) !important;
}
.vx8-track.vx8-horizontal-track .vx8-panel.is-active .vx8-image img{
  filter:brightness(.84) saturate(1.05) contrast(1.07) !important;
}

@media (max-width:767px){
  .experience-tag{
    font-size:14px !important;
    line-height:1.25 !important;
    padding:7px 10px !important;
    max-width:calc(100% - 24px) !important;
  }
  .vx8-copy{
    left:18px !important;
    right:18px !important;
    bottom:22px !important;
    max-width:calc(100% - 36px) !important;
  }
  .vx8-copy h2{
    font-size:clamp(30px,8.8vw,42px) !important;
    line-height:1 !important;
  }
  .vx8-copy p{
    font-size:14px !important;
    line-height:1.55 !important;
    max-width:100% !important;
  }
}


/* =========================================================
   HOME 2 — SECTION 02 + 03 FINAL RESTRUCTURE
   Scoped only to Home 2 sections 02 and 03.
   ========================================================= */
.h2-v2-s2,.h2-v2-s3{position:relative;overflow:hidden;margin:0!important}
.h2-v2-s2{padding:0 0 0;background:var(--h2-bg);border:0}
.h2-v2-s2 .s2-shell{position:relative;z-index:2}
.h2-v2-s2 .s2-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:45px;align-items:end;padding:72px 0 34px}
.h2-v2-s2 .s2-head-copy{display:grid;grid-template-columns:1fr .65fr;gap:35px;align-items:end}
.h2-v2-s2 .s2-head-copy h2{margin:0;font-size:clamp(38px,4.4vw,58px);line-height:1.02;letter-spacing:-.035em}
.h2-v2-s2 .s2-head-copy em{color:var(--h2-accent);font-style:normal}
.h2-v2-s2 .s2-head-copy p{margin:0;color:var(--h2-muted);font-size:15px;line-height:1.7;max-width:380px}
.s2-flow{height:510px;position:relative;border-top:1px solid var(--h2-line);border-bottom:1px solid var(--h2-line)}
.s2-line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--h2-accent),transparent);opacity:.28;transform-origin:left center;pointer-events:none}
.s2-line-a{width:72%;left:10%;top:30%;transform:rotate(-9deg);animation:s2LineDrift 6s ease-in-out infinite}
.s2-line-b{width:62%;right:3%;bottom:23%;transform:rotate(7deg);animation:s2LineDrift 7s ease-in-out infinite reverse}
@keyframes s2LineDrift{50%{transform:translateX(28px) rotate(-5deg);opacity:.5}}
.s2-orb{position:absolute;border:1px solid rgba(184,109,109,.22);border-radius:50%;pointer-events:none}
.s2-orb-a{width:440px;height:440px;left:50%;top:50%;transform:translate(-50%,-50%);animation:s2Orb 13s linear infinite}
.s2-orb-b{width:660px;height:280px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-17deg);border-style:dashed;animation:s2OrbB 17s linear infinite}
@keyframes s2Orb{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes s2OrbB{to{transform:translate(-50%,-50%) rotate(-377deg)}}
.s2-rail{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-around;pointer-events:none;opacity:.35}
.s2-rail span{width:6px;height:6px;border-radius:50%;background:var(--h2-accent);box-shadow:0 0 0 0 rgba(184,109,109,.3);animation:s2Pulse 2.2s infinite}
.s2-rail i{height:180px;width:1px;background:var(--h2-line);transform:rotate(18deg)}
@keyframes s2Pulse{70%{box-shadow:0 0 0 14px transparent}100%{box-shadow:0 0 0 0 transparent}}

.s2-visual{position:absolute;left:50%;top:50%;width:340px;height:340px;margin:0;transform:translate(calc(-50% + var(--s2-px,0px)),calc(-50% + var(--s2-py,0px))) rotate(-3deg);z-index:3;overflow:visible}
.s2-image-wrap{width:100%;height:100%;overflow:hidden;clip-path:polygon(7% 0,88% 4%,100% 78%,84% 100%,10% 94%,0 18%);background:var(--h2-surface);box-shadow:0 28px 70px rgba(0,0,0,.2)}
.s2-image-wrap:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(184,109,109,.2));mix-blend-mode:screen;pointer-events:none}
.s2-image-wrap img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter 1s}
.s2-visual:hover .s2-image-wrap img{transform:scale(1.17) rotate(2deg);filter:saturate(1.08)}
.s2-image-word{position:absolute;left:-35px;bottom:18px;font:800 14px "Space Grotesk";letter-spacing:.2em;color:var(--h2-ink);transform:rotate(-90deg);transform-origin:left bottom}
.s2-image-index{position:absolute;right:-35px;top:18px;font:800 14px "Space Grotesk";color:var(--h2-accent);letter-spacing:.1em}
.s2-scan{position:absolute;width:72px;height:72px;border:1px solid var(--h2-accent);border-radius:50%;right:-22px;bottom:-22px;animation:s2Scan 4s ease-in-out infinite}
.s2-scan:before{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--h2-accent);left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 0 rgba(184,109,109,.35);animation:s2Pulse 2.4s infinite}
@keyframes s2Scan{50%{transform:scale(1.14) rotate(35deg);opacity:.55}}

.s2-feature{position:absolute;z-index:5;width:280px;display:grid;grid-template-columns:36px 1fr;gap:11px;align-items:start}
.s2-feature-one{left:1%;top:48px}.s2-feature-two{right:1%;top:72px}.s2-feature-three{left:50%;bottom:26px;transform:translateX(-50%);width:370px}
.s2-num{font:800 14px "Space Grotesk";color:var(--h2-accent);padding-top:3px}
.s2-feature-icon{width:36px;height:36px;grid-row:1/4;border:1px solid var(--h2-line);border-radius:50%;display:grid;place-items:center;color:var(--h2-accent);background:var(--h2-surface);animation:s2IconFloat 3.5s ease-in-out infinite}
.s2-feature small{font-size:14px;font-weight:800;letter-spacing:.1em;color:var(--h2-accent)}
.s2-feature h3{font:700 20px "Space Grotesk";margin:5px 0 4px}
.s2-feature p{font-size:14px;line-height:1.55;color:var(--h2-muted);margin:0}
@keyframes s2IconFloat{50%{transform:translateY(-5px) rotate(8deg)}}
.s2-stamp{position:absolute;right:9%;bottom:35px;display:flex;align-items:center;gap:10px;color:var(--h2-muted);font:800 12px/1.25 "Space Grotesk";letter-spacing:.12em;transform:rotate(-5deg);opacity:.8}
.s2-stamp b{width:42px;height:42px;border:1px solid var(--h2-accent);border-radius:50%;display:grid;place-items:center;color:var(--h2-accent);font-size:20px}
.s2-marquee{overflow:hidden;border-bottom:1px solid var(--h2-line);white-space:nowrap;padding:14px 0}
.s2-marquee>div{display:inline-flex;align-items:center;gap:18px;min-width:max-content;animation:s2Marquee 24s linear infinite;font:800 14px "Space Grotesk";letter-spacing:.15em;color:var(--h2-muted)}
.s2-marquee i{font-style:normal;color:var(--h2-accent)}
@keyframes s2Marquee{to{transform:translateX(-50%)}}
.h2-v2-s2 [data-s2-reveal]{opacity:0;filter:blur(7px);transform:translateY(35px);transition:opacity .75s ease,filter .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.h2-v2-s2 [data-s2-reveal].s2-visible{opacity:1;filter:none;transform:none}
.h2-v2-s2 .s2-feature-two[data-s2-reveal]{transform:translate(35px,35px)}
.h2-v2-s2 .s2-feature-two[data-s2-reveal].s2-visible{transform:none}
.h2-v2-s2 .s2-feature-three[data-s2-reveal]{transform:translate(-50%,35px)}
.h2-v2-s2 .s2-feature-three[data-s2-reveal].s2-visible{transform:translateX(-50%)}

html.dark .h2-v2-s2{background:#170D0D}
html.dark .s2-feature-icon{background:#1F1010;border-color:var(--h2-dark-line)}
html.dark .s2-feature p,.h2-v2-s2 .s2-head-copy p{color:var(--h2-dark-muted)}
html.dark .s2-feature h3,html.dark .s2-image-word{color:var(--h2-dark-ink)}

/* Section 03 — horizontal editorial rail, deliberately different from Section 02 */
.h2-v2-s3{padding:0;background:var(--h2-dark);color:var(--h2-dark-ink);border:0}
.s3-shell{position:relative;z-index:2;padding:0}
.s3-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.s3-bg span{position:absolute;border:1px solid rgba(199,152,152,.14);border-radius:50%;animation:s3Spin 18s linear infinite}
.s3-bg span:first-child{width:620px;height:620px;left:-250px;top:12%}.s3-bg span:nth-child(2){width:420px;height:420px;right:-160px;bottom:-80px;animation-direction:reverse}
.s3-bg i{position:absolute;width:70%;height:1px;left:15%;top:46%;background:linear-gradient(90deg,transparent,rgba(199,152,152,.3),transparent);transform:rotate(-6deg)}
@keyframes s3Spin{to{transform:rotate(360deg)}}
.s3-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:45px;align-items:end;padding:72px 0 34px}
.s3-head>div:last-child{display:grid;grid-template-columns:1fr .62fr;gap:35px;align-items:end}
.s3-head h2{font-size:clamp(38px,4.4vw,58px);line-height:1.02;margin:0;letter-spacing:-.035em}
.s3-head h2 em{font-style:normal;color:#D58D8D}
.s3-head p{font-size:15px;line-height:1.7;color:var(--h2-dark-muted);margin:0;max-width:390px}
.s3-window{position:relative;overflow:hidden;border-top:1px solid var(--h2-dark-line);border-bottom:1px solid var(--h2-dark-line)}
.s3-track{display:flex;width:300%;will-change:transform}
.s3-panel{width:33.333333%;min-width:33.333333%;min-height:560px;display:grid;grid-template-columns:55px .9fr 1.1fr;gap:30px;align-items:center;padding:36px 0}
.s3-panel-number{font:800 14px "Space Grotesk";color:#D58D8D;align-self:start;padding-top:7px}
.s3-panel-media{height:470px;position:relative;overflow:hidden;clip-path:polygon(0 7%,91% 0,100% 90%,12% 100%);background:#241414}
.s3-panel-media:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 45%,rgba(213,141,141,.28));mix-blend-mode:screen}
.s3-panel-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.s3-panel:hover .s3-panel-media img{transform:scale(1.16) rotate(-1deg)}
.s3-panel-media span{position:absolute;left:18px;bottom:18px;z-index:2;font:800 14px "Space Grotesk";letter-spacing:.14em;color:#F4EAEA}
.s3-panel-copy{max-width:520px}
.s3-panel-copy small{font-size:14px;font-weight:800;letter-spacing:.12em;color:#C79898}
.s3-panel-copy h3{font:700 clamp(42px,5vw,70px)/.94 "Space Grotesk";margin:18px 0 18px;letter-spacing:-.04em}
.s3-panel-copy h3 em{font-style:normal;color:#D58D8D}
.s3-panel-copy p{font-size:15px;line-height:1.75;color:var(--h2-dark-muted);max-width:460px;margin:0 0 24px}
.s3-panel-copy a{font-size:14px;font-weight:800;color:var(--h2-dark-ink);display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid rgba(199,152,152,.45);padding-bottom:8px}
.s3-panel-copy a i{transition:transform .3s}.s3-panel-copy a:hover i{transform:translateX(6px)}
.s3-progress{height:3px;background:rgba(199,152,152,.18);position:absolute;left:55px;right:55px;bottom:0}
.s3-progress span{display:block;height:100%;width:33.333%;background:#D58D8D;transform-origin:left center}
.s3-scroll-note{position:absolute;right:0;bottom:22px;display:flex;gap:9px;align-items:center;font:800 14px "Space Grotesk";letter-spacing:.1em;color:#C79898}
.s3-scroll-note i{font-size:11px}
.h2-v2-s3 .h2-section-label{color:#C79898}

@media (max-width:900px){
  .h2-v2-s2 .s2-head,.s3-head{grid-template-columns:1fr;gap:18px;padding:56px 0 28px}
  .h2-v2-s2 .s2-head-copy,.s3-head>div:last-child{grid-template-columns:1fr .8fr;gap:26px}
  .s2-flow{height:500px}
  .s2-visual{width:290px;height:290px}
  .s2-feature{width:245px}.s2-feature-three{width:315px}
  .s3-panel{min-height:500px;grid-template-columns:42px .85fr 1.15fr;gap:20px}
  .s3-panel-media{height:400px}
  .s3-panel-copy h3{font-size:clamp(38px,6vw,54px)}
}
@media (max-width:640px){
  .h2-v2-s2 .s2-head,.s3-head{padding:46px 0 24px}
  .h2-v2-s2 .s2-head-copy,.s3-head>div:last-child{grid-template-columns:1fr;gap:12px}
  .h2-v2-s2 .s2-head-copy h2,.s3-head h2{font-size:36px}
  .h2-v2-s2 .s2-head-copy p,.s3-head p{font-size:14px;max-width:none}
  .s2-flow{height:650px}
  .s2-visual{width:230px;height:230px;top:48%}
  .s2-image-word{left:-24px;font-size:12px}.s2-image-index{right:-22px;font-size:12px}
  .s2-scan{width:54px;height:54px;right:-13px;bottom:-13px}
  .s2-feature{width:calc(100% - 8px);grid-template-columns:31px 34px 1fr;gap:8px;padding:0}
  .s2-feature-one{left:4px;top:22px}.s2-feature-two{right:4px;top:auto;bottom:125px}
  .s2-feature-three{left:4px;bottom:15px;width:calc(100% - 8px);transform:none}
  .s2-feature-icon{width:34px;height:34px;grid-row:1/4}
  .s2-feature small,.s2-feature h3,.s2-feature p{grid-column:3}
  .s2-feature small{font-size:14px}.s2-feature h3{font-size:18px}.s2-feature p{font-size:14px}
  .s2-stamp{display:none}
  .s2-marquee>div{font-size:14px}
  .h2-v2-s3{padding-bottom:0}
  .s3-window{overflow:visible;border-top:0}
  .s3-track{display:block;width:100%}
  .s3-panel{width:100%;min-width:0;min-height:auto;display:grid;grid-template-columns:30px 1fr;gap:12px;padding:24px 0 36px;border-bottom:1px solid var(--h2-dark-line)}
  .s3-panel-number{grid-row:1/3}
  .s3-panel-media{grid-column:2;height:270px;clip-path:polygon(0 5%,94% 0,100% 92%,8% 100%)}
  .s3-panel-copy{grid-column:2;padding-right:5px}
  .s3-panel-copy h3{font-size:40px;margin:14px 0}
  .s3-panel-copy p{font-size:14px;line-height:1.65;margin-bottom:18px}
  .s3-panel-media span{font-size:12px}
  .s3-progress,.s3-scroll-note{display:none}
  .s3-bg span:first-child{width:380px;height:380px;left:-220px}.s3-bg span:nth-child(2){width:280px;height:280px;right:-150px}
}
@media (prefers-reduced-motion:reduce){
  .s2-line,.s2-orb,.s2-rail span,.s2-icon-float,.s2-scan,.s2-marquee>div,.s3-bg span{animation:none!important}
  .h2-v2-s2 [data-s2-reveal]{opacity:1!important;filter:none!important;transform:none!important}
  .h2-v2-s2 .s2-feature-three[data-s2-reveal]{transform:none!important}
}


/* =========================================================
   FINAL MOBILE / REPAIR VISIBILITY PATCH
   ========================================================= */

/* Home 1 — keep the POWER / PROTECTION / STYLE label safely
   inside the viewport with equal left/right breathing room. */
.home-page .experience-tag{
  box-sizing:border-box !important;
}

@media (max-width:767px){
  .home-page .experience-tag{
    left:16px !important;
    right:16px !important;
    bottom:2% !important;
    width:auto !important;
    max-width:none !important;
    padding:7px 12px !important;
    text-align:center !important;
    white-space:nowrap !important;
  }
}

/* Repair path — make the step numbers clearly readable against
   the pale circular markers in every theme. */
#repair-path .repair-node .node-no,
.section5-repair .repair-node .node-no{
  background:#F6EDED !important;
  color:#B86D6D !important;
  border-color:rgba(246,237,237,.5) !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* Repair CTA — never allow the link to fall back to black on
   the dark repair section. */
#repair-path .repair-path-intro > .text-link,
#repair-path .repair-path-intro > .text-link i,
.section5-repair .repair-path-intro .text-link,
.section5-repair .repair-path-intro .text-link i{
  color:#F6EDED !important;
  border-bottom-color:rgba(246,237,237,.5) !important;
  text-shadow:none !important;
  opacity:1 !important;
}

html.dark #repair-path .repair-path-intro > .text-link,
html.dark #repair-path .repair-path-intro > .text-link i,
html.dark .section5-repair .repair-path-intro .text-link,
html.dark .section5-repair .repair-path-intro .text-link i{
  color:#190E0E !important;
  border-bottom-color:rgba(25,14,14,.5) !important;
}

/* =========================================================
   HOME 1 — FINAL MOBILE EXPERIENCE TAG + REPAIR CTA FIX
   ========================================================= */

/* POWER / PROTECTION / STYLE — keep equal breathing room on both sides. */
@media (max-width: 767px){
  .home-page .experience-visual .experience-tag{
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
    padding: 8px 12px !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }
}

/* REPAIR CTA — force a readable light color on the dark editorial section.
   This is intentionally scoped to Home 1 so other pages are untouched. */
.home-page #repair-path .repair-path-intro > a.text-link,
.home-page #repair-path .repair-path-intro > a.text-link i{
  color: #F6EDED !important;
  -webkit-text-fill-color: #F6EDED !important;
  border-bottom-color: rgba(246,237,237,.55) !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

html.dark .home-page #repair-path .repair-path-intro > a.text-link,
html.dark .home-page #repair-path .repair-path-intro > a.text-link i{
  color: #F6EDED !important;
  -webkit-text-fill-color: #F6EDED !important;
  border-bottom-color: rgba(246,237,237,.55) !important;
}

/* =========================================================
   HOME 2 — SECTION 02 + 03 REDESIGN
   Full-width editorial flow, no empty section gaps.
   ========================================================= */
.h2-redesign-s2,.h2-redesign-s3{margin:0!important;padding:0!important;position:relative;overflow:hidden}
.h2-redesign-s2{background:var(--bg);color:var(--ink);border-top:0;border-bottom:0}
.s2-r-shell{position:relative;z-index:3}
.s2-redesign-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.s2-radar{position:absolute;width:min(72vw,760px);height:min(72vw,760px);border:1px solid rgba(184,109,109,.16);border-radius:50%;right:-18%;top:8%;animation:s2RSpin 20s linear infinite}
.s2-radar:before,.s2-radar:after{content:"";position:absolute;inset:11%;border:1px dashed rgba(184,109,109,.13);border-radius:50%}
.s2-radar:after{inset:25%;border-style:solid}
.s2-sweep{position:absolute;width:70%;height:1px;left:-8%;top:28%;background:linear-gradient(90deg,transparent,rgba(184,109,109,.55),transparent);transform:rotate(-13deg);animation:s2RSweep 6s ease-in-out infinite}
.s2-grid-a,.s2-grid-b{position:absolute;width:45%;height:45%;border:1px solid rgba(184,109,109,.08);transform:skewY(-8deg) rotate(2deg);left:-14%;bottom:2%}
.s2-grid-b{left:auto;right:-15%;top:3%;transform:skewY(8deg) rotate(-2deg)}
@keyframes s2RSpin{to{transform:rotate(360deg)}}
@keyframes s2RSweep{0%,100%{transform:translateX(-10%) rotate(-13deg);opacity:.2}50%{transform:translateX(45%) rotate(-13deg);opacity:.8}}
.s2-r-top{display:grid;grid-template-columns:.72fr 1.28fr;align-items:end;gap:35px;padding:68px 0 24px;border-bottom:1px solid var(--line)}
.s2-r-topline{display:flex;align-items:center;gap:16px;font:800 11px "Space Grotesk";letter-spacing:.15em;color:var(--muted);white-space:nowrap}
.s2-r-topline i{height:1px;flex:1;background:var(--line)}
.s2-r-stage{min-height:650px;position:relative;border-bottom:1px solid var(--line)}
.s2-r-copy{position:absolute;z-index:5;display:grid;grid-template-columns:34px 1fr;gap:12px;max-width:330px}
.s2-r-copy-a{left:0;top:66px}.s2-r-copy-b{right:0;bottom:82px;text-align:left}
.s2-r-index{font:800 13px "Space Grotesk";color:var(--accent);padding-top:4px}
.s2-r-copy small{font:800 11px "Space Grotesk";letter-spacing:.16em;color:var(--accent)}
.s2-r-copy h2{font:700 clamp(40px,4.6vw,64px)/.94 "Space Grotesk";letter-spacing:-.05em;margin:10px 0 15px}
.s2-r-copy h3{font:700 clamp(30px,3.3vw,45px)/.98 "Space Grotesk";letter-spacing:-.045em;margin:8px 0 12px}
.s2-r-copy em{font-style:normal;color:var(--accent)}
.s2-r-copy p{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 18px;max-width:300px}
.s2-r-copy a{display:inline-flex;align-items:center;gap:9px;font:800 12px "Space Grotesk";letter-spacing:.08em;color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:8px}
.s2-r-copy a i{transition:transform .3s}.s2-r-copy a:hover i{transform:translateX(6px)}
.s2-r-visual{position:absolute;width:min(48vw,530px);height:min(48vw,530px);left:50%;top:50%;transform:translate(-50%,-50%) rotate(-4deg);margin:0;z-index:3}
.s2-r-image{height:100%;overflow:hidden;clip-path:polygon(5% 0,92% 5%,100% 82%,84% 100%,8% 94%,0 17%);box-shadow:0 35px 90px rgba(0,0,0,.22);background:var(--surface)}
.s2-r-image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(184,109,109,.3));mix-blend-mode:screen}
.s2-r-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.1);transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter 1s}
.s2-r-visual:hover img{transform:scale(1.18) rotate(2deg);filter:saturate(1.1)}
.s2-r-stamp{position:absolute;left:-36px;bottom:58px;font:800 12px/1.15 "Space Grotesk";letter-spacing:.16em;color:var(--ink);transform:rotate(-90deg);transform-origin:left bottom}
.s2-r-coord{position:absolute;right:-32px;top:35px;font:800 10px "Space Grotesk";letter-spacing:.1em;color:var(--accent);transform:rotate(90deg)}
.s2-r-orbit{position:absolute;width:110%;height:52%;left:-5%;top:23%;border:1px solid rgba(184,109,109,.3);border-radius:50%;transform:rotate(-20deg);animation:s2ROrbit 8s ease-in-out infinite}
.s2-r-orbit:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--accent);right:9%;top:3%;box-shadow:0 0 0 7px rgba(184,109,109,.1),0 0 25px rgba(184,109,109,.5)}
@keyframes s2ROrbit{0%,100%{transform:rotate(-20deg) scale(1)}50%{transform:rotate(-13deg) scale(1.035)}}
.s2-r-bottom{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:min(620px,70%);font-size:11px;color:var(--muted);letter-spacing:.08em}
.s2-r-bottom span{font:800 10px "Space Grotesk";color:var(--accent);white-space:nowrap}.s2-r-bottom b{font-weight:600;line-height:1.35}.s2-r-bottom i{color:var(--accent);animation:s2Arrow 1.5s ease-in-out infinite}
@keyframes s2Arrow{50%{transform:translateY(5px)}}
.s2-r-marquee{overflow:hidden;white-space:nowrap;border-bottom:1px solid var(--line);padding:13px 0}
.s2-r-marquee div{display:inline-block;min-width:max-content;font:800 13px "Space Grotesk";letter-spacing:.18em;color:var(--muted);animation:s2RMarquee 23s linear infinite}
.s2-r-marquee i{font-style:normal;color:var(--accent);padding:0 14px}
@keyframes s2RMarquee{to{transform:translateX(-50%)}}
.h2-redesign-s2 [data-s2-reveal]{opacity:0;transform:translateY(32px);filter:blur(7px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.75,.2,1),filter .8s ease}
.h2-redesign-s2 [data-s2-reveal].s2-visible{opacity:1;transform:none;filter:none}

.h2-redesign-s3{background:#170d0d;color:#f7eded}
.s3-r-shell{position:relative;z-index:2}
.s3-r-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.s3-r-bg span{position:absolute;border:1px solid rgba(213,141,141,.13);border-radius:50%;animation:s3RSpin 22s linear infinite}
.s3-r-bg span:first-child{width:720px;height:720px;left:-300px;top:8%}.s3-r-bg span:nth-child(2){width:460px;height:460px;right:-180px;bottom:0;animation-direction:reverse}
.s3-r-bg i{position:absolute;width:85%;height:1px;left:8%;top:50%;background:linear-gradient(90deg,transparent,rgba(213,141,141,.3),transparent);transform:rotate(-7deg)}
@keyframes s3RSpin{to{transform:rotate(360deg)}}
.s3-r-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:35px;align-items:end;padding:68px 0 30px;border-bottom:1px solid rgba(199,152,152,.18)}
.s3-r-kicker{font:800 11px "Space Grotesk";letter-spacing:.17em;color:#c79898}
.s3-r-intro h2{font:700 clamp(42px,5vw,68px)/.95 "Space Grotesk";letter-spacing:-.05em;margin:10px 0 16px}
.s3-r-intro h2 em{font-style:normal;color:#d58d8d}.s3-r-intro p{font-size:15px;line-height:1.7;color:#c8aaaa;max-width:510px;margin:0}
.s3-r-route{position:relative;padding:0}
.s3-r-route-line{position:absolute;left:25%;top:0;bottom:0;width:1px;background:linear-gradient(#d58d8d,rgba(213,141,141,.08));opacity:.5}
.s3-r-route-line span{position:absolute;top:0;left:-3px;width:7px;height:70px;border-radius:8px;background:#d58d8d;box-shadow:0 0 22px rgba(213,141,141,.55);animation:s3RLine 5s ease-in-out infinite}
@keyframes s3RLine{0%{transform:translateY(0)}50%{transform:translateY(250px)}100%{transform:translateY(0)}}
.s3-r-scene{min-height:510px;display:grid;grid-template-columns:55px 1fr 1fr;gap:34px;align-items:center;padding:48px 0;border-bottom:1px solid rgba(199,152,152,.15);position:relative}
.s3-r-scene:last-child{border-bottom:0}.s3-r-scene-reverse .s3-r-media{order:2}.s3-r-scene-reverse .s3-r-copy{order:1}.s3-r-no{font:800 13px "Space Grotesk";color:#d58d8d;align-self:start;padding-top:8px}
.s3-r-media{height:390px;position:relative;overflow:hidden;clip-path:polygon(0 6%,93% 0,100% 90%,8% 100%);background:#251414}
.s3-r-media:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 42%,rgba(213,141,141,.26));mix-blend-mode:screen}
.s3-r-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.1s cubic-bezier(.2,.7,.2,1),filter 1s}
.s3-r-scene:hover .s3-r-media img{transform:scale(1.17) rotate(-1.5deg);filter:saturate(1.1)}
.s3-r-media span{position:absolute;left:18px;bottom:18px;z-index:2;font:800 12px "Space Grotesk";letter-spacing:.15em;color:#f8eeee}
.s3-r-copy{max-width:480px}.s3-r-copy small{font:800 11px "Space Grotesk";letter-spacing:.16em;color:#c79898}.s3-r-copy h3{font:700 clamp(42px,5vw,70px)/.92 "Space Grotesk";letter-spacing:-.05em;margin:14px 0 18px}.s3-r-copy h3 em{font-style:normal;color:#d58d8d}.s3-r-copy p{font-size:15px;line-height:1.75;color:#c8aaaa;max-width:430px;margin:0 0 22px}.s3-r-copy a{display:inline-flex;gap:10px;align-items:center;color:#f7eded;font:800 12px "Space Grotesk";letter-spacing:.08em;border-bottom:1px solid rgba(199,152,152,.45);padding-bottom:8px}.s3-r-copy a i{transition:transform .3s}.s3-r-copy a:hover i{transform:translateX(6px)}
.s3-r-footer{display:flex;justify-content:space-between;gap:20px;padding:18px 0;font:800 10px "Space Grotesk";letter-spacing:.13em;color:#9f7e7e}.s3-r-footer b{color:#c79898}
.h2-redesign-s3 [data-s3-reveal]{opacity:0;transform:translateY(45px);filter:blur(6px);transition:opacity .85s ease,transform .95s cubic-bezier(.2,.75,.2,1),filter .85s ease}.h2-redesign-s3 [data-s3-reveal].s3-r-visible{opacity:1;transform:none;filter:none}

html.dark .h2-redesign-s2{background:#170d0d;color:#f7eded}html.dark .h2-redesign-s2 .s2-r-copy h2,html.dark .h2-redesign-s2 .s2-r-copy h3,html.dark .h2-redesign-s2 .s2-r-copy a,html.dark .h2-redesign-s2 .s2-r-bottom b{color:#f7eded}html.dark .h2-redesign-s2 .s2-r-copy p,html.dark .h2-redesign-s2 .s2-r-topline,html.dark .h2-redesign-s2 .s2-r-bottom{color:#c8aaaa}html.dark .h2-redesign-s2 .s2-r-marquee div{color:#c8aaaa}html.dark .h2-redesign-s2 .s2-r-stamp{color:#f7eded}
@media(max-width:900px){
 .s2-r-top,.s3-r-intro{grid-template-columns:1fr;gap:16px;padding:52px 0 24px}.s2-r-topline{font-size:10px}.s2-r-stage{min-height:690px}.s2-r-copy{max-width:290px}.s2-r-copy-a{left:0;top:42px}.s2-r-copy-b{right:0;bottom:92px}.s2-r-visual{width:390px;height:390px}.s2-r-bottom{width:82%}.s3-r-scene{grid-template-columns:38px 1fr;gap:16px;min-height:0;padding:38px 0}.s3-r-media{grid-column:2;height:330px}.s3-r-copy{grid-column:2}.s3-r-scene-reverse .s3-r-media,.s3-r-scene-reverse .s3-r-copy{order:initial}.s3-r-route-line{left:18px}.s3-r-copy h3{font-size:52px}.s3-r-footer{flex-wrap:wrap}.s3-r-intro p{font-size:14px}
}
@media(max-width:640px){
 .s2-r-top{padding:42px 14px 20px}.s2-r-topline{white-space:normal;line-height:1.5;flex-wrap:wrap}.s2-r-stage{min-height:720px;margin:0 14px}.s2-r-copy{max-width:calc(100% - 18px);grid-template-columns:27px 1fr}.s2-r-copy-a{top:30px}.s2-r-copy-b{bottom:100px}.s2-r-copy h2{font-size:39px}.s2-r-copy h3{font-size:30px}.s2-r-copy p{font-size:13px}.s2-r-visual{width:250px;height:250px;top:49%}.s2-r-stamp{left:-24px;bottom:38px;font-size:10px}.s2-r-coord{right:-27px;font-size:8px}.s2-r-bottom{left:0;bottom:22px;transform:none;width:100%;grid-template-columns:auto 1fr auto;gap:9px;font-size:10px}.s2-r-bottom i{font-size:11px}.s2-r-marquee div{font-size:11px}.s3-r-intro{padding:42px 14px 22px}.s3-r-intro h2{font-size:42px}.s3-r-intro p{font-size:13px;line-height:1.6}.s3-r-scene{grid-template-columns:28px 1fr;gap:10px;padding:28px 14px}.s3-r-route-line{left:14px}.s3-r-media{height:245px}.s3-r-copy h3{font-size:41px;margin:12px 0}.s3-r-copy p{font-size:13px;line-height:1.65}.s3-r-footer{padding:15px 14px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.s2-radar,.s2-sweep,.s2-r-orbit,.s2-r-bottom i,.s2-r-marquee div,.s3-r-bg span,.s3-r-route-line span{animation:none!important}.h2-redesign-s2 [data-s2-reveal],.h2-redesign-s3 [data-s3-reveal]{opacity:1!important;transform:none!important;filter:none!important}}

/* =========================================================
   HOME 2 — CLEAN REBUILD: SECTION 02 + 03
   Normal document flow only: no absolute content stacking,
   no pinned rails, no overlapping elements, no artificial gaps.
   ========================================================= */
.cv-home2-s2,.cv-home2-s3{
  position:relative!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate;
}
.cv-home2-s2{background:var(--bg);color:var(--ink);border:0!important}
.cv-home2-s3{background:#190f0f;color:#f8eeee;border:0!important}
.cv-s2-wrap,.cv-s3-wrap{position:relative;z-index:2;width:min(1180px,calc(100% - 40px));margin:0 auto}
.cv-s2-head,.cv-s3-head{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:50px;
  align-items:end;
  padding:58px 0 34px;
  border-bottom:1px solid var(--line);
}
.cv-s2-title>span,.cv-s3-kicker{
  display:block;
  font:800 11px/1.3 "Space Grotesk",sans-serif;
  letter-spacing:.16em;
  color:var(--accent);
}
.cv-s2-title h2,.cv-s3-head h2{
  margin:10px 0 0;
  font:700 clamp(42px,5vw,68px)/.94 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;
}
.cv-s2-title h2 em,.cv-s3-head h2 em{font-style:normal;color:var(--accent)}
.cv-s2-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,520px);
  gap:70px;
  align-items:center;
  padding:48px 0 46px;
}
.cv-s2-copy{display:grid;gap:0}
.cv-s2-item{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:18px;
  padding:23px 0;
  border-top:1px solid var(--line);
}
.cv-s2-item:last-child{border-bottom:1px solid var(--line)}
.cv-s2-num{
  display:grid;
  place-items:center;
  width:32px;height:32px;
  border:1px solid var(--accent);
  border-radius:50%;
  color:var(--accent);
  font:800 11px "Space Grotesk";
}
.cv-s2-item small,.cv-s3-content small{
  display:block;
  font:800 10px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.16em;
  color:var(--accent);
}
.cv-s2-item h3{
  margin:7px 0 7px;
  font:700 clamp(25px,2.5vw,35px)/1 "Space Grotesk",sans-serif;
  letter-spacing:-.035em;
}
.cv-s2-item p{
  margin:0 0 12px;
  max-width:490px;
  font-size:14px;
  line-height:1.65;
  color:var(--muted);
}
.cv-s2-item a,.cv-s3-content a{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font:800 14px "Space Grotesk",sans-serif;
  letter-spacing:.08em;
  color:var(--ink);
  border-bottom:1px solid var(--line);
  padding-bottom:6px;
}
.cv-s2-item a i,.cv-s3-content a i{transition:transform .3s}
.cv-s2-item a:hover i,.cv-s3-content a:hover i{transform:translateX(6px)}
.cv-s2-visual{
  position:relative;
  width:100%;
  max-width:520px;
  aspect-ratio:1/1;
  justify-self:end;
}
.cv-s2-photo{
  position:absolute;
  inset:10px 10px 26px 0;
  overflow:hidden;
  clip-path:polygon(0 7%,91% 0,100% 88%,87% 100%,5% 94%);
  background:var(--surface);
  box-shadow:0 28px 70px rgba(0,0,0,.18);
}
.cv-s2-photo img{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.06);
  transition:transform 1s cubic-bezier(.2,.75,.2,1),filter 1s;
}
.cv-s2-visual:hover .cv-s2-photo img{transform:scale(1.13);filter:saturate(1.08)}
.cv-s2-orbit{
  position:absolute;
  width:88%;height:43%;
  right:-5%;top:29%;
  border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);
  border-radius:50%;
  transform:rotate(-18deg);
  animation:cvS2Orbit 8s ease-in-out infinite;
  pointer-events:none;
}
.cv-s2-orbit:after{
  content:"";position:absolute;right:7%;top:0;
  width:8px;height:8px;border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 7px color-mix(in srgb,var(--accent) 12%,transparent),0 0 25px color-mix(in srgb,var(--accent) 55%,transparent);
}
@keyframes cvS2Orbit{50%{transform:rotate(-10deg) scale(1.025)}}
.cv-s2-tag{
  position:absolute;right:-4px;bottom:38px;
  padding:9px 11px;
  background:var(--ink);color:var(--bg);
  font:800 11px/1.15 "Space Grotesk";
  letter-spacing:.14em;
}
.cv-s2-caption{
  position:absolute;
  left:4px;
  bottom:0;
  font:800 12px "Space Grotesk";
  letter-spacing:.14em;
  color:var(--muted);
}
.cv-s2-strip{
  overflow:hidden;
  display:flex;
  gap:18px;
  white-space:nowrap;
  border-top:1px solid var(--line);
  padding:13px 0;
  font:800 11px "Space Grotesk";
  letter-spacing:.16em;
  color:var(--muted);
}
.cv-s2-strip{animation:cvS2Strip 18s linear infinite}
.cv-s2-strip i{font-style:normal;color:var(--accent)}
@keyframes cvS2Strip{0%{transform:translateX(0)}50%{transform:translateX(-25px)}100%{transform:translateX(0)}}

/* Section 03 — three clean horizontal bands */
.cv-s3-head{
  border-color:rgba(255,255,255,.13);
}
.cv-home2-s3 .h2-section-label b{color:#f8eeee}
.cv-home2-s3 .h2-section-label span{color:#d58d8d}
.cv-s3-head h2{color:#f8eeee}
.cv-s3-head h2 em{color:#d58d8d}
.cv-s3-head p{
  margin:14px 0 0;
  max-width:570px;
  color:#c8aaaa;
  font-size:14px;
  line-height:1.7;
}
.cv-s3-steps{display:grid;gap:0}
.cv-s3-step{
  display:grid;
  grid-template-columns:54px minmax(320px,1fr) minmax(0,1fr);
  gap:34px;
  align-items:center;
  padding:38px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.cv-s3-step:last-child{border-bottom:0}
.cv-s3-step-reverse .cv-s3-image{order:3}
.cv-s3-step-reverse .cv-s3-content{order:2}
.cv-s3-step-reverse .cv-s3-index{order:1}
.cv-s3-index{
  align-self:start;
  padding-top:8px;
  font:800 12px "Space Grotesk";
  color:#d58d8d;
}
.cv-s3-image{
  position:relative;
  height:310px;
  overflow:hidden;
  background:#241414;
  clip-path:polygon(0 6%,94% 0,100% 91%,7% 100%);
}
.cv-s3-image img{
  width:100%;height:100%;object-fit:cover;
  transform:scale(1.06);
  transition:transform 1s cubic-bezier(.2,.75,.2,1),filter 1s;
}
.cv-s3-step:hover .cv-s3-image img{transform:scale(1.13);filter:saturate(1.08)}
.cv-s3-image:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,transparent 45%,rgba(213,141,141,.25));
  pointer-events:none;
}
.cv-s3-image span{
  position:absolute;left:17px;bottom:16px;z-index:2;
  font:800 10px "Space Grotesk";
  letter-spacing:.15em;color:#fff;
}
.cv-s3-content{max-width:480px}
.cv-s3-content h3{
  margin:10px 0 12px;
  font:700 clamp(34px,4vw,56px)/.94 "Space Grotesk";
  letter-spacing:-.05em;color:#f8eeee;
}
.cv-s3-content h3 em{font-style:normal;color:#d58d8d}
.cv-s3-content p{
  margin:0 0 18px;
  max-width:440px;
  color:#c8aaaa;
  font-size:14px;line-height:1.7;
}
.cv-s3-content a{color:#f8eeee;border-color:rgba(255,255,255,.22)}
.cv-s3-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:17px 0;
  font:800 12px/1.4 "Space Grotesk",sans-serif;
  letter-spacing:.14em;
  color:#d8bebe !important;
  border-top:1px solid rgba(255,255,255,.14);
}

.cv-s3-footer b{
  color:#f8eeee !important;
  font-size:12px !important;
}
.cv-s2-bg,.cv-s3-bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.cv-s2-ring{
  position:absolute;border:1px solid rgba(184,109,109,.11);border-radius:50%;
  animation:cvBgSpin 24s linear infinite;
}
.cv-ring-a{width:620px;height:620px;right:-300px;top:15%}
.cv-ring-b{width:350px;height:350px;left:-180px;bottom:-100px;animation-direction:reverse}
.cv-s2-line{
  position:absolute;left:0;right:0;top:52%;height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,109,109,.18),transparent);
  transform:rotate(-4deg);
}
.cv-s3-glow{
  position:absolute;width:500px;height:500px;right:-180px;top:10%;
  border:1px solid rgba(213,141,141,.12);border-radius:50%;
  box-shadow:0 0 100px rgba(213,141,141,.05);
  animation:cvBgSpin 28s linear infinite;
}
.cv-s3-grid{
  position:absolute;left:-12%;bottom:8%;width:48%;height:35%;
  border:1px solid rgba(213,141,141,.07);transform:skewY(-7deg);
}
@keyframes cvBgSpin{to{transform:rotate(360deg)}}

/* Scroll entrance — transforms only the element itself, never its layout */
.cv-reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .8s cubic-bezier(.2,.75,.2,1)}
.cv-reveal.cv-in{opacity:1;transform:none}
.cv-s2-item:nth-child(2){transition-delay:.08s}.cv-s2-item:nth-child(3){transition-delay:.16s}
.cv-s3-step:nth-child(2){transition-delay:.08s}.cv-s3-step:nth-child(3){transition-delay:.16s}

@media(max-width:900px){
  .cv-s2-head,.cv-s3-head{grid-template-columns:1fr;gap:18px;padding:48px 0 28px}
  .cv-s2-layout{grid-template-columns:1fr;gap:35px;padding:36px 0}
  .cv-s2-visual{justify-self:center;max-width:600px}
  .cv-s3-step{grid-template-columns:42px minmax(0,1fr);gap:18px;padding:30px 0}
  .cv-s3-image{grid-column:2;height:300px}
  .cv-s3-content{grid-column:2;max-width:650px}
  .cv-s3-step-reverse .cv-s3-image,.cv-s3-step-reverse .cv-s3-content{order:initial}
}
@media(max-width:640px){
  .cv-s2-wrap,.cv-s3-wrap{width:calc(100% - 28px)}
  .cv-s2-head,.cv-s3-head{padding:38px 0 22px}
  .cv-s2-title h2,.cv-s3-head h2{font-size:40px}
  .cv-s2-layout{padding:25px 0 28px;gap:25px}
  .cv-s2-item{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:19px 0}
  .cv-s2-num{width:29px;height:29px;font-size:10px}
  .cv-s2-item h3{font-size:27px}
  .cv-s2-item p,.cv-s3-content p{font-size:13px}
  .cv-s2-visual{width:100%;aspect-ratio:1/1}
  .cv-s2-photo{inset:7px 7px 22px 0}
  .cv-s2-tag{right:0;bottom:30px;font-size:9px}
  .cv-s2-caption{font-size:8px}
  .cv-s3-step{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:25px 0}
  .cv-s3-image{height:230px}
  .cv-s3-content h3{font-size:37px;margin:9px 0 10px}
  .cv-s3-footer{flex-wrap:wrap;font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  .cv-s2-ring,.cv-s3-glow,.cv-s2-orbit,.cv-s2-strip{animation:none!important}
  .cv-reveal{opacity:1!important;transform:none!important}
}
/* Home Page 1 - Experience tag desktop spacing */
@media (min-width: 768px){
  .home-page .experience-visual .experience-tag{
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }
}
/* HOME PAGE 2 - SECTION 1 - EXPLORE PRODUCTS VISIBILITY FIX */
.h2-hero .h2-actions .h2-btn-solid{
  background:#D17575 !important;
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  opacity:1 !important;
  text-shadow:none !important;
}

.h2-hero .h2-actions .h2-btn-solid i{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  opacity:1 !important;
}
/* HOME PAGE 2 — PROTECTION / POWER / CLARITY
   Light mode typography = Dark mode typography */
@media (min-width: 0px){
  .cv-s2-item .cv-s2-kicker{
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  .cv-s2-item h3{
    font-size: 34px !important;
    line-height: 1.05 !important;
  }

  .cv-s2-item p{
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  .cv-s2-item a{
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
}/* HOME PAGE 2 - SECTION 2
   LIGHT MODE = DARK MODE TYPOGRAPHY */
@media (max-width: 640px){

  .cv-s2-item .cv-s2-kicker{
    font-size: 11px !important;
    line-height: 1.4 !important;
  }

  .cv-s2-item h3{
    font-size: 34px !important;
    line-height: 1.08 !important;
  }

  .cv-s2-item p{
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  .cv-s2-item a{
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
}/* HOME PAGE 2 - SECTION 3
   LIGHT MODE CTA VISIBILITY */
html:not(.dark) .cv-home2-s3 .cv-s3-content a{
  display:inline-flex !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#f8eeee !important;
  -webkit-text-fill-color:#f8eeee !important;
  font-size:14px !important;
  font-weight:800 !important;
  line-height:1.4 !important;
  border-bottom:1px solid rgba(255,255,255,.22) !important;
}

html:not(.dark) .cv-home2-s3 .cv-s3-content a i{
  color:#f8eeee !important;
  -webkit-text-fill-color:#f8eeee !important;
  opacity:1 !important;
}
/* HOME PAGE 2 - SECTION 3
   LIGHT / PROTECTED - SAME FONT SIZE IN BOTH MODES */

.cv-home2-s3 .cv-s3-content small{
  font-size:10px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
}
/* HOME PAGE 2 — SECTION 3 FOOTER
   LIGHT MODE VISIBILITY + SAME LARGE TEXT SIZE */

html.light .cv-home2-s3 .cv-s3-footer{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  color:#d8bebe !important;
  font-size:12px !important;
}

html.light .cv-home2-s3 .cv-s3-footer span{
  color:#d8bebe !important;
  font-size:12px !important;
  visibility:visible !important;
  opacity:1 !important;
}

html.light .cv-home2-s3 .cv-s3-footer b{
  color:#f8eeee !important;
  font-size:12px !important;
  visibility:visible !important;
  opacity:1 !important;
}
@media (max-width:640px){
  html.light .cv-home2-s3 .cv-s3-footer{
    font-size:12px !important;
    line-height:1.4 !important;
  }

  html.light .cv-home2-s3 .cv-s3-footer span,
  html.light .cv-home2-s3 .cv-s3-footer b{
    font-size:12px !important;
  }
}
/* HOME PAGE 2 - SECTION 07 - NEED A REPAIR BUTTON */
.h2-split .h2-btn-solid{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  opacity:1 !important;
}

.h2-split .h2-btn-solid i{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  opacity:1 !important;
}
/* =========================================================
   VOLTIVA FOOTER — EXACT SAME FONT SIZE IN LIGHT & DARK
   Footer only — no other section affected
   ========================================================= */

.cv-footer .cv-footer-brand .brand-text strong,
.cv-footer .cv-footer-brand .brand-text small,
.cv-footer .cv-footer-brand > p,
.cv-footer .cv-footer-col h3,
.cv-footer .cv-footer-col > a,
.cv-footer .cv-footer-contact p,
.cv-footer .cv-footer-contact p i,
.cv-footer .footer-socials a,
.cv-footer .cv-footer-bottom,
.cv-footer .cv-footer-bottom a{
  font-family:"Space Grotesk",sans-serif !important;
}

/* SAME SIZE — LIGHT + DARK */
html:not(.dark) .cv-footer .cv-footer-brand .brand-text strong,
html.dark .cv-footer .cv-footer-brand .brand-text strong{
  font-size:16px !important;
}

html:not(.dark) .cv-footer .cv-footer-brand .brand-text small,
html.dark .cv-footer .cv-footer-brand .brand-text small{
  font-size:13px !important;
}

html:not(.dark) .cv-footer .cv-footer-brand > p,
html.dark .cv-footer .cv-footer-brand > p{
  font-size:14px !important;
  line-height:1.6 !important;
}

html:not(.dark) .cv-footer .cv-footer-col h3,
html.dark .cv-footer .cv-footer-col h3{
  font-size:14px !important;
  line-height:1.25 !important;
}

html:not(.dark) .cv-footer .cv-footer-col > a,
html.dark .cv-footer .cv-footer-col > a{
  font-size:14px !important;
  line-height:1.4 !important;
}

html:not(.dark) .cv-footer .cv-footer-contact p,
html.dark .cv-footer .cv-footer-contact p{
  font-size:14px !important;
  line-height:1.5 !important;
}

html:not(.dark) .cv-footer .cv-footer-contact p i,
html.dark .cv-footer .cv-footer-contact p i{
  font-size:14px !important;
}

html:not(.dark) .cv-footer .footer-socials a,
html.dark .cv-footer .footer-socials a{
  font-size:14px !important;
}

html:not(.dark) .cv-footer .cv-footer-bottom,
html.dark .cv-footer .cv-footer-bottom{
  font-size:13px !important;
  line-height:1.4 !important;
}

html:not(.dark) .cv-footer .cv-footer-bottom a,
html.dark .cv-footer .cv-footer-bottom a{
  font-size:13px !important;
}

@media(max-width:767px){
  html:not(.dark) .cv-footer .cv-footer-brand .brand-text strong,
  html.dark .cv-footer .cv-footer-brand .brand-text strong{
    font-size:16px !important;
  }

  html:not(.dark) .cv-footer .cv-footer-brand .brand-text small,
  html.dark .cv-footer .cv-footer-brand .brand-text small{
    font-size:13px !important;
  }

  html:not(.dark) .cv-footer .cv-footer-brand > p,
  html.dark .cv-footer .cv-footer-brand > p{
    font-size:14px !important;
  }

  html:not(.dark) .cv-footer .cv-footer-col h3,
  html.dark .cv-footer .cv-footer-col h3,
  html:not(.dark) .cv-footer .cv-footer-col > a,
  html.dark .cv-footer .cv-footer-col > a,
  html:not(.dark) .cv-footer .cv-footer-contact p,
  html.dark .cv-footer .cv-footer-contact p{
    font-size:14px !important;
  }

  html:not(.dark) .cv-footer .cv-footer-bottom,
  html.dark .cv-footer .cv-footer-bottom,
  html:not(.dark) .cv-footer .cv-footer-bottom a,
  html.dark .cv-footer .cv-footer-bottom a{
    font-size:13px !important;
  }
}
/* HOME PAGE 2 - SECTION 07
   LIGHT MODE: NEED A REPAIR BUTTON TEXT VISIBILITY */

html:not(.dark) #h2-split .h2-split-copy .h2-btn.h2-btn-solid{
  background:#F4EAEA !important;
  color:#170D0D !important;
  -webkit-text-fill-color:#170D0D !important;
  opacity:1 !important;
  text-shadow:none !important;
}

html:not(.dark) #h2-split .h2-split-copy .h2-btn.h2-btn-solid i{
  color:#170D0D !important;
  -webkit-text-fill-color:#170D0D !important;
  opacity:1 !important;
}
/* =========================================================
   ABOUT PAGE — SECTION 05 VIDEO LAB
   Full-bleed / zero-gap / responsive
   ========================================================= */
.about-video-lab{
  position:relative;
  min-height:760px;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden;
  background:#100909;
  color:#F7EEEE;
  isolation:isolate;
}
.about-video-lab .avl-media,
.about-video-lab .avl-video,
.about-video-lab .avl-shade,
.about-video-lab .avl-gridline{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.about-video-lab .avl-video{
  display:block;
  object-fit:cover;
  object-position:center center;
  filter:saturate(.88) contrast(1.04);
  transform:scale(1.02);
  transition:transform 1.2s ease;
}
.about-video-lab:hover .avl-video{transform:scale(1.045)}
.about-video-lab .avl-shade{
  z-index:1;
  background:linear-gradient(90deg,rgba(12,6,6,.92) 0%,rgba(12,6,6,.72) 30%,rgba(12,6,6,.18) 62%,rgba(12,6,6,.22) 100%),linear-gradient(0deg,rgba(12,6,6,.72) 0%,transparent 32%,rgba(12,6,6,.2) 100%);
}
.about-video-lab .avl-gridline{
  z-index:2;
  opacity:.28;
  background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
  background-size:80px 80px;
  mask-image:linear-gradient(to right,transparent 0%,#000 28%,#000 78%,transparent 100%);
  pointer-events:none;
}
.about-video-lab .avl-inner{
  position:relative;
  z-index:3;
  min-height:760px;
  display:flex;
  align-items:center;
  padding-top:110px;
  padding-bottom:110px;
}
.about-video-lab .avl-copy{
  width:min(620px,58%);
  animation:avlCopyIn .9s cubic-bezier(.2,.75,.2,1) both;
}
.about-video-lab .avl-copy .about-kicker{margin-bottom:20px}
.about-video-lab .avl-copy h2{
  margin:0;
  max-width:650px;
  font:800 clamp(48px,6.2vw,92px)/.92 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;
}
.about-video-lab .avl-copy h2 em{
  color:#D47A7A;
  font-style:normal;
}
.about-video-lab .avl-copy p{
  max-width:570px;
  margin:26px 0 28px;
  color:#E2C8C8;
  font-size:16px;
  line-height:1.7;
}
.about-video-lab .avl-meta{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.18);
}
.about-video-lab .avl-meta span{
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  color:#F1DEDE;
}
.about-video-lab .avl-meta i{color:#D47A7A;margin-right:7px}
.about-video-lab .avl-corner{
  position:absolute;
  top:34px;
  right:0;
  font:800 12px/1 "Space Grotesk",sans-serif;
  letter-spacing:.14em;
  color:#F0DADA;
}
.about-video-lab .avl-corner span{color:#B88989}
.about-video-lab .avl-scroll{
  position:absolute;
  right:0;
  bottom:34px;
  display:flex;
  align-items:center;
  gap:10px;
  font:800 10px/1 "Space Grotesk",sans-serif;
  letter-spacing:.14em;
  color:#D9BABA;
}
.about-video-lab .avl-scroll i{color:#D47A7A;animation:avlArrow 1.6s ease-in-out infinite}
@keyframes avlCopyIn{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}
@keyframes avlArrow{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

@media(max-width:1100px){
  .about-video-lab{min-height:680px}
  .about-video-lab .avl-inner{min-height:680px}
  .about-video-lab .avl-copy{width:min(620px,68%)}
}
@media(max-width:820px){
  .about-video-lab{min-height:620px}
  .about-video-lab .avl-inner{
    min-height:620px;
    align-items:flex-end;
    padding-top:90px;
    padding-bottom:82px;
  }
  .about-video-lab .avl-copy{width:100%;max-width:680px}
  .about-video-lab .avl-copy h2{font-size:clamp(42px,8vw,68px)}
  .about-video-lab .avl-copy p{max-width:620px}
  .about-video-lab .avl-shade{background:linear-gradient(0deg,rgba(12,6,6,.96) 0%,rgba(12,6,6,.72) 42%,rgba(12,6,6,.16) 82%),linear-gradient(90deg,rgba(12,6,6,.3),transparent)}
  .about-video-lab .avl-corner{right:18px;top:28px}
  .about-video-lab .avl-scroll{right:18px;bottom:28px}
}
@media(max-width:560px){
  .about-video-lab{min-height:570px}
  .about-video-lab .avl-inner{min-height:570px;padding:78px 14px 72px}
  .about-video-lab .avl-copy h2{font-size:clamp(38px,10.8vw,54px);line-height:.96}
  .about-video-lab .avl-copy p{font-size:15px;line-height:1.55;margin:18px 0 20px}
  .about-video-lab .avl-meta{gap:9px 16px;padding-top:15px}
  .about-video-lab .avl-meta span{font-size:9px;letter-spacing:.11em}
  .about-video-lab .avl-corner{font-size:10px;top:22px;right:14px}
  .about-video-lab .avl-scroll{font-size:8px;bottom:20px;right:14px}
  .about-video-lab .avl-video{object-position:center center}
}


/* =========================================================
   ABOUT PAGE — SECTION 06 RESTRUCTURE
   Compact scrollytelling / reduced gaps / layered reveals
   Section 06 only
   ========================================================= */

.about-page #experience.scroll-story{
  padding:56px 0 64px !important;
  overflow:clip;
}

.about-page #experience .scroll-story-inner{
  width:min(1280px,calc(100% - 48px)) !important;
  margin-inline:auto !important;
}

.about-page #experience .scroll-sticky{
  grid-template-columns:minmax(0,.72fr) minmax(280px,1.28fr) !important;
  gap:28px !important;
  padding:0 0 26px !important;
  align-items:end !important;
}

.about-page #experience .scroll-sticky h2{
  margin:0 0 10px !important;
}

.about-page #experience .scroll-caption{
  margin:0 !important;
  max-width:560px !important;
}

.about-page #experience .scroll-progress{
  margin:14px 0 0 !important;
  width:min(100%,360px) !important;
}

.about-page #experience .scroll-panels{
  gap:0 !important;
}

.about-page #experience .scroll-panel,
.about-page #experience .scroll-panel:nth-child(even){
  padding:28px 0 34px !important;
  grid-template-columns:38px minmax(250px,.82fr) minmax(360px,1.18fr) !important;
  column-gap:22px !important;
  min-height:0 !important;
}

.about-page #experience .scroll-panel::before{
  left:-14px !important;
  right:-14px !important;
  height:78% !important;
  border-radius:24px !important;
}

.about-page #experience .panel-no{
  align-self:start;
  padding-top:4px;
  font-size:13px !important;
  font-weight:800;
  transition:transform .65s cubic-bezier(.2,.8,.2,1),color .4s ease;
}

.about-page #experience .panel-copy{
  position:relative;
  z-index:2;
  transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .6s ease;
}

.about-page #experience .panel-copy > span{
  display:block;
  margin-bottom:8px;
  font-size:12px !important;
  letter-spacing:.16em;
  font-weight:800;
  transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .5s ease;
}

.about-page #experience .panel-copy h3{
  margin:0 0 9px !important;
  transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .5s ease;
}

.about-page #experience .panel-copy p{
  margin:0 !important;
  max-width:620px !important;
  transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .55s ease;
}

.about-page #experience .panel-image{
  position:relative;
  z-index:2;
  height:330px !important;
  margin-top:0 !important;
  overflow:hidden;
  border-radius:22px;
  transform:perspective(1200px) rotateY(4deg) rotateX(1deg) translateY(18px) scale(.96) !important;
  opacity:.72;
  transition:
    transform .9s cubic-bezier(.2,.8,.2,1),
    opacity .7s ease,
    box-shadow .8s ease,
    clip-path .9s cubic-bezier(.2,.8,.2,1);
  clip-path:inset(8% 3% 8% 3% round 22px);
}

.about-page #experience .panel-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.08);
  transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter .9s ease;
}

.about-page #experience .scroll-panel.is-active .panel-no{
  transform:translateY(-4px) scale(1.08);
  color:#BD6666;
}

.about-page #experience .scroll-panel.is-active .panel-copy{
  transform:translateX(8px);
}

.about-page #experience .scroll-panel.is-active .panel-copy > span{
  transform:translateX(5px);
}

.about-page #experience .scroll-panel.is-active .panel-copy h3{
  transform:translateX(4px);
}

.about-page #experience .scroll-panel.is-active .panel-image{
  opacity:1;
  transform:perspective(1200px) rotateY(0deg) rotateX(0deg) translateY(-4px) scale(1) !important;
  clip-path:inset(0 0 0 0 round 22px);
  box-shadow:0 28px 70px rgba(43,23,23,.18);
}

.about-page #experience .scroll-panel.is-active .panel-image img{
  transform:scale(1);
}

.about-page #experience .scroll-panel:hover .panel-image{
  opacity:1;
  transform:perspective(1200px) rotateY(0deg) rotateX(0deg) translateY(-5px) scale(1) !important;
  clip-path:inset(0 0 0 0 round 22px);
}

.about-page #experience .scroll-panel:hover .panel-image img{
  transform:scale(1.04);
}

/* Extra reveal sweep for the active panel */
.about-page #experience .scroll-panel::after{
  content:"";
  position:absolute;
  left:38px;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,#C87575,transparent);
  transform:scaleX(0);
  transform-origin:left;
  opacity:0;
  transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .5s ease;
}
.about-page #experience .scroll-panel.is-active::after{
  transform:scaleX(1);
  opacity:.7;
}

html:not(.dark) .about-page #experience .scroll-panel::before{
  background:linear-gradient(110deg,rgba(202,104,104,.07),rgba(255,255,255,.32),rgba(202,104,104,.05)) !important;
}

html.dark .about-page #experience .scroll-panel::before{
  background:linear-gradient(110deg,rgba(202,104,104,.08),rgba(255,255,255,.035),rgba(202,104,104,.07)) !important;
}

@media(max-width:820px){
  .about-page #experience.scroll-story{
    padding:48px 0 54px !important;
  }

  .about-page #experience .scroll-story-inner{
    width:min(100% - 28px,700px) !important;
  }

  .about-page #experience .scroll-sticky{
    display:block !important;
    padding-bottom:24px !important;
  }

  .about-page #experience .scroll-sticky h2{
    margin-bottom:10px !important;
  }

  .about-page #experience .scroll-progress{
    margin-top:12px !important;
    width:240px !important;
  }

  .about-page #experience .scroll-panel,
  .about-page #experience .scroll-panel:nth-child(even){
    grid-template-columns:30px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    column-gap:12px !important;
    row-gap:0 !important;
    padding:28px 0 30px !important;
  }

  .about-page #experience .panel-copy,
  .about-page #experience .scroll-panel:nth-child(even) .panel-copy{
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .about-page #experience .panel-image,
  .about-page #experience .scroll-panel:nth-child(even) .panel-image{
    grid-column:2 !important;
    grid-row:2 !important;
    width:100% !important;
    height:250px !important;
    margin-top:16px !important;
    border-radius:18px !important;
    transform:translateY(14px) scale(.97) !important;
    clip-path:inset(5% 2% 5% 2% round 18px);
  }

  .about-page #experience .scroll-panel.is-active .panel-image,
  .about-page #experience .scroll-panel:hover .panel-image{
    transform:translateY(-3px) scale(1) !important;
    clip-path:inset(0 0 0 0 round 18px);
  }

  .about-page #experience .scroll-panel::before{
    left:-8px !important;
    right:-8px !important;
    border-radius:18px !important;
  }

  .about-page #experience .scroll-panel::after{
    left:30px;
  }

  .about-page #experience .scroll-panel.is-active .panel-copy{
    transform:none;
  }
}

@media(max-width:560px){
  .about-page #experience.scroll-story{
    padding:42px 0 46px !important;
  }

  .about-page #experience .scroll-story-inner{
    width:calc(100% - 22px) !important;
  }

  .about-page #experience .scroll-sticky{
    padding-bottom:20px !important;
  }

  .about-page #experience .scroll-sticky h2{
    font-size:34px !important;
    line-height:1.05 !important;
  }

  .about-page #experience .scroll-caption{
    font-size:14px !important;
    line-height:1.55 !important;
  }

  .about-page #experience .scroll-panel,
  .about-page #experience .scroll-panel:nth-child(even){
    grid-template-columns:25px minmax(0,1fr) !important;
    column-gap:10px !important;
    padding:24px 0 26px !important;
  }

  .about-page #experience .panel-no{
    font-size:12px !important;
  }

  .about-page #experience .panel-copy > span{
    font-size:11px !important;
  }

  .about-page #experience .panel-copy h3{
    font-size:27px !important;
    line-height:1.08 !important;
  }

  .about-page #experience .panel-copy p{
    font-size:14px !important;
    line-height:1.55 !important;
  }

  .about-page #experience .panel-image,
  .about-page #experience .scroll-panel:nth-child(even) .panel-image{
    height:220px !important;
    margin-top:14px !important;
    border-radius:16px !important;
  }

  .about-page #experience .scroll-panel::after{
    left:25px;
  }
}

@media(prefers-reduced-motion:reduce){
  .about-page #experience .panel-copy,
  .about-page #experience .panel-image,
  .about-page #experience .panel-image img,
  .about-page #experience .panel-no{
    transition:none !important;
    transform:none !important;
  }
  .about-page #experience .scroll-panel::after{
    transform:scaleX(1) !important;
    opacity:.4 !important;
  }
}


/* =========================================================
   ABOUT PAGE — LIGHT MODE IMAGE-SECTIONS TEXT CONTRAST FIX
   Section 05 + Section 07 only.
   Keep the existing dark photographic backgrounds, but force
   readable light typography in Light Mode.
   ========================================================= */

html:not(.dark) .about-page .about-video-lab,
html:not(.dark) .about-page .about-video-lab .avl-copy,
html:not(.dark) .about-page .about-video-lab .avl-copy h2,
html:not(.dark) .about-page .about-video-lab .about-kicker,
html:not(.dark) .about-page .about-video-lab .about-kicker b,
html:not(.dark) .about-page .about-video-lab .avl-meta span,
html:not(.dark) .about-page .about-video-lab .avl-corner,
html:not(.dark) .about-page .about-video-lab .avl-scroll{
  color:#F8EEEE !important;
  -webkit-text-fill-color:#F8EEEE !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:0 2px 10px rgba(0,0,0,.55);
}

html:not(.dark) .about-page .about-video-lab .avl-copy p{
  color:#EAD7D7 !important;
  -webkit-text-fill-color:#EAD7D7 !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:0 2px 8px rgba(0,0,0,.5);
}

html:not(.dark) .about-page .about-video-lab .avl-copy h2 em{
  color:#E58A8A !important;
  -webkit-text-fill-color:#E58A8A !important;
}

html:not(.dark) .about-page .about-video-lab .avl-meta{
  border-top-color:rgba(255,255,255,.28) !important;
}

html:not(.dark) .about-page .about-video-lab .avl-meta i,
html:not(.dark) .about-page .about-video-lab .avl-scroll i{
  color:#E58A8A !important;
  -webkit-text-fill-color:#E58A8A !important;
}

html:not(.dark) .about-page .service-story,
html:not(.dark) .about-page .service-story .about-kicker,
html:not(.dark) .about-page .service-story .about-kicker b,
html:not(.dark) .about-page .service-story h2,
html:not(.dark) .about-page .service-story p,
html:not(.dark) .about-page .service-story .service-chip{
  color:#F8EEEE !important;
  -webkit-text-fill-color:#F8EEEE !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:0 2px 10px rgba(0,0,0,.58);
}

html:not(.dark) .about-page .service-story h2 em{
  color:#E58A8A !important;
  -webkit-text-fill-color:#E58A8A !important;
}

html:not(.dark) .about-page .service-story .service-chip i{
  color:#E58A8A !important;
  -webkit-text-fill-color:#E58A8A !important;
}


/* =========================================================
   ABOUT PAGE — FINAL LIGHT/DARK TEXT VISIBILITY + METRIC TYPE
   ========================================================= */

/* Section 01 hero tags: the hero image remains dark in Light Mode,
   so keep the overlay card text bright and readable. */
html:not(.dark) .about-page .hero-tag,
html.light .about-page .hero-tag{
  color:#F7EEEE !important;
}

html:not(.dark) .about-page .hero-tag b,
html.light .about-page .hero-tag b{
  color:#F7EEEE !important;
  -webkit-text-fill-color:#F7EEEE !important;
  opacity:1 !important;
  visibility:visible !important;
}

html:not(.dark) .about-page .hero-tag small,
html.light .about-page .hero-tag small{
  color:#E2CACA !important;
  -webkit-text-fill-color:#E2CACA !important;
  opacity:1 !important;
  visibility:visible !important;
}

html:not(.dark) .about-page .hero-tag i,
html.light .about-page .hero-tag i{
  color:#D77A7A !important;
  -webkit-text-fill-color:#D77A7A !important;
}

/* Section 04 — Dark Mode metric numbers and labels enlarged
   to match the visual scale requested. */
html.dark .about-page .difference .metric-pill strong{
  font:700 38px/1 "Space Grotesk",sans-serif !important;
}

html.dark .about-page .difference .metric-pill > span{
  font-size:17px !important;
  line-height:1.1 !important;
  color:#F4EBEB !important;
}

html.dark .about-page .difference .metric-pill small{
  font-size:13px !important;
  line-height:1.3 !important;
  color:#D0A8A8 !important;
}

/* Keep the larger typography responsive without causing overflow. */
@media (max-width:1100px){
  html.dark .about-page .difference .metric-pill strong{
    font-size:32px !important;
  }

  html.dark .about-page .difference .metric-pill > span{
    font-size:15px !important;
  }

  html.dark .about-page .difference .metric-pill small{
    font-size:12px !important;
  }
}

@media (max-width:767px){
  html.dark .about-page .difference .metric-pill strong{
    font-size:30px !important;
  }

  html.dark .about-page .difference .metric-pill > span{
    font-size:14px !important;
  }

  html.dark .about-page .difference .metric-pill small{
    font-size:12px !important;
  }
}


/* =========================================================
   REPAIR PAGE — SECTION 01 EDITORIAL LAB RESTRUCTURE
   No gaps, no repeated image treatment, layered reveal system.
   ========================================================= */
.repair-page .rs-hero-editorial{
  min-height:calc(100svh - 74px);
  padding:34px 6vw 0;
  grid-template-rows:auto 1fr;
  background:#0E0808;
}
.repair-page .repair-editorial-layout{
  grid-template-columns:minmax(360px,.78fr) minmax(520px,1.22fr);
  gap:3.5vw;
  min-height:0;
  padding:18px 0 0;
}
.repair-page .repair-editorial-copy{
  align-self:center;
  padding:20px 0 38px;
}
.repair-page .repair-editorial-copy h1{
  font-size:clamp(52px,6vw,86px);
  line-height:.9;
  max-width:650px;
  text-wrap:balance;
}
.repair-page .repair-editorial-visual{
  min-height:calc(100svh - 205px);
  align-self:stretch;
  overflow:visible;
}
.repair-page .repair-editorial-visual::before{
  content:"";
  position:absolute;
  inset:6% 4% 5% 8%;
  border:1px solid rgba(237,98,98,.18);
  clip-path:polygon(7% 0,100% 6%,94% 100%,0 92%);
  transform:rotate(-2deg);
  animation:repairFramePulse 5s ease-in-out infinite;
}
.repair-page .repair-editorial-visual::after{
  content:"01 — DIAGNOSE   /   02 — RESTORE   /   03 — VERIFY";
  position:absolute;
  right:3%;
  bottom:1%;
  z-index:8;
  color:rgba(247,239,239,.48);
  font:800 10px/1.2 Inter,sans-serif;
  letter-spacing:.16em;
  white-space:nowrap;
}
.repair-page .repair-image-main{
  width:min(57%,560px);
  height:78%;
  right:8%;
  top:7%;
  clip-path:polygon(6% 0,100% 5%,95% 100%,0 94%);
  animation:repairMainFloat 6s ease-in-out infinite,repairImageReveal 1.2s cubic-bezier(.2,.8,.2,1) both;
}
.repair-page .repair-image-detail{
  width:min(31%,245px);
  height:47%;
  left:2%;
  bottom:5%;
  clip-path:polygon(0 8%,91% 0,100% 92%,8% 100%);
  animation:repairDetailFloat 5s ease-in-out 1s infinite,repairDetailReveal 1.25s .18s cubic-bezier(.2,.8,.2,1) both;
}
.repair-page .repair-image-main::after,
.repair-page .repair-image-detail::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.22) 49%,transparent 63%);
  transform:translateX(-120%);
  animation:repairImageSweep 4.8s 1.1s ease-in-out infinite;
  pointer-events:none;
}
.repair-page .repair-image-line{
  left:48%;
  height:86%;
  top:7%;
  transform:rotate(11deg);
  animation:repairLineFloat 4s ease-in-out infinite;
}
.repair-page .repair-editorial-badge{
  right:1%;
  top:4%;
  animation:repairBadgeReveal .9s .35s cubic-bezier(.2,.8,.2,1) both,repairBadgeFloat 4s 1.2s ease-in-out infinite;
}
.repair-page .repair-editorial-stats{
  position:absolute;
  left:6vw;
  right:6vw;
  bottom:0;
  z-index:9;
  grid-template-columns:repeat(4,1fr);
}
.repair-page .repair-editorial-stats div{
  padding:13px 18px 14px 0;
}
.repair-page .repair-editorial-stats strong{font-size:25px}
.repair-page .repair-editorial-stats span{font-size:12px!important}

@keyframes repairFramePulse{
  0%,100%{transform:rotate(-2deg) scale(1);opacity:.45}
  50%{transform:rotate(1deg) scale(1.015);opacity:.85}
}
@keyframes repairImageReveal{
  from{opacity:0;transform:translate3d(70px,25px,0) rotate(6deg) scale(.94);clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}
  to{opacity:1;transform:rotate(2deg) translateY(0) scale(1);clip-path:polygon(6% 0,100% 5%,95% 100%,0 94%)}
}
@keyframes repairDetailReveal{
  from{opacity:0;transform:translate3d(-55px,45px,0) rotate(-9deg);clip-path:polygon(0 100%,0 100%,0 100%,0 100%)}
  to{opacity:1;transform:rotate(-3deg);clip-path:polygon(0 8%,91% 0,100% 92%,8% 100%)}
}
@keyframes repairImageSweep{0%,35%{transform:translateX(-120%)}65%,100%{transform:translateX(120%)}}
@keyframes repairLineFloat{0%,100%{transform:rotate(11deg) translateY(0)}50%{transform:rotate(14deg) translateY(-10px)}}
@keyframes repairBadgeReveal{from{opacity:0;transform:translateY(-20px) scale(.92)}to{opacity:1;transform:none}}
@keyframes repairBadgeFloat{0%,100%{margin-top:0}50%{margin-top:7px}}

/* LIGHT MODE — SECTION 02 & 03 CONTRAST */
html:not(.dark) .repair-page .rs-diagnosis-v3{
  background:#F8EDED !important;
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .diag-v3-head h2,
html:not(.dark) .repair-page .diag-v3-content h3{
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .diag-v3-head p,
html:not(.dark) .repair-page .diag-v3-content p{
  color:#5A3535 !important;
}
html:not(.dark) .repair-page .diag-v3-content>span,
html:not(.dark) .repair-page .diag-v3-chip{
  color:#7A3E3E !important;
}
html:not(.dark) .repair-page .diag-v3-marker{
  background:#F8EDED !important;
  color:#7A3E3E !important;
  border-color:#9D5B5B !important;
}
html:not(.dark) .repair-page .diag-v3-marker span{
  background:#F8EDED !important;
  color:#7A3E3E !important;
}
html:not(.dark) .repair-page .diag-v3-footer{
  color:#5A3535 !important;
}
html:not(.dark) .repair-page .diag-v3-footer a{
  color:#1A0D0D !important;
}

html:not(.dark) .repair-page .rs-categories-v2{
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .rs-category-title-row h2{
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .rs-category-title-row p{
  color:#5A3535 !important;
}
html:not(.dark) .repair-page .rs-mask-service{
  background:#E7D2D2 !important;
}
html:not(.dark) .repair-page .rs-mask-service .rs-tile-shade{
  background:linear-gradient(180deg,rgba(255,247,247,.02) 5%,rgba(247,232,232,.08) 35%,rgba(34,16,16,.78) 100%) !important;
}
html:not(.dark) .repair-page .rs-mask-service .rs-tile-copy h3{
  color:#FFFFFF !important;
  text-shadow:0 2px 12px rgba(0,0,0,.75) !important;
}
html:not(.dark) .repair-page .rs-mask-service .rs-tile-copy p{
  color:#FFF5F5 !important;
  text-shadow:0 1px 8px rgba(0,0,0,.75) !important;
}
html:not(.dark) .repair-page .rs-mask-service .rs-tile-copy a{
  color:#FFFFFF !important;
  text-shadow:0 1px 8px rgba(0,0,0,.75) !important;
}
html:not(.dark) .repair-page .rs-mask-service .rs-tile-copy>span{
  color:#FFD0D0 !important;
  text-shadow:0 1px 8px rgba(0,0,0,.75) !important;
}

/* SECTION 01 LIGHT MODE */
html:not(.dark) .repair-page .rs-hero-editorial{
  background:#F7EAEA !important;
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .repair-editorial-bg{
  background:
    linear-gradient(90deg,rgba(247,234,234,.96) 0%,rgba(247,234,234,.82) 42%,rgba(247,234,234,.30) 72%,rgba(247,234,234,.52) 100%),
    url('../images/smartphone-lifestyle-flatlay.jpg') center/cover no-repeat !important;
}
html:not(.dark) .repair-page .repair-editorial-copy h1,
html:not(.dark) .repair-page .repair-editorial-copy p,
html:not(.dark) .repair-page .repair-editorial-link{
  color:#1A0D0D !important;
}
html:not(.dark) .repair-page .repair-editorial-copy p{color:#5A3535 !important}
html:not(.dark) .repair-page .repair-editorial-kicker{color:#8A4141 !important}
html:not(.dark) .repair-page .repair-editorial-code{color:#704141 !important}
html:not(.dark) .repair-page .repair-editorial-points span{color:#603838 !important}
html:not(.dark) .repair-page .repair-editorial-stats strong{color:#1A0D0D !important}
html:not(.dark) .repair-page .repair-editorial-stats span{color:#704141 !important}
html:not(.dark) .repair-page .repair-editorial-badge{color:#1A0D0D;background:#E89B9B !important}

@media(max-width:900px){
  .repair-page .rs-hero-editorial{padding-top:28px}
  .repair-page .repair-editorial-layout{gap:0;padding-top:10px}
  .repair-page .repair-editorial-visual{min-height:460px}
  .repair-page .repair-image-main{width:68%;height:68%;right:4%;top:7%}
  .repair-page .repair-image-detail{width:34%;height:43%;left:1%;bottom:7%}
  .repair-page .repair-editorial-stats{left:5vw;right:5vw}
}
@media(max-width:767px){
  .repair-page .rs-hero-editorial{padding:24px 20px 0}
  .repair-page .repair-editorial-layout{display:flex;flex-direction:column;padding-top:8px}
  .repair-page .repair-editorial-copy{padding:10px 0 18px}
  .repair-page .repair-editorial-copy h1{font-size:clamp(42px,11.5vw,62px)}
  .repair-page .repair-editorial-visual{min-height:390px;margin-top:0}
  .repair-page .repair-image-main{width:71%;height:72%;right:2%;top:6%}
  .repair-page .repair-image-detail{width:36%;height:45%;left:0;bottom:6%}
  .repair-page .repair-editorial-visual::after{font-size:8px;right:0;bottom:0}
  .repair-page .repair-editorial-stats{position:relative;left:auto;right:auto;bottom:auto;margin-top:4px;grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){
  .repair-page .repair-editorial-visual::before,
  .repair-page .repair-image-main,
  .repair-page .repair-image-detail,
  .repair-page .repair-image-line,
  .repair-page .repair-editorial-badge{animation:none!important}
}

/* =========================================================
   REPAIR SERVICES — SECTION 01 V4
   Editorial split/reveal redesign — no repeated imagery
   ========================================================= */
.repair-hero-v4{
  min-height:calc(100vh - 74px)!important;
  margin:0!important;
  padding:38px 6vw 22px!important;
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  gap:0!important;
  background:#0c0707!important;
  color:#f8eeee!important;
  overflow:hidden!important;
  isolation:isolate;
}
.repair-v4-bg{position:absolute;inset:0;z-index:-3;overflow:hidden;
  background:
    radial-gradient(circle at 75% 42%,rgba(237,98,98,.14),transparent 26%),
    linear-gradient(115deg,#0c0707 0%,#170c0c 48%,#0d0808 100%);
}
.repair-v4-grid-line{position:absolute;top:-15%;height:130%;width:1px;background:linear-gradient(to bottom,transparent,rgba(237,98,98,.25),transparent);transform:rotate(14deg)}
.repair-v4-grid-line-a{left:57%}.repair-v4-grid-line-b{left:79%;opacity:.45}
.repair-v4-orbit{position:absolute;width:640px;height:640px;border:1px solid rgba(237,98,98,.16);border-radius:50%;right:-180px;top:8%;animation:repairV4Orbit 18s linear infinite}
.repair-v4-orbit-two{width:430px;height:430px;right:8%;top:23%;border-color:rgba(237,98,98,.1);animation-duration:12s;animation-direction:reverse}
.repair-v4-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid rgba(237,160,160,.2);position:relative;z-index:5}
.repair-v4-kicker{display:flex;align-items:center;gap:10px;color:#ed7777;font:800 12px/1.2 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.repair-v4-kicker b{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(237,119,119,.65);border-radius:50%;font-size:11px}
.repair-v4-kicker i{width:34px;height:1px;background:#ed7777;opacity:.65}
.repair-v4-code{color:#b78383;font:700 10px/1 Inter,sans-serif;letter-spacing:.17em}
.repair-v4-layout{display:grid;grid-template-columns:minmax(360px,.88fr) minmax(450px,1.12fr);gap:5vw;align-items:center;min-height:0;padding:22px 0 18px}
.repair-v4-copy{position:relative;z-index:5;max-width:700px}
.repair-v4-label{color:#b97979;font:800 11px/1.2 Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;margin-bottom:17px}
.repair-v4-copy h1{font:700 clamp(52px,6.7vw,94px)/.88 "Space Grotesk",sans-serif;letter-spacing:-.065em;margin:0;display:flex;flex-direction:column}
.repair-v4-copy h1 span,.repair-v4-copy h1 em{display:block;overflow:hidden;font-style:normal}
.repair-v4-copy h1 span{transform:translateY(110%);opacity:0}
.repair-v4-copy h1 em{color:#ed7777;margin-top:5px;transform:translateY(110%);opacity:0}
.repair-v4-copy h1.rs-split-visible span,.repair-v4-copy h1.rs-split-visible em{animation:repairV4Split .9s cubic-bezier(.16,1,.3,1) forwards}
.repair-v4-copy h1.rs-split-visible span:nth-child(2){animation-delay:.1s}.repair-v4-copy h1.rs-split-visible em{animation-delay:.2s}
.repair-v4-copy p{max-width:620px;color:#d8b8b8!important;font-size:16px!important;line-height:1.72;margin:23px 0 0}
.repair-v4-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.repair-v4-link{color:#f8eeee;text-decoration:none;font-weight:800;display:inline-flex;gap:9px;align-items:center}
.repair-v4-link i{color:#ed7777}
.repair-v4-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:34px;border-top:1px solid rgba(237,160,160,.18)}
.repair-v4-steps span{padding:15px 15px 8px 0;border-right:1px solid rgba(237,160,160,.14);display:grid;grid-template-columns:auto 1fr;column-gap:8px}
.repair-v4-steps span:last-child{border-right:0;padding-left:15px}
.repair-v4-steps b{grid-row:1 / span 2;color:#ed7777;font:800 11px/1 Inter,sans-serif}
.repair-v4-steps strong{font:800 13px/1.2 Inter,sans-serif;letter-spacing:.04em}
.repair-v4-steps small{color:#b98d8d;font-size:11px!important;margin-top:3px}
.repair-v4-visual{position:relative;min-height:560px;height:100%;display:grid;place-items:center}
.repair-v4-media{position:absolute;overflow:hidden;box-shadow:0 28px 75px rgba(0,0,0,.48);isolation:isolate}
.repair-v4-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(7,3,3,.65));z-index:1}
.repair-v4-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.7,.2,1);filter:saturate(.92) contrast(1.06)}
.repair-v4-media:hover img{transform:scale(1.08)}
.repair-v4-media-main{width:min(560px,78%);height:470px;right:3%;top:7%;clip-path:polygon(7% 0,100% 5%,94% 100%,0 93%);transform:rotate(2.2deg)}
.repair-v4-media-detail{width:235px;height:265px;left:1%;bottom:2%;clip-path:polygon(0 8%,91% 0,100% 92%,8% 100%);transform:rotate(-5deg);border:1px solid rgba(237,119,119,.55)}
.repair-v4-media-label{position:absolute;left:18px;bottom:15px;z-index:2;display:flex;gap:8px;align-items:center;color:#fff;font:800 10px/1 Inter,sans-serif;letter-spacing:.14em}
.repair-v4-media-label b{color:#ed7777}
.repair-v4-scan{position:absolute;width:72%;height:1px;background:linear-gradient(90deg,transparent,#ed7777,transparent);box-shadow:0 0 20px rgba(237,119,119,.55);transform:rotate(-18deg);animation:repairV4Scan 5s ease-in-out infinite;pointer-events:none}
.repair-v4-status{position:absolute;right:0;top:2%;z-index:5;display:grid;grid-template-columns:auto 1fr;column-gap:9px;align-items:center;background:#ed7777;color:#170909;padding:12px 16px;clip-path:polygon(0 0,96% 0,100% 18%,100% 100%,4% 100%,0 80%);box-shadow:0 16px 35px rgba(0,0,0,.3)}
.repair-v4-status i{grid-row:1 / span 2}.repair-v4-status span{font:800 9px/1 Inter,sans-serif;letter-spacing:.12em}.repair-v4-status b{font:900 14px/1 "Space Grotesk"}
.repair-v4-footer{display:flex;align-items:center;gap:14px;border-top:1px solid rgba(237,160,160,.2);padding-top:13px;color:#b98989;font:700 10px/1.2 Inter,sans-serif;letter-spacing:.13em;position:relative;z-index:4}
.repair-v4-footer i{width:36px;height:1px;background:#ed7777}.repair-v4-footer strong{color:#ed7777}.repair-v4-footer small{margin-left:auto;letter-spacing:.06em;color:#a77c7c}
@keyframes repairV4Split{to{transform:translateY(0);opacity:1}}
@keyframes repairV4Scan{0%,100%{opacity:0;transform:translateY(-80px) rotate(-18deg)}30%,70%{opacity:.7}50%{transform:translateY(80px) rotate(-18deg)}}
@keyframes repairV4Orbit{to{transform:rotate(360deg)}}

@media(max-width:1100px){
  .repair-hero-v4{padding-left:5vw!important;padding-right:5vw!important}
  .repair-v4-layout{grid-template-columns:1fr 1fr;gap:28px}
  .repair-v4-visual{min-height:500px}
  .repair-v4-media-main{height:420px;width:82%}.repair-v4-media-detail{width:190px;height:220px}
}
@media(max-width:900px){
  .repair-hero-v4{min-height:auto!important;display:block!important;padding-top:32px!important}
  .repair-v4-layout{display:flex;flex-direction:column;gap:0;padding-top:35px}
  .repair-v4-copy{max-width:780px}
  .repair-v4-visual{height:480px;min-height:480px;margin-top:20px}
  .repair-v4-footer{margin-top:20px}
}
@media(max-width:767px){
  .repair-hero-v4{padding:24px 20px 20px!important}
  .repair-v4-top{align-items:flex-start}.repair-v4-code{font-size:8px!important;text-align:right;max-width:145px}
  .repair-v4-kicker{font-size:10px}.repair-v4-kicker b{width:26px;height:26px}
  .repair-v4-kicker i{width:20px}
  .repair-v4-layout{padding-top:27px}
  .repair-v4-copy h1{font-size:clamp(45px,13vw,66px)}
  .repair-v4-copy p{font-size:14px!important;line-height:1.65}
  .repair-v4-actions{gap:13px;margin-top:22px}
  .repair-v4-steps{margin-top:27px}
  .repair-v4-steps span{padding:12px 8px 8px 0}.repair-v4-steps span:last-child{padding-left:8px}
  .repair-v4-steps strong{font-size:11px}.repair-v4-steps small{font-size:10px!important}
  .repair-v4-visual{height:390px;min-height:390px;margin-top:18px}
  .repair-v4-media-main{width:75%;height:315px;right:0;top:5%}
  .repair-v4-media-detail{width:145px;height:175px;left:0;bottom:0}
  .repair-v4-status{top:0;right:0;padding:9px 11px}
  .repair-v4-status span{font-size:8px!important}.repair-v4-status b{font-size:11px!important}
  .repair-v4-footer{flex-wrap:wrap;gap:9px;font-size:8px}.repair-v4-footer small{width:100%;margin-left:0}
}
@media(prefers-reduced-motion:reduce){
  .repair-v4-orbit,.repair-v4-scan,.repair-v4-media-main,.repair-v4-media-detail{animation:none!important}
  .repair-v4-copy h1 span,.repair-v4-copy h1 em{transform:none!important;opacity:1!important}
}

/* Repair Section 02 — make diagnostic guide lines visible in light mode */
html.light .repair-page .rs-diagnosis-v3 .diag-v3-step{
  border-top-color:rgba(237,160,160,.34)!important;
}
html.light .repair-page .rs-diagnosis-v3 .diag-v3-step:last-child{
  border-bottom:1px solid rgba(237,160,160,.34)!important;
}
html.light .repair-page .rs-diagnosis-v3 .diag-v3-line{
  background:linear-gradient(to bottom,transparent,rgba(237,160,160,.72) 12%,rgba(237,160,160,.72) 88%,transparent)!important;
}
html.light .repair-page .rs-diagnosis-v3 .diag-v3-grid{
  opacity:.55!important;
  background:linear-gradient(120deg,transparent 0 48%,rgba(237,160,160,.12) 48.1% 48.3%,transparent 48.4%),repeating-linear-gradient(90deg,transparent 0 110px,rgba(237,160,160,.1) 111px 112px)!important;
}
html.light .repair-page .rs-diagnosis-v3 .diag-v3-chip{
  border-color:rgba(237,160,160,.4)!important;
}


/* =========================================================
   REPAIR SERVICES — SECTION 01 / V5 COMPLETE RESTRUCTURE
   Strong contrast in light + dark mode, 14px minimum text.
   ========================================================= */

.rs-repair-hero-v5{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:calc(100svh - 64px);
  margin:0 !important;
  padding:0 !important;
  display:flex;
  align-items:stretch;
  background:#f7eeee;
  color:#241515;
}

.rs-repair-hero-v5 .repair-v5-shell{
  position:relative;
  z-index:3;
  width:min(100%, 1440px);
  margin:0 auto;
  padding:42px clamp(24px,5vw,78px) 28px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:calc(100svh - 64px);
}

.rs-repair-hero-v5 .repair-v5-noise,
.rs-repair-hero-v5 .repair-v5-grid{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.rs-repair-hero-v5 .repair-v5-noise{
  opacity:.18;
  background-image:radial-gradient(rgba(75,35,35,.32) .7px,transparent .7px);
  background-size:10px 10px;
  mix-blend-mode:multiply;
}
.rs-repair-hero-v5 .repair-v5-grid{
  opacity:.55;
  background-image:
    linear-gradient(rgba(91,52,52,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(91,52,52,.10) 1px,transparent 1px);
  background-size:70px 70px;
  mask-image:linear-gradient(to right,transparent 0,#000 18%,#000 82%,transparent 100%);
}
.rs-repair-hero-v5 .repair-v5-orbit{
  position:absolute;
  width:48vw;
  height:48vw;
  max-width:700px;
  max-height:700px;
  border:1px solid rgba(133,72,72,.25);
  border-radius:50%;
  pointer-events:none;
  animation:repairV5Orbit 18s linear infinite;
}
.rs-repair-hero-v5 .repair-v5-orbit-a{right:-16%;top:-35%}
.rs-repair-hero-v5 .repair-v5-orbit-b{left:-22%;bottom:-52%;animation-duration:24s;animation-direction:reverse}

.rs-repair-hero-v5 .repair-v5-intro{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(73,38,38,.25);
}
.rs-repair-hero-v5 .repair-v5-index{
  display:flex;
  align-items:center;
  gap:12px;
  font-size:15px;
  letter-spacing:.16em;
  font-weight:800;
}
.rs-repair-hero-v5 .repair-v5-index span{
  color:#a95151;
  font-size:16px;
}
.rs-repair-hero-v5 .repair-v5-index i{
  display:block;
  width:34px;
  height:1px;
  background:#5d3838;
}
.rs-repair-hero-v5 .repair-v5-index b,
.rs-repair-hero-v5 .repair-v5-code{
  font-size:14px;
  letter-spacing:.16em;
}
.rs-repair-hero-v5 .repair-v5-code{
  font-weight:700;
  opacity:.78;
}

.rs-repair-hero-v5 .repair-v5-main{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
  align-items:center;
  gap:clamp(35px,6vw,100px);
  flex:1;
  padding:34px 0 30px;
}
.rs-repair-hero-v5 .repair-v5-story{max-width:720px}
.rs-repair-hero-v5 .repair-v5-overline{
  font-size:14px;
  font-weight:800;
  letter-spacing:.18em;
  color:#743c3c;
  margin-bottom:18px;
}
.rs-repair-hero-v5 .repair-v5-title{
  margin:0;
  display:flex;
  flex-direction:column;
  gap:0;
  font-size:clamp(48px,6.3vw,96px);
  line-height:.9;
  letter-spacing:-.055em;
  font-weight:900;
  color:#1e1111 !important;
}
.rs-repair-hero-v5 .repair-v5-title span,
.rs-repair-hero-v5 .repair-v5-title em{
  display:block;
}
.rs-repair-hero-v5 .repair-v5-title em{
  font-style:normal;
  color:#b95757 !important;
}
.rs-repair-hero-v5 .repair-v5-lead{
  max-width:650px;
  margin:28px 0 0;
  font-size:17px;
  line-height:1.65;
  color:#4b3030 !important;
  font-weight:500;
}

.rs-repair-hero-v5 .repair-v5-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
  margin-top:28px;
}
.rs-repair-hero-v5 .repair-v5-primary,
.rs-repair-hero-v5 .repair-v5-secondary{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  padding:0 22px;
  border-radius:12px;
  text-decoration:none !important;
  font-size:15px;
  font-weight:800;
  letter-spacing:.02em;
  transition:transform .3s ease,box-shadow .3s ease,background .3s ease,color .3s ease;
}
.rs-repair-hero-v5 .repair-v5-primary{
  background:#8f4141 !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(96,38,38,.22);
}
.rs-repair-hero-v5 .repair-v5-primary i{color:#fff !important}
.rs-repair-hero-v5 .repair-v5-secondary{
  color:#321d1d !important;
  border:1px solid rgba(70,39,39,.42);
  background:rgba(255,255,255,.38);
}
.rs-repair-hero-v5 .repair-v5-primary:hover,
.rs-repair-hero-v5 .repair-v5-secondary:hover{
  transform:translateY(-4px);
}
.rs-repair-hero-v5 .repair-v5-primary:hover{box-shadow:0 18px 36px rgba(96,38,38,.30)}

.rs-repair-hero-v5 .repair-v5-process{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:34px;
  max-width:650px;
  border-top:1px solid rgba(73,38,38,.25);
  border-bottom:1px solid rgba(73,38,38,.25);
}
.rs-repair-hero-v5 .repair-v5-process>div{
  min-height:78px;
  padding:15px 14px 14px 0;
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:10px;
  align-content:center;
  border-right:1px solid rgba(73,38,38,.20);
}
.rs-repair-hero-v5 .repair-v5-process>div:last-child{border-right:0}
.rs-repair-hero-v5 .repair-v5-process b{
  grid-row:1/3;
  font-size:15px;
  color:#a95151;
}
.rs-repair-hero-v5 .repair-v5-process strong{
  font-size:15px;
  letter-spacing:.12em;
  color:#281818;
}
.rs-repair-hero-v5 .repair-v5-process span{
  font-size:14px;
  color:#614646;
  margin-top:4px;
}

.rs-repair-hero-v5 .repair-v5-stage{
  position:relative;
  min-height:560px;
  perspective:1200px;
}
.rs-repair-hero-v5 .repair-v5-card{
  position:absolute;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 30px 70px rgba(36,18,18,.28);
  transform-style:preserve-3d;
  transition:transform .5s cubic-bezier(.2,.8,.2,1);
}
.rs-repair-hero-v5 .repair-v5-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .9s cubic-bezier(.2,.8,.2,1),filter .5s ease;
}
.rs-repair-hero-v5 .repair-v5-card:hover img{transform:scale(1.07)}
.rs-repair-hero-v5 .repair-v5-card-back{
  width:62%;
  height:58%;
  right:0;
  top:3%;
  transform:rotate(7deg) translateZ(0);
  animation:repairV5FloatBack 7s ease-in-out infinite;
}
.rs-repair-hero-v5 .repair-v5-card-front{
  width:70%;
  height:65%;
  left:4%;
  bottom:5%;
  transform:rotate(-7deg) translateZ(40px);
  animation:repairV5FloatFront 6s ease-in-out infinite;
}
.rs-repair-hero-v5 .repair-v5-card-tag{
  position:absolute;
  left:16px;
  bottom:16px;
  padding:9px 12px;
  border-radius:9px;
  background:rgba(20,10,10,.82);
  color:#fff;
  font-size:14px;
  font-weight:800;
  letter-spacing:.08em;
  backdrop-filter:blur(8px);
}
.rs-repair-hero-v5 .repair-v5-card-tag span{color:#ef8a8a;margin-right:7px}
.rs-repair-hero-v5 .repair-v5-scanline{
  position:absolute;
  left:8%;
  right:2%;
  top:10%;
  height:2px;
  background:linear-gradient(90deg,transparent,#d56e6e,transparent);
  box-shadow:0 0 18px rgba(213,110,110,.8);
  animation:repairV5Scan 4.5s ease-in-out infinite;
  z-index:5;
}
.rs-repair-hero-v5 .repair-v5-crosshair{
  position:absolute;
  width:120px;
  height:120px;
  right:9%;
  bottom:8%;
  border:1px solid rgba(174,80,80,.5);
  border-radius:50%;
  animation:repairV5Pulse 3s ease-in-out infinite;
}
.rs-repair-hero-v5 .repair-v5-crosshair:before,
.rs-repair-hero-v5 .repair-v5-crosshair:after{
  content:"";
  position:absolute;
  background:#b95757;
}
.rs-repair-hero-v5 .repair-v5-crosshair:before{width:1px;height:150%;left:50%;top:-25%}
.rs-repair-hero-v5 .repair-v5-crosshair:after{height:1px;width:150%;top:50%;left:-25%}

.rs-repair-hero-v5 .repair-v5-proof{
  position:absolute;
  right:3%;
  bottom:2%;
  z-index:8;
  min-width:235px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border:1px solid rgba(91,46,46,.34);
  border-radius:14px;
  background:rgba(255,247,247,.92);
  box-shadow:0 15px 35px rgba(42,20,20,.16);
  backdrop-filter:blur(12px);
}
.rs-repair-hero-v5 .repair-v5-proof-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#8f4141;
  color:#fff;
  font-size:16px;
}
.rs-repair-hero-v5 .repair-v5-proof span:nth-child(2){display:flex;flex-direction:column;gap:3px}
.rs-repair-hero-v5 .repair-v5-proof b{
  font-size:14px;
  letter-spacing:.10em;
  color:#2c1818;
}
.rs-repair-hero-v5 .repair-v5-proof small{
  font-size:14px;
  color:#654747;
}
.rs-repair-hero-v5 .repair-v5-proof>strong{
  margin-left:auto;
  font-size:14px;
  letter-spacing:.10em;
  color:#a95151;
}

.rs-repair-hero-v5 .repair-v5-bottom{
  display:grid;
  grid-template-columns:auto 50px auto 1fr;
  align-items:center;
  gap:14px;
  padding-top:18px;
  border-top:1px solid rgba(73,38,38,.25);
  font-size:14px;
  letter-spacing:.12em;
}
.rs-repair-hero-v5 .repair-v5-bottom i{height:1px;background:#754b4b}
.rs-repair-hero-v5 .repair-v5-bottom span,
.rs-repair-hero-v5 .repair-v5-bottom b{color:#3b2222}
.rs-repair-hero-v5 .repair-v5-bottom small{
  justify-self:end;
  font-size:14px;
  color:#654747;
  letter-spacing:.03em;
}

@keyframes repairV5Orbit{to{transform:rotate(360deg)}}
@keyframes repairV5FloatBack{0%,100%{transform:rotate(7deg) translate3d(0,0,0)}50%{transform:rotate(4deg) translate3d(-8px,-12px,0)}}
@keyframes repairV5FloatFront{0%,100%{transform:rotate(-7deg) translate3d(0,0,40px)}50%{transform:rotate(-4deg) translate3d(8px,-14px,40px)}}
@keyframes repairV5Scan{0%,100%{top:8%;opacity:.2}50%{top:84%;opacity:1}}
@keyframes repairV5Pulse{0%,100%{transform:scale(.9);opacity:.45}50%{transform:scale(1.05);opacity:.9}}

@media (max-width:1100px){
  .rs-repair-hero-v5 .repair-v5-main{
    grid-template-columns:1fr .9fr;
    gap:30px;
  }
  .rs-repair-hero-v5 .repair-v5-stage{min-height:500px}
  .rs-repair-hero-v5 .repair-v5-title{font-size:clamp(46px,6.5vw,74px)}
}
@media (max-width:820px){
  .rs-repair-hero-v5{min-height:auto}
  .rs-repair-hero-v5 .repair-v5-shell{min-height:auto;padding:28px 22px 24px}
  .rs-repair-hero-v5 .repair-v5-code{display:none}
  .rs-repair-hero-v5 .repair-v5-main{
    grid-template-columns:1fr;
    gap:20px;
    padding:30px 0 24px;
  }
  .rs-repair-hero-v5 .repair-v5-title{font-size:clamp(43px,10vw,66px)}
  .rs-repair-hero-v5 .repair-v5-lead{font-size:16px;margin-top:22px}
  .rs-repair-hero-v5 .repair-v5-stage{min-height:430px;order:2}
  .rs-repair-hero-v5 .repair-v5-card-back{width:58%;height:55%}
  .rs-repair-hero-v5 .repair-v5-card-front{width:67%;height:62%}
  .rs-repair-hero-v5 .repair-v5-bottom{
    grid-template-columns:auto 30px auto;
  }
  .rs-repair-hero-v5 .repair-v5-bottom small{grid-column:1/-1;justify-self:start}
}
@media (max-width:560px){
  .rs-repair-hero-v5 .repair-v5-shell{padding:22px 16px 20px}
  .rs-repair-hero-v5 .repair-v5-index,
  .rs-repair-hero-v5 .repair-v5-index span,
  .rs-repair-hero-v5 .repair-v5-index b{font-size:14px}
  .rs-repair-hero-v5 .repair-v5-index i{width:24px}
  .rs-repair-hero-v5 .repair-v5-overline{font-size:14px;line-height:1.4}
  .rs-repair-hero-v5 .repair-v5-title{font-size:clamp(39px,12vw,55px)}
  .rs-repair-hero-v5 .repair-v5-lead{font-size:15px;line-height:1.55}
  .rs-repair-hero-v5 .repair-v5-actions{align-items:stretch;flex-direction:column}
  .rs-repair-hero-v5 .repair-v5-primary,
  .rs-repair-hero-v5 .repair-v5-secondary{width:100%;font-size:15px}
  .rs-repair-hero-v5 .repair-v5-process{margin-top:24px}
  .rs-repair-hero-v5 .repair-v5-process>div{min-height:70px;padding-right:8px}
  .rs-repair-hero-v5 .repair-v5-process strong{font-size:14px}
  .rs-repair-hero-v5 .repair-v5-process span{font-size:14px}
  .rs-repair-hero-v5 .repair-v5-stage{min-height:350px}
  .rs-repair-hero-v5 .repair-v5-proof{
    right:0;
    bottom:0;
    min-width:205px;
    padding:11px 12px;
  }
  .rs-repair-hero-v5 .repair-v5-proof b,
  .rs-repair-hero-v5 .repair-v5-proof small,
  .rs-repair-hero-v5 .repair-v5-proof>strong{font-size:14px}
  .rs-repair-hero-v5 .repair-v5-card-tag{font-size:14px;padding:8px 9px}
  .rs-repair-hero-v5 .repair-v5-bottom{font-size:14px;letter-spacing:.08em}
  .rs-repair-hero-v5 .repair-v5-bottom small{font-size:14px}
}

@media (prefers-reduced-motion:reduce){
  .rs-repair-hero-v5 *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
}

/* DARK MODE — explicit contrast for every Section 01 text/button */
html.dark .rs-repair-hero-v5{
  background:#170d0d;
  color:#f8eeee;
}
html.dark .rs-repair-hero-v5 .repair-v5-grid{
  background-image:
    linear-gradient(rgba(238,178,178,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(238,178,178,.07) 1px,transparent 1px);
}
html.dark .rs-repair-hero-v5 .repair-v5-intro,
html.dark .rs-repair-hero-v5 .repair-v5-process,
html.dark .rs-repair-hero-v5 .repair-v5-bottom{border-color:rgba(240,203,203,.20)}
html.dark .rs-repair-hero-v5 .repair-v5-index b,
html.dark .rs-repair-hero-v5 .repair-v5-code,
html.dark .rs-repair-hero-v5 .repair-v5-overline{color:#efb7b7}
html.dark .rs-repair-hero-v5 .repair-v5-title{color:#fff4f4 !important}
html.dark .rs-repair-hero-v5 .repair-v5-title em{color:#df7777 !important}
html.dark .rs-repair-hero-v5 .repair-v5-lead{color:#ead3d3 !important}
html.dark .rs-repair-hero-v5 .repair-v5-primary{
  background:#d87373 !important;
  color:#190d0d !important;
  box-shadow:0 12px 30px rgba(216,115,115,.20);
}
html.dark .rs-repair-hero-v5 .repair-v5-primary i{color:#190d0d !important}
html.dark .rs-repair-hero-v5 .repair-v5-secondary{
  color:#fff1f1 !important;
  background:rgba(255,255,255,.05);
  border-color:rgba(239,190,190,.42);
}
html.dark .rs-repair-hero-v5 .repair-v5-process strong{color:#fff1f1}
html.dark .rs-repair-hero-v5 .repair-v5-process span{color:#d9bcbc}
html.dark .rs-repair-hero-v5 .repair-v5-bottom span,
html.dark .rs-repair-hero-v5 .repair-v5-bottom b{color:#f2dada}
html.dark .rs-repair-hero-v5 .repair-v5-bottom small{color:#d6b5b5}
html.dark .rs-repair-hero-v5 .repair-v5-proof{
  background:rgba(31,16,16,.94);
  border-color:rgba(239,173,173,.30);
}
html.dark .rs-repair-hero-v5 .repair-v5-proof b{color:#fff1f1}
html.dark .rs-repair-hero-v5 .repair-v5-proof small{color:#d9bcbc}
html.dark .rs-repair-hero-v5 .repair-v5-proof>strong{color:#ef9a9a}
html.dark .rs-repair-hero-v5 .repair-v5-card-tag{background:rgba(16,8,8,.88);color:#fff}


/* =========================================================
   VOLTIVA BRANDS — LIGHT MODE FINAL TEXT CONTRAST PATCH
   Scoped only to .brands-page. Keeps dark mode unchanged.
   ========================================================= */

/* Light-mode section foundations */
html.light .brands-page .br-sec{
  --brand-light-ink:#241313;
  --brand-light-body:#4B2B2B;
  --brand-light-muted:#633D3D;
  --brand-light-accent:#7A2020;
}

/* Sections 01 + 02 intentionally retain their dark visual field,
   therefore their light-mode text must remain LIGHT, not dark. */
html.light .brands-page .br1x,
html.light .brands-page .br2x{
  color:#F8EEEE !important;
}

html.light .brands-page .br1x h1,
html.light .brands-page .br1x h2,
html.light .brands-page .br1x h3,
html.light .brands-page .br1x p,
html.light .brands-page .br1x a,
html.light .brands-page .br1x span,
html.light .brands-page .br1x strong,
html.light .brands-page .br1x small{
  font-weight:600;
}

html.light .brands-page .br1x h1{
  color:#FFF7F7 !important;
  font-weight:700 !important;
}
html.light .brands-page .br1x h1 em,
html.light .brands-page .br1x .br1x-kicker,
html.light .brands-page .br1x .br1x-points b,
html.light .brands-page .br1x .br1x-stage-label strong{
  color:#F06A6A !important;
}
html.light .brands-page .br1x-copy>p{
  color:#F4DEDE !important;
}
html.light .brands-page .br1x-points span{
  color:#F0D5D5 !important;
}
html.light .brands-page .br1x-cta{
  color:#241010 !important;
  font-weight:800 !important;
}
html.light .brands-page .br1x .cube-face{
  color:#FFF5F5 !important;
}
html.light .brands-page .br1x .cube-face span{
  color:#F06A6A !important;
}
html.light .brands-page .br1x .br1x-satellite{
  color:#F5DEDE !important;
}
html.light .brands-page .br1x .br1x-stage-label small{
  color:#D8AAAA !important;
}

html.light .brands-page .br2x{
  background:#241313 !important;
}
html.light .brands-page .br2x-top h2{
  color:#FFF7F7 !important;
  font-weight:700 !important;
}
html.light .brands-page .br2x-top p{
  color:#E7CACA !important;
}
html.light .brands-page .br2x-top>div span{
  color:#F06A6A !important;
  font-weight:800 !important;
}
html.light .brands-page .br2x-logo{
  color:#241313 !important;
}
html.light .brands-page .br2x-logo b,
html.light .brands-page .br2x-logo span{
  color:#241313 !important;
  font-weight:700 !important;
}
html.light .brands-page .br2x-logo small{
  color:#633D3D !important;
  font-weight:700 !important;
}
html.light .brands-page .br2x-bottom{
  color:#E4C5C5 !important;
  font-weight:600 !important;
}
html.light .brands-page .br2x-bottom span{
  color:#D9B4B4 !important;
  font-weight:600 !important;
}
html.light .brands-page .br2x-bottom span:first-child{
  color:#F06A6A !important;
  font-weight:800 !important;
}
html.light .brands-page .br2x-bottom a{
  color:#FFE7E7 !important;
  font-weight:800 !important;
}

/* Sections 03–08: light backgrounds need strong dark typography. */
html.light .brands-page #brandStory,
html.light .brands-page #brandEcosystem,
html.light .brands-page #brandMotion,
html.light .brands-page #brandImpact,
html.light .brands-page #brandStories,
html.light .brands-page #brandContact{
  color:var(--brand-light-ink) !important;
}

/* Headings */
html.light .brands-page #brandStory h1,
html.light .brands-page #brandStory h2,
html.light .brands-page #brandStory h3,
html.light .brands-page #brandEcosystem h1,
html.light .brands-page #brandEcosystem h2,
html.light .brands-page #brandEcosystem h3,
html.light .brands-page #brandMotion h1,
html.light .brands-page #brandMotion h2,
html.light .brands-page #brandMotion h3,
html.light .brands-page #brandImpact h1,
html.light .brands-page #brandImpact h2,
html.light .brands-page #brandImpact h3,
html.light .brands-page #brandStories h1,
html.light .brands-page #brandStories h2,
html.light .brands-page #brandStories h3,
html.light .brands-page #brandContact h1,
html.light .brands-page #brandContact h2,
html.light .brands-page #brandContact h3{
  color:#241313 !important;
  font-weight:700 !important;
}

/* Body copy / list text */
html.light .brands-page #brandStory p,
html.light .brands-page #brandStory li,
html.light .brands-page #brandEcosystem p,
html.light .brands-page #brandEcosystem li,
html.light .brands-page #brandMotion p,
html.light .brands-page #brandMotion li,
html.light .brands-page #brandImpact p,
html.light .brands-page #brandImpact li,
html.light .brands-page #brandStories p,
html.light .brands-page #brandStories li,
html.light .brands-page #brandContact p,
html.light .brands-page #brandContact li{
  color:#4B2B2B !important;
  font-weight:500 !important;
}

/* Kicker / section numbers */
html.light .brands-page #brandStory [class*="kicker"],
html.light .brands-page #brandStory>div>span:first-child,
html.light .brands-page #brandEcosystem [class*="kicker"],
html.light .brands-page #brandMotion [class*="kicker"],
html.light .brands-page #brandImpact [class*="kicker"],
html.light .brands-page #brandStories [class*="kicker"],
html.light .brands-page #brandContact [class*="kicker"],
html.light .brands-page #brandStory .brand-story-copy>span,
html.light .brands-page #brandMotion .liquid-side>span,
html.light .brands-page #brandImpact .impact-copy>span,
html.light .brands-page #brandStories .stories-intro>span,
html.light .brands-page #brandContact .portal-left>span{
  color:#762020 !important;
  font-weight:800 !important;
}

/* Story section */
html.light .brands-page #brandStory .brand-story-points b,
html.light .brands-page #brandStory .brand-story-points span,
html.light .brands-page #brandStory .brand-story-footer{
  color:#4B2B2B !important;
  font-weight:600 !important;
}
html.light .brands-page #brandStory .brand-story-footer{
  border-color:rgba(60,30,30,.22) !important;
}

/* Ecosystem / section 04 */
html.light .brands-page #brandEcosystem .brand-four-lead,
html.light .brands-page #brandEcosystem .brand-four-facts span,
html.light .brands-page #brandEcosystem .brand-four-names span,
html.light .brands-page #brandEcosystem .brand-four-bottom{
  color:#4B2B2B !important;
  font-weight:600 !important;
}
html.light .brands-page #brandEcosystem .brand-four-facts b{
  color:#762020 !important;
  font-weight:800 !important;
}
html.light .brands-page #brandEcosystem .brand-four-names a{
  color:#241313 !important;
  font-weight:700 !important;
}

/* Liquid section 05 */
html.light .brands-page #brandMotion{
  background:#F0E2E2 !important;
}
html.light .brands-page #brandMotion .liquid-side h2,
html.light .brands-page #brandMotion .liquid-side h3{
  color:#241313 !important;
  font-weight:700 !important;
}
html.light .brands-page #brandMotion .liquid-side p,
html.light .brands-page #brandMotion .liquid-side li,
html.light .brands-page #brandMotion .text-link{
  color:#4B2B2B !important;
  font-weight:600 !important;
}
html.light .brands-page #brandMotion .liquid-side li i,
html.light .brands-page #brandMotion .text-link i{
  color:#9A3434 !important;
}

/* Impact / section 06 */
html.light .brands-page #brandImpact{
  background:#EEE0E0 !important;
}
html.light .brands-page #brandImpact .impact-copy h2,
html.light .brands-page #brandImpact .impact-copy p,
html.light .brands-page #brandImpact .impact-note,
html.light .brands-page #brandImpact .impact-note span{
  color:#241313 !important;
  font-weight:600 !important;
}
html.light .brands-page #brandImpact .impact-card{
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(60,30,30,.24) !important;
  color:#241313 !important;
}
html.light .brands-page #brandImpact .impact-card small{
  color:#5B3434 !important;
  font-weight:800 !important;
}
html.light .brands-page #brandImpact .impact-card strong{
  color:#241313 !important;
  font-weight:800 !important;
}
html.light .brands-page #brandImpact .impact-card span{
  color:#4B2B2B !important;
  font-weight:600 !important;
}
html.light .brands-page #brandImpact .impact-bar{
  background:rgba(60,30,30,.15) !important;
}

/* Testimonials / section 07 */
html.light .brands-page #brandStories{
  background:#F0E2E2 !important;
}
html.light .brands-page #brandStories .stories-intro h2,
html.light .brands-page #brandStories .stories-intro p,
html.light .brands-page #brandStories .story-card p,
html.light .brands-page #brandStories .story-card strong{
  color:#241313 !important;
}
html.light .brands-page #brandStories .story-card{
  background:rgba(255,255,255,.78) !important;
  border-color:rgba(60,30,30,.22) !important;
  color:#241313 !important;
}
html.light .brands-page #brandStories .story-card span{
  color:#5B3434 !important;
}
html.light .brands-page #brandStories .story-bottom{
  color:#5B3434 !important;
  font-weight:700 !important;
}
html.light .brands-page #brandStories .text-link{
  color:#241313 !important;
  font-weight:800 !important;
}

/* Contact / section 08 */
html.light .brands-page #brandContact{
  background:#F7EDED !important;
}
html.light .brands-page #brandContact .portal-left h2,
html.light .brands-page #brandContact .portal-left p,
html.light .brands-page #brandContact .portal-links span,
html.light .brands-page #brandContact .portal-foot{
  color:#241313 !important;
  font-weight:600 !important;
}
html.light .brands-page #brandContact .portal-links i{
  color:#9A3434 !important;
}
html.light .brands-page #brandContact .portal-form-wrap{
  background:rgba(255,255,255,.88) !important;
  border-color:rgba(60,30,30,.24) !important;
  color:#241313 !important;
}
html.light .brands-page #brandContact .portal-form-wrap label,
html.light .brands-page #brandContact .portal-form-wrap .portal-form-top{
  color:#3B2020 !important;
  font-weight:700 !important;
}
html.light .brands-page #brandContact .portal-form-wrap input,
html.light .brands-page #brandContact .portal-form-wrap select{
  color:#241313 !important;
  background:#FFF !important;
  border-color:rgba(60,30,30,.30) !important;
  font-weight:500 !important;
}
html.light .brands-page #brandContact .portal-form-wrap input::placeholder{
  color:#705050 !important;
  opacity:1 !important;
}
html.light .brands-page #brandContact .portal-form-wrap button{
  color:#FFF !important;
  background:#7A3030 !important;
  font-weight:800 !important;
}
html.light .brands-page #brandContact .portal-status{
  color:#4B2B2B !important;
  font-weight:600 !important;
}

/* Universal safety net for the remaining brand-page text in light mode.
   It only affects text whose computed color is one of the old pale theme values. */
html.light .brands-page #brandStory a,
html.light .brands-page #brandEcosystem a,
html.light .brands-page #brandMotion a,
html.light .brands-page #brandImpact a,
html.light .brands-page #brandStories a,
html.light .brands-page #brandContact a{
  font-weight:700;
}

/* Keep small text readable while respecting the existing project scale. */
html.light .brands-page #brandStory small,
html.light .brands-page #brandEcosystem small,
html.light .brands-page #brandMotion small,
html.light .brands-page #brandImpact small,
html.light .brands-page #brandStories small,
html.light .brands-page #brandContact small{
  font-size:max(14px,1em) !important;
}


/* =========================================================
   BRANDS PAGE — SECTION 05 FINAL MOTION V3
   Full-width / no inter-section gap / responsive / 14px+ text
   ========================================================= */
.brands-page #brandMotion.brand-motion-v3{
  --mv-bg:#160A0A;
  --mv-ink:#F8EEEE;
  --mv-muted:#D8BABA;
  --mv-accent:#EB7070;
  --mv-line:rgba(235,112,112,.24);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  min-height:92vh;
  margin:0;
  padding:0;
  display:block;
  background:var(--mv-bg);
  color:var(--mv-ink);
}
.brand-motion-v3 .motion-v3-bg{
  position:absolute;inset:0;z-index:-5;
  background:
    radial-gradient(circle at 52% 46%,rgba(235,112,112,.15),transparent 22%),
    radial-gradient(circle at 12% 80%,rgba(235,112,112,.09),transparent 28%),
    linear-gradient(135deg,#120707 0%,#1C0D0D 52%,#100707 100%);
}
.brand-motion-v3 .motion-v3-bg:after{
  content:"";position:absolute;inset:0;opacity:.32;
  background-image:linear-gradient(rgba(235,112,112,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(235,112,112,.05) 1px,transparent 1px);
  background-size:56px 56px;
}
.brand-motion-v3 .motion-v3-orbit{
  position:absolute;border:1px solid rgba(235,112,112,.18);border-radius:50%;
  pointer-events:none;z-index:-1;
}
.brand-motion-v3 .orbit-a{width:620px;height:270px;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-22deg);animation:motionV3Orbit 18s linear infinite}
.brand-motion-v3 .orbit-b{width:430px;height:430px;left:50%;top:48%;transform:translate(-50%,-50%) rotate(28deg);animation:motionV3Orbit 24s linear infinite reverse}
.brand-motion-v3 .motion-v3-pulse{
  position:absolute;width:210px;height:210px;border-radius:50%;left:50%;top:48%;
  transform:translate(-50%,-50%);background:rgba(235,112,112,.07);
  filter:blur(35px);animation:motionV3Pulse 4.5s ease-in-out infinite;z-index:-1;
}
.brand-motion-v3 .motion-v3-inner{
  width:min(1240px,calc(100% - 96px));min-height:calc(92vh - 54px);
  margin:0 auto;padding:86px 0 92px;
  display:grid;grid-template-columns:1.05fr .8fr 1.05fr;
  align-items:center;column-gap:48px;position:relative;z-index:2;
}
.brand-motion-v3 .motion-v3-intro,
.brand-motion-v3 .motion-v3-core,
.brand-motion-v3 .motion-v3-list{position:relative;z-index:3}
.brand-motion-v3 .motion-v3-kicker,
.brand-motion-v3 .motion-v3-side-label{
  display:block;font:800 14px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.16em;text-transform:uppercase;color:var(--mv-accent);
}
.brand-motion-v3 .motion-v3-kicker:before{
  content:"";display:inline-block;width:38px;height:1px;background:var(--mv-accent);
  margin:0 12px 4px 0;
}
.brand-motion-v3 .motion-v3-intro h2{
  margin:18px 0 20px;font:700 clamp(44px,5vw,70px)/.94 "Space Grotesk",sans-serif;
  letter-spacing:-.055em;color:var(--mv-ink);
}
.brand-motion-v3 .motion-v3-intro h2 em{font-style:normal;color:var(--mv-accent)}
.brand-motion-v3 .motion-v3-intro p{
  max-width:500px;margin:0;color:var(--mv-muted);
  font:500 17px/1.75 "Inter",sans-serif;
}
.brand-motion-v3 .motion-v3-link{
  display:inline-flex;align-items:center;gap:12px;margin-top:28px;padding-bottom:8px;
  border-bottom:1px solid var(--mv-accent);color:var(--mv-ink);text-decoration:none;
  font:800 15px/1.3 "Inter",sans-serif;transition:transform .3s ease,color .3s ease;
}
.brand-motion-v3 .motion-v3-link:hover{transform:translateX(7px);color:var(--mv-accent)}
.brand-motion-v3 .motion-v3-core{
  min-height:430px;display:grid;place-items:center;
}
.brand-motion-v3 .motion-v3-ring{
  width:270px;height:270px;border:1px solid rgba(235,112,112,.62);
  border-radius:50%;display:grid;place-items:center;position:relative;
  background:radial-gradient(circle at 45% 40%,rgba(235,112,112,.25),rgba(21,10,10,.95) 62%);
  box-shadow:0 0 80px rgba(235,112,112,.16),inset 0 0 45px rgba(235,112,112,.08);
  animation:motionV3Float 5s ease-in-out infinite;
}
.brand-motion-v3 .motion-v3-ring:before,
.brand-motion-v3 .motion-v3-ring:after{
  content:"";position:absolute;border:1px solid rgba(235,112,112,.22);border-radius:50%;
}
.brand-motion-v3 .motion-v3-ring:before{inset:-22px;animation:motionV3PulseRing 3.8s ease-in-out infinite}
.brand-motion-v3 .motion-v3-ring:after{inset:-48px;animation:motionV3PulseRing 4.8s ease-in-out infinite reverse}
.brand-motion-v3 .motion-v3-icon{
  width:92px;height:92px;border-radius:28px;display:grid;place-items:center;
  background:rgba(235,112,112,.13);border:1px solid rgba(235,112,112,.3);
  color:#F18A8A;font-size:38px;animation:motionV3Icon 3.2s ease-in-out infinite;
}
.brand-motion-v3 .motion-v3-core-label{
  position:absolute;bottom:30px;text-align:center;color:#D9BABA;
  font:800 14px/1.3 "Space Grotesk",sans-serif;letter-spacing:.18em;
}
.brand-motion-v3 .motion-v3-core-label b{color:var(--mv-accent);font-size:20px}
.brand-motion-v3 .motion-chip{
  position:absolute;padding:9px 13px;border:1px solid rgba(235,112,112,.3);
  background:rgba(28,13,13,.82);backdrop-filter:blur(10px);
  color:#F0D4D4;font:800 14px/1.1 "Inter",sans-serif;letter-spacing:.08em;
  box-shadow:0 10px 30px rgba(0,0,0,.18);animation:motionV3Chip 4s ease-in-out infinite;
}
.brand-motion-v3 .chip-one{top:15%;left:3%}.brand-motion-v3 .chip-two{top:7%;right:4%;animation-delay:.6s}
.brand-motion-v3 .chip-three{bottom:12%;left:4%;animation-delay:1.1s}.brand-motion-v3 .chip-four{bottom:5%;right:8%;animation-delay:1.6s}
.brand-motion-v3 .motion-v3-list{border-left:1px solid var(--mv-line);padding-left:30px}
.brand-motion-v3 .motion-v3-side-label{margin-bottom:13px;color:#E79A9A}
.brand-motion-v3 .motion-v3-item{
  display:grid;grid-template-columns:38px 1fr 20px;align-items:center;gap:13px;
  min-height:76px;border-top:1px solid var(--mv-line);transition:background .3s ease,transform .3s ease;
}
.brand-motion-v3 .motion-v3-item:last-child{border-bottom:1px solid var(--mv-line)}
.brand-motion-v3 .motion-v3-item:hover{background:rgba(235,112,112,.06);transform:translateX(7px)}
.brand-motion-v3 .motion-v3-item>b{font:800 14px "Space Grotesk";color:var(--mv-accent)}
.brand-motion-v3 .motion-v3-item strong{display:block;font:800 16px/1.3 "Inter";color:var(--mv-ink)}
.brand-motion-v3 .motion-v3-item small{display:block;margin-top:5px;font:500 14px/1.45 "Inter";color:var(--mv-muted)}
.brand-motion-v3 .motion-v3-item>i{font-size:14px;color:var(--mv-accent);transition:transform .3s ease}
.brand-motion-v3 .motion-v3-item:hover>i{transform:translate(3px,-3px)}
.brand-motion-v3 .motion-v3-rail{
  position:absolute;left:0;right:0;bottom:0;min-height:54px;border-top:1px solid var(--mv-line);
  display:flex;align-items:center;justify-content:center;gap:20px;
  color:#C99797;font:800 14px/1 "Space Grotesk";letter-spacing:.14em;
  white-space:nowrap;overflow:hidden;
}
.brand-motion-v3 .motion-v3-rail i{width:32px;height:1px;background:var(--mv-accent);opacity:.55}

@keyframes motionV3Orbit{to{transform:translate(-50%,-50%) rotate(338deg)}}
@keyframes motionV3Pulse{0%,100%{scale:.9;opacity:.45}50%{scale:1.18;opacity:.9}}
@keyframes motionV3PulseRing{0%,100%{scale:.94;opacity:.35}50%{scale:1.06;opacity:.9}}
@keyframes motionV3Float{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes motionV3Icon{0%,100%{rotate:0deg;scale:1}50%{rotate:6deg;scale:1.07}}
@keyframes motionV3Chip{0%,100%{translate:0 0}50%{translate:0 -8px}}
.brands-page #brandMotion .motion-reveal{opacity:1;transform:none}
html.js .brands-page #brandMotion .motion-reveal{opacity:0;transform:translateY(38px) scale(.98);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)}
html.js .brands-page #brandMotion .motion-reveal.motion-visible{opacity:1;transform:none}
html.light .brands-page #brandMotion.brand-motion-v3{
  --mv-bg:#F3E6E6;--mv-ink:#241313;--mv-muted:#563333;--mv-accent:#8E2929;
  --mv-line:rgba(70,35,35,.25);
  background:#F3E6E6!important;color:#241313!important;
}
html.light .brands-page #brandMotion .motion-v3-bg{
  background:
    radial-gradient(circle at 52% 46%,rgba(142,41,41,.13),transparent 22%),
    radial-gradient(circle at 12% 80%,rgba(142,41,41,.08),transparent 28%),
    linear-gradient(135deg,#F7ECEC 0%,#EBDADA 52%,#F6EAEA 100%);
}
html.light .brands-page #brandMotion .motion-v3-bg:after{
  background-image:linear-gradient(rgba(70,35,35,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(70,35,35,.055) 1px,transparent 1px);
}
html.light .brands-page #brandMotion .motion-v3-intro h2,
html.light .brands-page #brandMotion .motion-v3-item strong{color:#241313!important}
html.light .brands-page #brandMotion .motion-v3-intro p,
html.light .brands-page #brandMotion .motion-v3-item small{color:#563333!important}
html.light .brands-page #brandMotion .motion-v3-kicker,
html.light .brands-page #brandMotion .motion-v3-side-label,
html.light .brands-page #brandMotion .motion-v3-item>b{color:#7A2020!important}
html.light .brands-page #brandMotion .motion-v3-link{color:#241313!important;border-color:#7A2020}
html.light .brands-page #brandMotion .motion-v3-link:hover{color:#7A2020!important}
html.light .brands-page #brandMotion .motion-v3-ring{
  background:radial-gradient(circle at 45% 40%,rgba(142,41,41,.18),rgba(255,247,247,.96) 62%);
  border-color:rgba(122,32,32,.55);box-shadow:0 0 70px rgba(122,32,32,.13),inset 0 0 45px rgba(122,32,32,.08);
}
html.light .brands-page #brandMotion .motion-v3-icon{
  background:rgba(142,41,41,.11);border-color:rgba(122,32,32,.28);color:#8E2929!important;
}
html.light .brands-page #brandMotion .motion-v3-core-label{color:#4B2B2B!important}
html.light .brands-page #brandMotion .motion-chip{
  background:rgba(255,249,249,.92);border-color:rgba(122,32,32,.25);color:#301818!important;
}
html.light .brands-page #brandMotion .motion-v3-item:hover{background:rgba(122,32,32,.06)}
html.light .brands-page #brandMotion .motion-v3-item>i{
  color:#8E2929!important;
  background:transparent!important;
  width:auto!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:inline-block!important;
  line-height:1!important;
}
html.light .brands-page #brandMotion .motion-v3-rail{color:#5A3434!important;border-color:rgba(70,35,35,.25)}
html.light .brands-page #brandMotion .motion-v3-rail i{
  color:#8E2929!important;
  background:#8E2929!important;
  width:32px!important;
  height:1px!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
@media(max-width:1050px){
  .brands-page #brandMotion.brand-motion-v3{min-height:auto}
  .brand-motion-v3 .motion-v3-inner{width:min(100% - 72px,900px);grid-template-columns:1fr 1fr;row-gap:35px;column-gap:35px;padding:76px 0 90px}
  .brand-motion-v3 .motion-v3-intro{grid-column:1/-1}
  .brand-motion-v3 .motion-v3-core{min-height:390px}
  .brand-motion-v3 .motion-v3-list{padding-left:25px}
  .brand-motion-v3 .motion-v3-rail{position:relative}
}
@media(max-width:767px){
  .brand-motion-v3 .motion-v3-inner{width:calc(100% - 34px);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:65px 0 72px}
  .brand-motion-v3 .motion-v3-intro{padding:0 4px}
  .brand-motion-v3 .motion-v3-intro h2{font-size:43px;line-height:.98;margin:16px 0 18px}
  .brand-motion-v3 .motion-v3-intro p{font-size:15px;line-height:1.65}
  .brand-motion-v3 .motion-v3-core{min-height:390px;margin:5px 0 2px}
  .brand-motion-v3 .motion-v3-ring{width:215px;height:215px}
  .brand-motion-v3 .motion-v3-icon{width:76px;height:76px;font-size:30px}
  .brand-motion-v3 .motion-chip{font-size:14px;padding:8px 10px}
  .brand-motion-v3 .chip-one{left:1%;top:14%}.brand-motion-v3 .chip-two{right:1%;top:8%}
  .brand-motion-v3 .chip-three{left:1%;bottom:13%}.brand-motion-v3 .chip-four{right:3%;bottom:7%}
  .brand-motion-v3 .motion-v3-list{border-left:0;border-top:1px solid var(--mv-line);padding:22px 0 0}
  .brand-motion-v3 .motion-v3-item{min-height:74px}
  .brand-motion-v3 .motion-v3-item strong{font-size:15px}
  .brand-motion-v3 .motion-v3-item small{font-size:14px}
  .brand-motion-v3 .motion-v3-rail{min-height:50px;justify-content:flex-start;padding-left:20px;gap:15px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  .brand-motion-v3 .motion-v3-orbit,.brand-motion-v3 .motion-v3-pulse,.brand-motion-v3 .motion-v3-ring,
  .brand-motion-v3 .motion-v3-icon,.brand-motion-v3 .motion-chip{animation:none!important}
  html.js .brands-page #brandMotion .motion-reveal{opacity:1;transform:none;transition:none}
}


/* BRANDS — light-mode cube text contrast + shared back-to-top control */
html.light .brands-page #brandHero .cube-face{
  background:linear-gradient(145deg,#FFF8F8 0%,#EEDDDD 100%)!important;
  color:#241313!important;
  border-color:rgba(122,32,32,.55)!important;
  box-shadow:inset 0 0 35px rgba(122,32,32,.08),0 12px 35px rgba(70,35,35,.12)!important;
}
html.light .brands-page #brandHero .cube-face b{
  color:#241313!important;
  opacity:1!important;
  text-shadow:none!important;
}
html.light .brands-page #brandHero .cube-face span{
  color:#6E2525!important;
  font-size:14px!important;
  font-weight:800!important;
  opacity:1!important;
  text-shadow:none!important;
}
html.light .brands-page #brandHero .br1x-satellite{
  color:#2A1717!important;
  background:rgba(255,248,248,.92)!important;
  border-color:rgba(122,32,32,.32)!important;
}
.brands-page .back-top{
  width:43px!important;height:43px!important;right:20px!important;bottom:20px!important;
  border-radius:12px!important;background:var(--accent)!important;color:var(--ink)!important;
  display:grid!important;place-items:center!important;
}
.brands-page .back-top i{font-size:16px!important}


/* =========================================================
   BRANDS — FINAL LIGHT/DARK + SECTION 05/06/07 RESPONSIVE FIX
   Added after all previous brand rules so these corrections win
   over older/cached component selectors.
   ========================================================= */

/* Keep every brand-page content label readable; headings keep their
   existing larger sizes. */
.brands-page main .br-sec p,
.brands-page main .br-sec span,
.brands-page main .br-sec small,
.brands-page main .br-sec label,
.brands-page main .br-sec li,
.brands-page main .br-sec a,
.brands-page main .br-sec button,
.brands-page main .br-sec input,
.brands-page main .br-sec select,
.brands-page main .br-sec option {
  font-size: max(14px, 1em) !important;
}

/* ---------- SECTION 05: no blank/washed-out light-mode chips ---------- */
.brands-page #brandMotion.brand-motion-v3 {
  --mv-bg:#160A0A;
  --mv-ink:#F8EEEE;
  --mv-muted:#D8BABA;
  --mv-accent:#EB7070;
  --mv-line:rgba(235,112,112,.28);
  color:var(--mv-ink);
}
.brands-page #brandMotion .motion-v3-intro h2,
.brands-page #brandMotion .motion-v3-item strong,
.brands-page #brandMotion .motion-v3-link,
.brands-page #brandMotion .motion-v3-core-label,
.brands-page #brandMotion .motion-chip {
  opacity:1 !important;
  visibility:visible !important;
}
.brands-page #brandMotion .motion-chip {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:max-content !important;
  min-width:0 !important;
  height:auto !important;
  min-height:38px !important;
  white-space:nowrap !important;
  overflow:visible !important;
  position:absolute !important;
  z-index:20 !important;
}

/* The screenshot issue occurs when the light theme inherits dark text
   from an older component rule. Use :not(.dark) so it also works when
   the theme is first loaded without a saved preference. */
html:not(.dark) .brands-page #brandMotion.brand-motion-v3 {
  --mv-bg:#F3E6E6;
  --mv-ink:#211010;
  --mv-muted:#4F2B2B;
  --mv-accent:#7A2020;
  --mv-line:rgba(64,30,30,.28);
  background:#F3E6E6 !important;
  color:#211010 !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-bg {
  background:
    radial-gradient(circle at 52% 46%,rgba(122,32,32,.15),transparent 22%),
    radial-gradient(circle at 12% 80%,rgba(122,32,32,.08),transparent 28%),
    linear-gradient(135deg,#FAF0F0 0%,#EBDADA 52%,#F7EAEA 100%) !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-intro h2,
html:not(.dark) .brands-page #brandMotion .motion-v3-item strong {
  color:#211010 !important;
  text-shadow:none !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-intro p,
html:not(.dark) .brands-page #brandMotion .motion-v3-item small {
  color:#4F2B2B !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-kicker,
html:not(.dark) .brands-page #brandMotion .motion-v3-side-label,
html:not(.dark) .brands-page #brandMotion .motion-v3-item>b {
  color:#7A2020 !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-link {
  color:#211010 !important;
  border-color:#7A2020 !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-ring {
  background:radial-gradient(circle at 45% 40%,rgba(122,32,32,.16),#FFF8F8 62%) !important;
  border-color:rgba(122,32,32,.6) !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-core-label {
  color:#3D2222 !important;
}
html:not(.dark) .brands-page #brandMotion .motion-chip {
  background:#FFF8F8 !important;
  color:#2B1515 !important;
  border-color:rgba(122,32,32,.38) !important;
  box-shadow:0 12px 30px rgba(67,32,32,.15) !important;
  text-shadow:none !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-item {
  border-color:rgba(64,30,30,.28) !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-item>i {
  color:#7A2020 !important;
  background:transparent !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  display:inline-block !important;
  line-height:1 !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-rail i {
  color:#7A2020 !important;
  background:#7A2020 !important;
  width:32px !important;
  height:1px !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-rail {
  color:#4A2929 !important;
  border-color:rgba(64,30,30,.28) !important;
}

/* Legacy section-05 component protection in case an older cached DOM
   is still present: prevent its white panels from becoming blank. */
html:not(.dark) .brands-page .liquid-redesign,
html:not(.dark) .brands-page .liquid-redesign .liquid-side,
html:not(.dark) .brands-page .liquid-redesign .liquid-center {
  color:#241313 !important;
}
html:not(.dark) .brands-page .liquid-redesign .liquid-side h2,
html:not(.dark) .brands-page .liquid-redesign .liquid-side h3,
html:not(.dark) .brands-page .liquid-redesign .liquid-side li,
html:not(.dark) .brands-page .liquid-redesign .liquid-side p,
html:not(.dark) .brands-page .liquid-redesign .liquid-mini span {
  color:#3B2020 !important;
}
html:not(.dark) .brands-page .liquid-redesign .liquid-ring {
  background:radial-gradient(circle,rgba(122,32,32,.18),#FFF8F8 60%) !important;
  color:#7A2020 !important;
}

/* ---------- SECTION 06: keep VOLTIVA STANDARD inside the circle ---------- */
.brands-page #brandImpact .impact-core {
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  overflow:hidden !important;
}
.brands-page #brandImpact .impact-core span {
  position:static !important;
  display:block !important;
  line-height:1 !important;
  margin:0 !important;
}
.brands-page #brandImpact .impact-core small {
  position:static !important;
  width:auto !important;
  max-width:90% !important;
  margin:0 !important;
  color:#D5A5A5 !important;
  font-size:14px !important;
  line-height:1.15 !important;
  letter-spacing:.11em !important;
  text-align:center !important;
  white-space:normal !important;
}
html:not(.dark) .brands-page #brandImpact .impact-core {
  background:#FFF4F4 !important;
  border-color:#7A2020 !important;
  box-shadow:0 0 65px rgba(122,32,32,.18) !important;
}
html:not(.dark) .brands-page #brandImpact .impact-core span {
  color:#7A2020 !important;
}
html:not(.dark) .brands-page #brandImpact .impact-core small {
  color:#4A2929 !important;
}

/* ---------- SECTION 07: no mobile overlap in the bottom labels ---------- */
html:not(.dark) .brands-page #brandStories .story-bottom {
  color:#5A3030 !important;
}
@media (max-width:767px) {
  .brands-page #brandImpact .impact-core {
    width:145px !important;
    height:145px !important;
  }
  .brands-page #brandImpact .impact-core span {
    font-size:38px !important;
  }
  .brands-page #brandImpact .impact-core small {
    font-size:14px !important;
    line-height:1.15 !important;
    max-width:112px !important;
  }

  .brands-page #brandStories.testimonials-redesign {
    min-height:0 !important;
    padding-bottom:34px !important;
  }
  .brands-page #brandStories .stories-intro {
    padding-left:6vw !important;
    padding-right:6vw !important;
  }
  .brands-page #brandStories .stories-window {
    width:100% !important;
    overflow:hidden !important;
    margin-top:28px !important;
  }
  .brands-page #brandStories .story-rail {
    gap:12px !important;
  }
  .brands-page #brandStories .story-card {
    width:calc(100vw - 48px) !important;
    min-width:calc(100vw - 48px) !important;
    min-height:285px !important;
    padding:20px !important;
  }
  .brands-page #brandStories .story-bottom {
    position:relative !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    width:auto !important;
    margin:26px 6vw 0 !important;
    padding:14px 0 0 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-content:initial !important;
    align-items:stretch !important;
    gap:10px !important;
    border-top:1px solid rgba(232,104,104,.22) !important;
    font-size:14px !important;
    line-height:1.35 !important;
    letter-spacing:.06em !important;
  }
  .brands-page #brandStories .story-bottom span {
    display:block !important;
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
  }
}

/* Tablet: keep the circle label contained without disturbing the
   desktop composition. */
@media (min-width:768px) and (max-width:1100px) {
  .brands-page #brandImpact .impact-core {
    width:150px !important;
    height:150px !important;
  }
  .brands-page #brandImpact .impact-core small {
    font-size:14px !important;
    max-width:115px !important;
  }
}



/* =========================================================
   REPAIR SERVICES — RESPONSIVE OVERFLOW / PADDING FINAL FIX
   Scoped only to Section 01 (.rs-repair-hero-v5).
   Prevents mobile/tablet text, buttons and visual cards
   from escaping their containers or overlapping.
   ========================================================= */

/* Safe sizing baseline */
.rs-repair-hero-v5,
.rs-repair-hero-v5 *,
.rs-repair-hero-v5 *::before,
.rs-repair-hero-v5 *::after{
  box-sizing:border-box;
}

.rs-repair-hero-v5{
  width:100%;
  max-width:100%;
  overflow:hidden;
}

.rs-repair-hero-v5 .repair-v5-shell,
.rs-repair-hero-v5 .repair-v5-main,
.rs-repair-hero-v5 .repair-v5-story,
.rs-repair-hero-v5 .repair-v5-stage{
  min-width:0;
  max-width:100%;
}

/* Buttons: predictable padding and no text clipping */
.rs-repair-hero-v5 .repair-v5-actions{
  width:100%;
  max-width:650px;
  min-width:0;
}

.rs-repair-hero-v5 .repair-v5-primary,
.rs-repair-hero-v5 .repair-v5-secondary{
  min-width:0;
  max-width:100%;
  min-height:50px;
  padding:12px 20px;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
}

.rs-repair-hero-v5 .repair-v5-primary span,
.rs-repair-hero-v5 .repair-v5-secondary span{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
}

/* Process strip: each column is allowed to shrink instead of
   pushing text outside the viewport. */
.rs-repair-hero-v5 .repair-v5-process{
  width:100%;
  max-width:650px;
  min-width:0;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:hidden;
}

.rs-repair-hero-v5 .repair-v5-process > div{
  min-width:0;
  width:100%;
  padding:14px 10px;
  grid-template-columns:auto minmax(0,1fr);
  column-gap:7px;
  overflow:hidden;
}

.rs-repair-hero-v5 .repair-v5-process b,
.rs-repair-hero-v5 .repair-v5-process strong,
.rs-repair-hero-v5 .repair-v5-process span{
  min-width:0;
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}

.rs-repair-hero-v5 .repair-v5-process strong{
  letter-spacing:.08em;
  line-height:1.2;
}

.rs-repair-hero-v5 .repair-v5-process span{
  line-height:1.35;
}

/* Visual stage: keep both images/cards inside the stage box. */
.rs-repair-hero-v5 .repair-v5-stage{
  width:100%;
  overflow:hidden;
}

.rs-repair-hero-v5 .repair-v5-card{
  max-width:100%;
}

@media (max-width:820px){
  .rs-repair-hero-v5 .repair-v5-shell{
    width:100%;
    padding-left:22px;
    padding-right:22px;
  }

  .rs-repair-hero-v5 .repair-v5-main{
    width:100%;
    gap:22px;
  }

  .rs-repair-hero-v5 .repair-v5-story{
    width:100%;
  }

  .rs-repair-hero-v5 .repair-v5-actions{
    flex-direction:column;
    align-items:stretch;
    gap:12px;
  }

  .rs-repair-hero-v5 .repair-v5-primary,
  .rs-repair-hero-v5 .repair-v5-secondary{
    width:100%;
    justify-content:center;
  }

  .rs-repair-hero-v5 .repair-v5-process{
    margin-top:24px;
  }

  .rs-repair-hero-v5 .repair-v5-process > div{
    padding:14px 8px;
  }

  .rs-repair-hero-v5 .repair-v5-stage{
    width:100%;
    min-height:400px;
    margin:0;
    overflow:hidden;
  }

  .rs-repair-hero-v5 .repair-v5-card-back{
    width:58%;
    max-width:58%;
    right:3%;
    top:4%;
  }

  .rs-repair-hero-v5 .repair-v5-card-front{
    width:67%;
    max-width:67%;
    left:3%;
    bottom:5%;
  }

  .rs-repair-hero-v5 .repair-v5-proof{
    right:2%;
    max-width:calc(100% - 4%);
    min-width:0;
  }
}

@media (max-width:560px){
  .rs-repair-hero-v5 .repair-v5-shell{
    padding-left:16px;
    padding-right:16px;
  }

  .rs-repair-hero-v5 .repair-v5-main{
    padding-top:24px;
    padding-bottom:20px;
    gap:18px;
  }

  .rs-repair-hero-v5 .repair-v5-actions{
    margin-top:22px;
  }

  .rs-repair-hero-v5 .repair-v5-primary,
  .rs-repair-hero-v5 .repair-v5-secondary{
    min-height:50px;
    padding:13px 14px;
    font-size:15px;
  }

  /* Three process columns remain side-by-side, but text is
     contained and centered so nothing spills out. */
  .rs-repair-hero-v5 .repair-v5-process{
    width:100%;
    max-width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .rs-repair-hero-v5 .repair-v5-process > div{
    min-height:88px;
    padding:12px 5px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:3px;
  }

  .rs-repair-hero-v5 .repair-v5-process b{
    display:block;
    font-size:14px;
    line-height:1.15;
  }

  .rs-repair-hero-v5 .repair-v5-process strong{
    display:block;
    font-size:13px;
    letter-spacing:.07em;
    line-height:1.2;
  }

  .rs-repair-hero-v5 .repair-v5-process span{
    display:block;
    font-size:14px;
    line-height:1.3;
  }

  .rs-repair-hero-v5 .repair-v5-stage{
    min-height:340px;
  }

  .rs-repair-hero-v5 .repair-v5-card-back{
    width:60%;
    max-width:60%;
    right:2%;
    top:4%;
  }

  .rs-repair-hero-v5 .repair-v5-card-front{
    width:70%;
    max-width:70%;
    left:2%;
    bottom:4%;
  }

  .rs-repair-hero-v5 .repair-v5-card-tag{
    left:10px;
    bottom:10px;
    max-width:calc(100% - 20px);
    padding:7px 8px;
    font-size:13px;
    line-height:1.2;
    overflow-wrap:anywhere;
  }

  .rs-repair-hero-v5 .repair-v5-proof{
    right:2%;
    bottom:1%;
    width:auto;
    max-width:70%;
    min-width:0;
    padding:10px;
  }
}

@media (max-width:380px){
  .rs-repair-hero-v5 .repair-v5-shell{
    padding-left:12px;
    padding-right:12px;
  }

  .rs-repair-hero-v5 .repair-v5-process > div{
    padding-left:3px;
    padding-right:3px;
  }

  .rs-repair-hero-v5 .repair-v5-process strong{
    font-size:12px;
    letter-spacing:.05em;
  }

  .rs-repair-hero-v5 .repair-v5-process span{
    font-size:13px;
  }

  .rs-repair-hero-v5 .repair-v5-stage{
    min-height:300px;
  }
}


/* =========================================================
   BRANDS PAGE — MOBILE/TABLET SPACING + SECTION 06 OVERLAP FIX
   Final responsive override.  Keeps desktop composition intact.
   ========================================================= */

/* Section 03 — use the available mobile width cleanly */
@media (max-width:767px){
  .brands-page #brandStory.brand-story-image{
    width:100%;
    max-width:100%;
    padding-left:16px !important;
    padding-right:16px !important;
    overflow:hidden !important;
  }

  .brands-page #brandStory .brand-story-layout{
    width:100%;
    max-width:100%;
    margin:0;
  }

  .brands-page #brandStory .brand-story-visual{
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .brands-page #brandStory .brand-story-image-frame{
    width:100% !important;
    max-width:100% !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .brands-page #brandStory .join-panel{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:12px 10px !important;
    overflow:hidden !important;
  }

  .brands-page #brandStory .join-panel b,
  .brands-page #brandStory .join-panel span{
    max-width:100%;
    overflow-wrap:anywhere;
    word-break:normal;
  }
}

/* Section 06 — remove the absolute translated cards on mobile.
   Cards become a contained 2-column layout with a dedicated
   center circle, so no card/text can overlap the circle. */
@media (max-width:767px){
  .brands-page #brandImpact.stats-redesign{
    width:100%;
    max-width:100%;
    overflow:hidden !important;
    padding:58px 16px 64px !important;
  }

  .brands-page #brandImpact .impact-copy{
    width:100%;
    max-width:100%;
  }

  .brands-page #brandImpact .impact-stage{
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:30px 0 0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:auto auto auto !important;
    gap:12px !important;
    align-items:stretch !important;
    justify-items:stretch !important;
  }

  .brands-page #brandImpact .impact-card{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:150px !important;
    padding:16px !important;
    margin:0 !important;
    overflow:hidden !important;
  }

  .brands-page #brandImpact .impact-card.ic-tl{grid-column:1;grid-row:1}
  .brands-page #brandImpact .impact-card.ic-tr{grid-column:2;grid-row:1}
  .brands-page #brandImpact .impact-card.ic-bl{grid-column:1;grid-row:3}
  .brands-page #brandImpact .impact-card.ic-br{grid-column:2;grid-row:3}

  .brands-page #brandImpact .impact-core{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    justify-self:center !important;
    align-self:center !important;
    width:145px !important;
    height:145px !important;
    margin:4px 0 !important;
    z-index:10 !important;
    overflow:hidden !important;
  }

  .brands-page #brandImpact .impact-core span{
    font-size:38px !important;
    line-height:1 !important;
  }

  .brands-page #brandImpact .impact-core small{
    position:static !important;
    width:112px !important;
    max-width:112px !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:1.15 !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .brands-page #brandImpact .impact-card small{
    font-size:13px !important;
    line-height:1.2 !important;
    letter-spacing:.10em !important;
  }

  .brands-page #brandImpact .impact-card strong{
    font-size:36px !important;
    line-height:1 !important;
    margin:10px 0 4px !important;
  }

  .brands-page #brandImpact .impact-card span{
    display:block !important;
    font-size:14px !important;
    line-height:1.35 !important;
    overflow-wrap:anywhere !important;
  }

  .brands-page #brandImpact .impact-bar{
    margin-top:16px !important;
  }
}

/* Very narrow phones — preserve the same 2-column structure,
   but tighten card internals so nothing escapes. */
@media (max-width:390px){
  .brands-page #brandImpact.stats-redesign{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  .brands-page #brandImpact .impact-stage{
    gap:8px !important;
  }

  .brands-page #brandImpact .impact-card{
    min-height:145px !important;
    padding:13px 11px !important;
  }

  .brands-page #brandImpact .impact-card strong{
    font-size:32px !important;
  }

  .brands-page #brandImpact .impact-card span{
    font-size:13px !important;
  }

  .brands-page #brandImpact .impact-core{
    width:138px !important;
    height:138px !important;
  }
}

/* Tablet — stop the old translate() offsets from pushing cards
   toward/over the center area. */
@media (min-width:768px) and (max-width:1050px){
  .brands-page #brandImpact .impact-stage{
    width:min(680px,100%) !important;
    height:560px !important;
    margin:25px auto 0 !important;
    overflow:hidden !important;
  }

  .brands-page #brandImpact .impact-card{
    transform:none !important;
    width:200px !important;
    min-height:170px !important;
  }

  .brands-page #brandImpact .ic-tl{left:0 !important;top:0 !important}
  .brands-page #brandImpact .ic-tr{right:0 !important;top:0 !important}
  .brands-page #brandImpact .ic-bl{left:0 !important;bottom:0 !important}
  .brands-page #brandImpact .ic-br{right:0 !important;bottom:0 !important}

  .brands-page #brandImpact .impact-core{
    left:50% !important;
    top:50% !important;
    transform:translate(-50%,-50%) !important;
  }
}

/* =========================================================
   CONTACT 05 — ROLLING SUPPORT / FULL-BLEED RESTRUCTURE
   ========================================================= */
.contact-page .contact-redesign .ct-five-roll{
  --accent:#F29191;
  --ink:#fff5f5;
  --muted:#d9c3c9;
  position:relative;
  min-height:100vh;
  padding:clamp(72px,9vw,120px) max(22px,calc((100% - 1240px)/2)) 34px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 18% 18%,rgba(242,145,145,.16),transparent 24%),
    radial-gradient(circle at 84% 72%,rgba(242,145,145,.10),transparent 28%),
    linear-gradient(135deg,#180b10 0%,#10080c 48%,#1c0d13 100%);
}
.contact-page .ct-five-roll-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.contact-page .ct-five-roll .ct-five-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.contact-page .ct-five-gridline{position:absolute;inset:-30%;opacity:.22;background-size:74px 74px;background-image:linear-gradient(rgba(242,145,145,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(242,145,145,.10) 1px,transparent 1px);transform:rotate(-8deg);animation:ctFiveGridMove 18s linear infinite}
.contact-page .ct-five-gridline.gridline-b{transform:rotate(8deg);opacity:.12;animation-duration:24s;animation-direction:reverse}
.contact-page .ct-five-glow{position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(80px);background:rgba(242,145,145,.10);animation:ctFiveGlow 7s ease-in-out infinite}
.contact-page .ct-five-glow.glow-a{left:-130px;top:12%}.contact-page .ct-five-glow.glow-b{right:-140px;bottom:8%;animation-delay:-3s}
.contact-page .ct-five-orb{position:absolute;width:10px;height:10px;border:1px solid rgba(242,145,145,.65);border-radius:50%;box-shadow:0 0 24px rgba(242,145,145,.45);animation:ctFiveFloat 5s ease-in-out infinite}
.contact-page .ct-five-orb.orb-a{left:8%;top:25%}.contact-page .ct-five-orb.orb-b{right:12%;top:18%;animation-delay:-2s}.contact-page .ct-five-orb.orb-c{right:28%;bottom:10%;animation-delay:-4s}

.contact-page .ct-five-roll-head{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:end;position:relative;z-index:3}
.contact-page .ct-five-roll-head h2{font-size:clamp(48px,6.5vw,86px);line-height:.9;letter-spacing:-.05em;margin:16px 0 0;color:var(--ink)}
.contact-page .ct-five-roll-head h2 em{font-style:normal;color:var(--accent)}
.contact-page .ct-five-roll-head p{max-width:540px;margin:0;color:var(--muted);font-size:17px;line-height:1.8;font-weight:600}

.contact-page .ct-five-roll-stage{height:590px;position:relative;margin-top:42px;display:grid;place-items:center;perspective:1400px}
.contact-page .ct-five-roll-track{position:relative;width:100%;height:100%;z-index:4}
.contact-page .ct-five-roll-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(242,145,145,.20);border-radius:50%;transform:translate(-50%,-50%) rotateX(62deg);pointer-events:none}
.contact-page .ct-five-roll-ring.ring-one{width:760px;height:300px;animation:ctFiveRing 12s linear infinite}
.contact-page .ct-five-roll-ring.ring-two{width:520px;height:220px;animation:ctFiveRing 9s linear infinite reverse;opacity:.65}
.contact-page .ct-five-roll-center{position:absolute;left:50%;top:50%;width:160px;height:160px;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid rgba(242,145,145,.42);border-radius:50%;background:rgba(30,12,18,.74);backdrop-filter:blur(12px);z-index:2;box-shadow:0 0 70px rgba(242,145,145,.12),inset 0 0 35px rgba(242,145,145,.07)}
.contact-page .ct-five-roll-center strong{font:800 44px "Space Grotesk";color:var(--accent);position:relative;z-index:3}
.contact-page .ct-five-roll-center small{position:absolute;bottom:-58px;text-align:center;color:#bda4ad;font-size:14px;font-weight:800;letter-spacing:.12em;line-height:1.35}
.contact-page .center-pulse{position:absolute;inset:14px;border:1px solid rgba(242,145,145,.22);border-radius:50%;animation:ctFivePulse 2.4s ease-in-out infinite}

.contact-page .ct-five-roll-card{
  position:absolute;width:310px;min-height:370px;padding:25px 27px 23px;
  border:1px solid rgba(242,145,145,.28);background:linear-gradient(145deg,rgba(50,22,29,.88),rgba(22,10,15,.88));
  box-shadow:0 28px 80px rgba(0,0,0,.32);backdrop-filter:blur(13px);
  color:var(--ink);overflow:hidden;transform-style:preserve-3d;
  opacity:0;transform:translateY(80px) rotateY(32deg) rotateZ(4deg) scale(.88);
  transition:opacity .8s,transform 1s cubic-bezier(.16,.84,.24,1),border-color .35s,box-shadow .35s;
}
.contact-page .ct-five-roll-card:before{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 43%,rgba(242,145,145,.16) 50%,transparent 57%);transform:translateX(-35%) rotate(8deg);animation:ctFiveShine 4.5s linear infinite}
.contact-page .ct-five-roll-card:after{content:"";position:absolute;width:150px;height:150px;right:-70px;top:-70px;border-radius:50%;border:1px solid rgba(242,145,145,.25);box-shadow:0 0 45px rgba(242,145,145,.08)}
.contact-page .ct-five-roll-card.in{opacity:1;transform:translateY(0) rotateY(0) rotateZ(0) scale(1)}
.contact-page .ct-five-roll-card:hover{transform:translateY(-14px) rotateY(-5deg) rotateZ(-1deg)!important;border-color:rgba(242,145,145,.65);box-shadow:0 38px 95px rgba(0,0,0,.42),0 0 35px rgba(242,145,145,.08)}
.contact-page .ct-five-roll-card.card-one{left:2%;top:9%;transition-delay:.05s}.contact-page .ct-five-roll-card.card-two{left:50%;top:20%;margin-left:-155px;transition-delay:.22s}.contact-page .ct-five-roll-card.card-three{right:2%;top:9%;transition-delay:.39s}
.contact-page .ct-roll-card-top{display:flex;justify-content:space-between;align-items:center;color:var(--accent);font-weight:800;font-size:14px;letter-spacing:.1em}
.contact-page .ct-roll-card-top i{font-size:20px}
.contact-page .ct-roll-card-icon{width:62px;height:62px;margin:30px 0 24px;border:1px solid rgba(242,145,145,.28);display:grid;place-items:center;border-radius:18px;background:rgba(242,145,145,.07);color:var(--accent);font-size:23px;transform:rotate(-6deg);transition:transform .5s}
.contact-page .ct-five-roll-card:hover .ct-roll-card-icon{transform:rotate(6deg) scale(1.08)}
.contact-page .ct-five-roll-card small{display:block;color:var(--accent);font-size:14px;letter-spacing:.12em;font-weight:800}
.contact-page .ct-five-roll-card h3{font:700 30px/1.05 "Space Grotesk";margin:9px 0 13px}
.contact-page .ct-five-roll-card p{color:#dcc7cd;font-size:15px;line-height:1.7;font-weight:600;margin:0}
.contact-page .ct-five-roll-card>b{display:block;margin-top:23px;color:#a98f99;font-size:14px;letter-spacing:.12em;font-weight:800}

.contact-page .ct-five-roll-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(242,145,145,.20);padding-top:20px;position:relative;z-index:5;color:#cdb7bf;font-size:14px;font-weight:800;letter-spacing:.09em}
.contact-page .ct-five-roll-footer span{display:inline-flex;align-items:center;gap:8px}.contact-page .ct-five-roll-footer i{color:var(--accent)}.contact-page .ct-five-roll-footer>b{color:var(--accent);font-size:15px}

@keyframes ctFiveGridMove{to{transform:rotate(-8deg) translate3d(74px,74px,0)}}
@keyframes ctFiveGlow{0%,100%{transform:scale(.9);opacity:.45}50%{transform:scale(1.18);opacity:.8}}
@keyframes ctFiveFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-28px)}}
@keyframes ctFiveRing{to{rotate:360deg}}
@keyframes ctFivePulse{0%,100%{transform:scale(.92);opacity:.45}50%{transform:scale(1.08);opacity:1}}
@keyframes ctFiveShine{to{transform:translateX(35%) rotate(8deg)}}

@media(max-width:950px){
 .contact-page .ct-five-roll-head{grid-template-columns:1fr;gap:18px}
 .contact-page .ct-five-roll-stage{height:920px}
 .contact-page .ct-five-roll-card{width:285px;min-height:350px}
 .contact-page .ct-five-roll-card.card-one{left:1%;top:3%}.contact-page .ct-five-roll-card.card-two{top:50%;margin-left:-142px}.contact-page .ct-five-roll-card.card-three{right:1%;top:3%}
 .contact-page .ct-five-roll-center{top:52%}
 .contact-page .ct-five-roll-ring.ring-one{width:650px}.contact-page .ct-five-roll-ring.ring-two{width:450px}
}
@media(max-width:650px){
 .contact-page .contact-redesign .ct-five-roll{padding:60px 14px 26px;min-height:auto}
 .contact-page .ct-five-roll-head h2{font-size:clamp(44px,14vw,64px)}
 .contact-page .ct-five-roll-head p{font-size:14px;line-height:1.7}
 .contact-page .ct-five-roll-stage{height:1080px;margin-top:30px}
 .contact-page .ct-five-roll-card{width:calc(100% - 12px);left:6px!important;right:auto!important;margin-left:0!important;min-height:0;padding:22px 20px}
 .contact-page .ct-five-roll-card.card-one{top:2%}.contact-page .ct-five-roll-card.card-two{top:34%}.contact-page .ct-five-roll-card.card-three{top:66%}
 .contact-page .ct-five-roll-center{display:none}
 .contact-page .ct-five-roll-ring{display:none}
 .contact-page .ct-five-roll-footer{display:grid;grid-template-columns:1fr 1fr;font-size:14px;gap:13px}
 .contact-page .ct-five-roll-footer>b{grid-column:2;text-align:right}
}

/* Contact page: readable typography in BOTH themes — minimum 14px for text */
.contact-page p,.contact-page a,.contact-page button,.contact-page label,.contact-page input,.contact-page select,.contact-page textarea,
.contact-page small,.contact-page span,.contact-page li,.contact-page summary,.contact-page option,
.contact-page .cv-footer p,.contact-page .cv-footer a,.contact-page .cv-footer span{
  font-size:max(14px,1em);
  font-weight:600;
}
.contact-page .ct-kicker,.contact-page .ct-mini,.contact-page .ct-four-footer,.contact-page .ct-five-status,
.contact-page .ct-form-promise,.contact-page .cv-footer-col a{font-weight:800}
.contact-page .ct-four-item p,.contact-page .ct-five-step p,.contact-page .ct-location-point small{font-weight:600}
html.light .contact-page{color:#24171c}
html.light .contact-page .contact-redesign{color:#24171c}
html.light .contact-page p,html.light .contact-page .ct-four-intro p,html.light .contact-page .ct-five-step p,
html.light .contact-page .ct-location-point small,html.light .contact-page .ct-four-item p{color:#34262b;font-weight:650}
html.light .contact-page .ct-five-roll{background:
 radial-gradient(circle at 18% 18%,rgba(120,42,52,.12),transparent 24%),
 radial-gradient(circle at 84% 72%,rgba(120,42,52,.08),transparent 28%),
 linear-gradient(135deg,#fff1f2 0%,#f9e7e9 48%,#fff5f5 100%);color:#21151a}
html.light .contact-page .ct-five-roll-head h2{color:#21151a}
html.light .contact-page .ct-five-roll-head p{color:#38272d}
html.light .contact-page .ct-five-roll-card{background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(251,235,237,.96));border-color:rgba(102,46,56,.28);box-shadow:0 24px 65px rgba(70,30,38,.15)}
html.light .contact-page .ct-five-roll-card h3{color:#21151a}
html.light .contact-page .ct-five-roll-card p{color:#38272d;font-weight:650}
html.light .contact-page .ct-five-roll-card>b{color:#654951}
html.light .contact-page .ct-five-roll-center{background:rgba(255,248,249,.84);border-color:rgba(102,46,56,.35)}
html.light .contact-page .ct-five-roll-center small{color:#60474e}
html.light .contact-page .ct-five-roll-footer{color:#47333a}
html.light .contact-page .ct-five-roll-footer>b{color:#7d3f49}
html.light .contact-page .ct-five-gridline{opacity:.18;background-image:linear-gradient(rgba(110,50,60,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(110,50,60,.10) 1px,transparent 1px)}
html.light .contact-page .ct-five-glow{background:rgba(160,70,82,.12)}
html.light .contact-page .ct-five-orb{border-color:rgba(120,42,52,.45)}
html.light .contact-page .ct-five-roll-ring{border-color:rgba(120,42,52,.18)}

html.dark .contact-page p,html.dark .contact-page a,html.dark .contact-page label,html.dark .contact-page small,
html.dark .contact-page span,html.dark .contact-page li,html.dark .contact-page summary{font-weight:650}
html.dark .contact-page .ct-five-roll-card p{color:#ead9de}


/* =========================================================
   CONTACT 04 — DENSE CREATIVE SUPPORT HUB
   Fixes the empty fourth section and keeps the visual flow full-width.
   ========================================================= */
.contact-page .contact-redesign .ct-four{
  padding-top:clamp(58px,7vw,88px)!important;
  background:
    radial-gradient(circle at 50% 52%,rgba(242,145,145,.14),transparent 23%),
    radial-gradient(circle at 8% 20%,rgba(242,145,145,.08),transparent 20%),
    linear-gradient(135deg,#140a0d 0%,#1b0d12 48%,#12090c 100%)!important;
}
.contact-page .contact-redesign .ct-four-head{
  margin-bottom:34px!important;
  position:relative;
  z-index:8;
}
.contact-page .contact-redesign .ct-four-stage{
  min-height:590px!important;
  border:1px solid rgba(242,145,145,.28)!important;
  border-left:0!important;border-right:0!important;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%,rgba(242,145,145,.18),transparent 24%),
    linear-gradient(120deg,rgba(242,145,145,.045),transparent 40%,rgba(242,145,145,.055));
}
.contact-page .contact-redesign .ct-four-stage:after{
  content:"";
  position:absolute;
  inset:8% 10%;
  border:1px solid rgba(242,145,145,.16);
  border-radius:48% 52% 44% 56%;
  transform:rotate(-13deg) scaleY(.72);
  pointer-events:none;
  z-index:1;
  animation:ctFourShapeFloat 9s ease-in-out infinite;
}
.contact-page .contact-redesign .ct-four-line{
  opacity:.72!important;
  width:2px!important;
  background:linear-gradient(to bottom,rgba(242,145,145,.9),rgba(242,145,145,.08),transparent)!important;
  filter:drop-shadow(0 0 8px rgba(242,145,145,.22));
}
.contact-page .contact-redesign .ct-four-orbit{
  border:2px solid rgba(242,145,145,.34)!important;
  box-shadow:0 0 30px rgba(242,145,145,.06),inset 0 0 20px rgba(242,145,145,.035);
}
.contact-page .contact-redesign .ct-four-orbit.orbit-a{
  width:520px!important;height:270px!important;
}
.contact-page .contact-redesign .ct-four-orbit.orbit-b{
  width:330px!important;height:520px!important;
}
.contact-page .contact-redesign .ct-four-morph{
  width:142px!important;height:142px!important;
  box-shadow:0 0 55px rgba(242,145,145,.14);
}
.contact-page .contact-redesign .ct-four-grid{
  position:absolute!important;
  inset:0!important;
  z-index:7!important;
}
.contact-page .contact-redesign .ct-four-item{
  width:320px!important;
  min-height:190px!important;
  padding:22px 24px 20px!important;
  background:linear-gradient(145deg,rgba(35,17,22,.88),rgba(18,9,12,.76))!important;
  border:1px solid rgba(242,145,145,.28)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.24),0 0 0 1px rgba(242,145,145,.03);
  backdrop-filter:blur(12px);
  opacity:1!important;
  transform:translateY(0) scale(1)!important;
  animation:ctFourCardRoll .9s cubic-bezier(.16,.8,.25,1) both;
}
.contact-page .contact-redesign .ct-four-item.item-a{left:3%;top:7%;animation-delay:.08s}
.contact-page .contact-redesign .ct-four-item.item-b{right:3%;top:7%;animation-delay:.22s}
.contact-page .contact-redesign .ct-four-item.item-c{left:3%;bottom:7%;animation-delay:.36s}
.contact-page .contact-redesign .ct-four-item.item-d{right:3%;bottom:7%;animation-delay:.50s}
.contact-page .contact-redesign .ct-four-item:hover{
  transform:translateY(-10px) rotateX(2deg) rotateY(-2deg)!important;
  border-color:rgba(242,145,145,.72)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.34),0 0 35px rgba(242,145,145,.09);
}
.contact-page .contact-redesign .ct-four-item h3{
  font-size:21px!important;font-weight:800!important;
}
.contact-page .contact-redesign .ct-four-item p{
  font-size:14px!important;line-height:1.6!important;font-weight:650!important;
}
.contact-page .contact-redesign .ct-four-item a{
  font-size:14px!important;font-weight:800!important;
}
.contact-page .contact-redesign .ct-four-footer{
  min-height:78px!important;
  position:relative;z-index:8;
}
@keyframes ctFourCardRoll{
  0%{opacity:0;transform:perspective(700px) rotateY(78deg) rotateX(8deg) translateY(50px) scale(.82)}
  70%{opacity:1;transform:perspective(700px) rotateY(-7deg) rotateX(-2deg) translateY(-4px) scale(1.02)}
  100%{opacity:1;transform:perspective(700px) rotateY(0) rotateX(0) translateY(0) scale(1)}
}
@keyframes ctFourShapeFloat{
  0%,100%{transform:rotate(-13deg) scaleY(.72) translate3d(0,0,0)}
  50%{transform:rotate(-7deg) scaleY(.8) translate3d(0,-12px)}
}
@media (max-width:1100px){
  .contact-page .contact-redesign .ct-four-item{width:285px!important}
}
@media (max-width:760px){
  .contact-page .contact-redesign .ct-four{
    padding-left:18px!important;padding-right:18px!important;
  }
  .contact-page .contact-redesign .ct-four-head{
    grid-template-columns:1fr!important;gap:20px!important;
  }
  .contact-page .contact-redesign .ct-four-stage{
    min-height:900px!important;
    padding:28px 0;
  }
  .contact-page .contact-redesign .ct-four-line{display:none}
  .contact-page .contact-redesign .ct-four-orbit.orbit-a{
    width:310px!important;height:160px!important;
  }
  .contact-page .contact-redesign .ct-four-orbit.orbit-b{
    width:210px!important;height:420px!important;
  }
  .contact-page .contact-redesign .ct-four-item{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:min(100%,360px)!important;
    margin:0 auto 18px!important;
  }
  .contact-page .contact-redesign .ct-four-grid{
    position:relative!important;
    display:flex;flex-direction:column;justify-content:center;
    min-height:100%;
    padding:10px 0;
  }
  .contact-page .contact-redesign .ct-four-morph{
    opacity:.35;transform:translate(-50%,-50%) scale(.8)!important;
  }
  .contact-page .contact-redesign .ct-four-footer{
    grid-template-columns:1fr 1fr!important;
    padding:12px 0!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .contact-page .contact-redesign .ct-four-item,
  .contact-page .contact-redesign .ct-four-orbit,
  .contact-page .contact-redesign .ct-four-stage:after{
    animation:none!important;
  }
}

/* =========================================================
   CONTACT RESPONSIVE FINAL — NO OVERLAP / LIGHT-MODE CONTRAST
   ========================================================= */

/* Section 04: keep every text layer above decorative geometry */
.contact-page .contact-redesign .ct-four-item > *,
.contact-page .contact-redesign .ct-four-item h3,
.contact-page .contact-redesign .ct-four-item p,
.contact-page .contact-redesign .ct-four-item a,
.contact-page .contact-redesign .ct-four-item .ct-four-number,
.contact-page .contact-redesign .ct-four-item > i {
  position:relative;
  z-index:4;
}

html.light .contact-page .contact-redesign .ct-four {
  background:
    radial-gradient(circle at 50% 48%, rgba(112,48,58,.13), transparent 25%),
    linear-gradient(135deg,#fff8f8 0%,#f9e9ea 52%,#fffdfd 100%) !important;
}
html.light .contact-page .contact-redesign .ct-four-stage {
  background:
    radial-gradient(circle at 50% 50%, rgba(112,48,58,.12), transparent 28%),
    linear-gradient(120deg,rgba(112,48,58,.045),transparent 48%,rgba(112,48,58,.06)) !important;
  border-color:rgba(93,43,52,.30) !important;
}
html.light .contact-page .contact-redesign .ct-four-stage:before {
  opacity:.55 !important;
  background:repeating-linear-gradient(120deg,transparent 0 78px,rgba(93,43,52,.09) 79px,transparent 80px 150px) !important;
}
html.light .contact-page .contact-redesign .ct-four-title h2 {
  color:#24151a !important;
}
html.light .contact-page .contact-redesign .ct-four-intro p {
  color:#38272d !important;
  font-weight:700 !important;
}
html.light .contact-page .contact-redesign .ct-four-hint {
  color:#4b373e !important;
  font-weight:800 !important;
}
html.light .contact-page .contact-redesign .ct-four-item {
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(250,235,237,.94)) !important;
  border-color:rgba(91,43,52,.34) !important;
  box-shadow:0 20px 55px rgba(70,30,38,.14) !important;
}
html.light .contact-page .contact-redesign .ct-four-item h3 {
  color:#201318 !important;
  font-weight:850 !important;
}
html.light .contact-page .contact-redesign .ct-four-item p {
  color:#302329 !important;
  font-weight:750 !important;
}
html.light .contact-page .contact-redesign .ct-four-item a {
  color:#713740 !important;
  font-weight:850 !important;
}
html.light .contact-page .contact-redesign .ct-four-item .ct-four-number {
  color:#57363e !important;
  font-weight:850 !important;
}
html.light .contact-page .contact-redesign .ct-four-item > i {
  color:#a64e58 !important;
}
html.light .contact-page .contact-redesign .ct-four-orbit {
  border-color:rgba(91,43,52,.42) !important;
  box-shadow:0 0 28px rgba(91,43,52,.08) !important;
}
html.light .contact-page .contact-redesign .ct-four-line {
  background:linear-gradient(var(--accent),rgba(91,43,52,.16),transparent) !important;
  opacity:.78 !important;
}
html.light .contact-page .contact-redesign .ct-four-footer,
html.light .contact-page .contact-redesign .ct-four-footer span,
html.light .contact-page .contact-redesign .ct-four-footer b {
  color:#403037 !important;
  font-weight:850 !important;
}
html.light .contact-page .contact-redesign .ct-four-footer span:first-child,
html.light .contact-page .contact-redesign .ct-four-footer b {
  color:#713740 !important;
}

/* Section 05: mobile/tablet cards flow naturally instead of using percentage positioning.
   This removes the 3–5px card collisions and prevents content from touching the footer. */
@media (max-width:950px) {
  .contact-page .contact-redesign .ct-five-roll-stage {
    height:auto !important;
    min-height:0 !important;
    margin-top:34px !important;
    display:block !important;
  }
  .contact-page .contact-redesign .ct-five-roll-track {
    height:auto !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    gap:26px !important;
    padding:8px 0 28px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card,
  .contact-page .contact-redesign .ct-five-roll-card.card-one,
  .contact-page .contact-redesign .ct-five-roll-card.card-two,
  .contact-page .contact-redesign .ct-five-roll-card.card-three {
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    margin:0 !important;
    width:min(100%,520px) !important;
    min-height:0 !important;
    height:auto !important;
    flex:none !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card h3 {
    line-height:1.15 !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card p {
    line-height:1.7 !important;
  }
  .contact-page .contact-redesign .ct-five-roll-footer {
    margin-top:4px !important;
    padding-top:20px !important;
    position:relative !important;
    z-index:8 !important;
  }
}

@media (max-width:650px) {
  .contact-page .contact-redesign .ct-five-roll {
    padding-left:14px !important;
    padding-right:14px !important;
    padding-bottom:30px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-head {
    gap:14px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-head h2 {
    font-size:clamp(40px,13vw,58px) !important;
    line-height:.94 !important;
  }
  .contact-page .contact-redesign .ct-five-roll-head p {
    font-size:14px !important;
    line-height:1.75 !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card {
    width:100% !important;
    padding:22px 20px 24px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card small,
  .contact-page .contact-redesign .ct-five-roll-card p,
  .contact-page .contact-redesign .ct-five-roll-card > b,
  .contact-page .contact-redesign .ct-five-roll-footer,
  .contact-page .contact-redesign .ct-five-roll-footer > b {
    font-size:14px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-card p {
    max-width:100% !important;
    overflow-wrap:anywhere !important;
  }
  .contact-page .contact-redesign .ct-five-roll-footer {
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:10px !important;
  }
  .contact-page .contact-redesign .ct-five-roll-footer > b {
    text-align:left !important;
  }
}

/* ===== CART MOTION LAYER ===== */
.add-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid currentColor;border-radius:12px;background:transparent;color:inherit;font:700 14px/1.2 "Inter",sans-serif;cursor:pointer;overflow:hidden;isolation:isolate;transition:transform .18s ease,box-shadow .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.add-cart:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.14)}
.add-cart:active{transform:scale(.91)}
.add-cart i{font-size:14px;transition:transform .3s ease}
.add-cart::after{content:"";position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:currentColor;opacity:0;transform:translate(-50%,-50%) scale(0);pointer-events:none;z-index:-1}
.add-cart.ripple::after{animation:cartRipple .55s ease-out}
@keyframes cartRipple{0%{opacity:.28;transform:translate(-50%,-50%) scale(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(22)}}
.add-cart.added{background:currentColor;color:var(--bg,#fff);border-color:currentColor;animation:cartSuccess .5s cubic-bezier(.2,.9,.25,1.2)}
.add-cart.added i{transform:rotate(360deg) scale(1.12)}
@keyframes cartSuccess{0%{transform:scale(.9)}55%{transform:scale(1.08)}100%{transform:scale(1)}}
.cart-btn.cart-bounce{animation:cartBtnPop .62s cubic-bezier(.2,.8,.25,1.3)}
@keyframes cartBtnPop{0%{transform:scale(1)}22%{transform:scale(.82) rotate(-5deg)}48%{transform:scale(1.2) rotate(4deg)}72%{transform:scale(.94) rotate(-2deg)}100%{transform:scale(1) rotate(0)}}
.cart-count.cart-count-pop{animation:cartCountPop .5s cubic-bezier(.2,.9,.25,1.2)}
@keyframes cartCountPop{0%{opacity:.35;transform:scale(.45) translateY(4px)}60%{opacity:1;transform:scale(1.28) translateY(-1px)}100%{transform:scale(1)}}
.toast{opacity:0;transform:translate3d(0,18px,0) scale(.96);transition:opacity .35s ease,transform .42s cubic-bezier(.2,.8,.25,1)}
.toast.show{opacity:1;transform:translate3d(0,0,0) scale(1);animation:toastGlow .7s ease-out}
@keyframes toastGlow{0%{box-shadow:0 0 0 rgba(242,145,145,0)}45%{box-shadow:0 10px 34px rgba(242,145,145,.22)}100%{box-shadow:0 0 0 rgba(242,145,145,0)}}
.cart-fly-clone{position:fixed;z-index:99999;pointer-events:none;width:48px;height:48px;border-radius:12px;object-fit:cover;box-shadow:0 14px 35px rgba(0,0,0,.25);transform-origin:center;will-change:transform,opacity}
.drawer-cart-btn{width:100%;display:flex;align-items:center;gap:10px;min-height:48px;margin:16px 0 8px;padding:12px 14px;border:1px solid rgba(127,127,127,.3);border-radius:12px;background:transparent;color:inherit;font:700 14px/1.2 "Inter",sans-serif;cursor:pointer;transition:.25s ease}
.drawer-cart-btn:hover{transform:translateX(5px);border-color:#f29191}
.drawer-cart-btn b{margin-left:auto;min-width:24px;height:24px;display:grid;place-items:center;border-radius:50%;font-size:14px;background:#f29191;color:#201214}
.collection-add-cart,.orbit-add-cart,.featured-add-cart{margin-top:12px;position:relative;z-index:5}
.collection-image-panel .add-cart{position:absolute;left:18px;bottom:18px}
.orbit-product .add-cart{margin-top:10px}
.cv-s2-item .add-cart,.cv-s3-content .add-cart{margin-top:14px}
.dark .add-cart.added{color:#171112;background:#fff4f4}
.dark .drawer-cart-btn{border-color:rgba(255,255,255,.22);color:#fff4f4}
.dark .drawer-cart-btn b{color:#171112}
body :is(p,a,button,label,li,small,summary,cite,figcaption,dt,dd){font-size:max(14px,1em)!important}
@media(max-width:767px){.add-cart{min-height:46px;padding:10px 14px}.collection-image-panel .add-cart{left:12px;bottom:12px}.cart-fly-clone{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){.add-cart,.cart-btn,.cart-count,.toast{animation:none!important;transition:none!important}}


/* ===== BEGIN VOLTIVA SHOP MOTION SYSTEM (merged from shop.css) ===== */

/* VOLTIVA PRODUCT MOTION SYSTEM — shared by Cases / Chargers / Screen Protectors */
:root{--shop-accent:#F29191;--shop-bg:#FBEFEF;--shop-ink:#251617;--shop-muted:#6e5555;--shop-dark:#100b0c;--shop-dark2:#1b1214}
html{scroll-behavior:smooth}.shop-page{background:var(--shop-bg);color:var(--shop-ink);overflow-x:hidden}.shop-page *{box-sizing:border-box}.shop-page p,.shop-page li,.shop-page label,.shop-page input,.shop-page select,.shop-page textarea,.shop-page button,.shop-page a,.shop-page small,.shop-page span{font-size:max(14px,1em)}
.shop-section{position:relative;overflow:hidden}.shop-wrap{width:min(1240px,calc(100% - 48px));margin:auto}.shop-kicker{font:800 14px/1.2 "Space Grotesk",sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#8f5558}.shop-title{font:700 clamp(42px,6vw,78px)/.94 "Space Grotesk";letter-spacing:-.055em;margin:15px 0 22px}.shop-title em{font-style:normal;color:var(--shop-accent)}.shop-copy{color:var(--shop-muted);line-height:1.8;max-width:620px}
.shop-btn{display:inline-flex;align-items:center;gap:12px;padding:14px 20px;border-radius:13px;background:var(--shop-ink);color:var(--shop-bg);font-weight:800;transition:.3s}.shop-btn:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(37,22,23,.15)}
/* shared reveal shapes */
.shop-shape{opacity:0;transform:translateY(65px) scale(.96);clip-path:inset(18% 12% 18% 12% round 24px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.8,.2,1),clip-path 1s ease}.shop-shape.is-in{opacity:1;transform:none;clip-path:inset(0 0 0 0 round 0)}
.shop-orb{position:absolute;border-radius:50%;pointer-events:none;background:var(--shop-accent);filter:blur(30px);opacity:.18}
.shop-hero{min-height:calc(100vh - 78px);display:grid;align-items:center;background:radial-gradient(circle at 75% 35%,rgba(242,145,145,.28),transparent 30%),var(--shop-bg)}.shop-hero .shop-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;padding:75px 0}.shop-hero-art{height:570px;position:relative;display:grid;place-items:center}.shop-hero-art img{width:min(420px,70%);height:510px;object-fit:cover;clip-path:polygon(8% 0,94% 7%,100% 86%,76% 100%,5% 92%,0 17%);filter:saturate(.9);box-shadow:0 30px 70px rgba(37,22,23,.18);transform:rotate(3deg)}.shop-hero-art:before{content:"";position:absolute;width:370px;height:370px;border:1px solid rgba(143,85,88,.35);border-radius:48% 52% 60% 40%;animation:shopMorph 7s ease-in-out infinite}.shop-hero-art:after{content:"";position:absolute;width:480px;height:190px;border:1px solid rgba(242,145,145,.45);border-radius:50%;transform:rotate(-25deg);animation:shopOrbit 9s linear infinite}@keyframes shopMorph{50%{border-radius:58% 42% 38% 62%;transform:rotate(14deg) scale(1.04)}}@keyframes shopOrbit{to{transform:rotate(335deg)}}
.shop-hero-tag{position:absolute;right:8%;bottom:12%;padding:14px 18px;background:rgba(255,255,255,.65);backdrop-filter:blur(14px);clip-path:polygon(0 0,92% 0,100% 75%,88% 100%,0 86%);font-weight:800}.dark .shop-page{--shop-bg:#100b0c;--shop-ink:#fff4f4;--shop-muted:#c9adad;--shop-dark:#090707}.dark .shop-hero-tag{background:rgba(38,25,27,.75);color:#fff}
.shop-features{padding:105px 0;background:#171012;color:#fff4f4}.shop-features .shop-kicker{color:var(--shop-accent)}.feature-flow{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;margin-top:48px}.feature-main{min-height:460px;padding:42px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,#2b1a1d,#130d0e);clip-path:polygon(0 9%,12% 0,100% 5%,96% 90%,82% 100%,4% 94%);position:relative;overflow:hidden}.feature-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;transition:transform .8s}.feature-main:hover img{transform:scale(1.08)}.feature-main>*{position:relative;z-index:1}.feature-main h3{font:700 42px "Space Grotesk";margin:12px 0}.feature-side{display:grid;gap:20px}.feature-item{padding:28px;background:#231619;clip-path:polygon(8% 0,100% 0,94% 100%,0 91%);border-left:3px solid var(--shop-accent);transition:.45s}.feature-item:hover{transform:translateX(12px);background:#2d1c20}.feature-item i{color:var(--shop-accent);font-size:25px}.feature-item h3{font:700 24px "Space Grotesk";margin:10px 0 4px}.feature-item p{color:#c6aeaf;margin:0;line-height:1.65}
.shop-gallery{padding:110px 0;background:var(--shop-bg)}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.gallery-viewport{overflow:hidden}.gallery-track{display:flex;gap:22px;width:max-content;padding-bottom:25px}.gallery-item{width:min(48vw,430px);height:470px;flex:0 0 auto;position:relative;overflow:hidden;background:#221517;clip-path:polygon(0 5%,92% 0,100% 90%,74% 100%,5% 94%)}.gallery-item:nth-child(even){clip-path:polygon(8% 0,100% 7%,94% 95%,16% 100%,0 18%)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .9s}.gallery-item:hover img{transform:scale(1.1) rotate(1deg)}.gallery-item .gcap{position:absolute;left:22px;right:22px;bottom:22px;color:#fff;padding:18px 20px;background:linear-gradient(transparent,rgba(0,0,0,.82));padding-top:65px}.gallery-item h3{font:700 26px "Space Grotesk";margin:0 0 5px}.gallery-item p{margin:0;color:#e8dada}
.shop-compare{padding:120px 0;background:#100b0c;color:#fff4f4}.compare-stage{min-height:145vh;position:relative}.compare-pin{position:sticky;top:78px;min-height:calc(100vh - 78px);display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center}.compare-copy p{color:#c7b2b3;line-height:1.8}.compare-visual{position:relative;height:580px}.compare-phone{position:absolute;width:240px;height:410px;overflow:hidden;clip-path:polygon(10% 0,94% 7%,100% 89%,80% 100%,5% 93%,0 14%);transition:transform .6s}.compare-phone img{width:100%;height:100%;object-fit:cover}.compare-phone.a{left:10%;top:55px;transform:rotate(-9deg)}.compare-phone.b{right:10%;top:105px;transform:rotate(8deg)}.compare-phone.c{left:34%;bottom:0;transform:rotate(1deg)}.compare-phone:hover{transform:translateY(-15px) rotate(0) scale(1.04);z-index:5}.compare-label{position:absolute;padding:12px 16px;background:var(--shop-accent);color:#281719;font-weight:800;clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)}.compare-label.l1{left:4%;top:15%}.compare-label.l2{right:5%;top:22%}.compare-label.l3{left:39%;bottom:3%}
.shop-testimonial{padding:115px 0;background:#f1dddd}.testimonial-line{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center}.quote-visual{height:440px;position:relative}.quote-visual img{width:75%;height:100%;object-fit:cover;clip-path:circle(42% at 50% 50%);margin-left:10%;transition:transform .7s}.quote-visual:hover img{transform:scale(1.07) rotate(2deg)}.quote-mark{position:absolute;right:4%;top:4%;font:700 150px "Space Grotesk";color:var(--shop-accent);line-height:1}.quote-copy blockquote{font:600 clamp(28px,4vw,48px)/1.1 "Space Grotesk";margin:0 0 25px}.quote-copy cite{font-style:normal;color:#775b5c;font-weight:700}
.shop-faq{padding:115px 0;background:var(--shop-bg)}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px}.faq-list details{border-top:1px solid rgba(37,22,23,.18);padding:0}.faq-list summary{cursor:pointer;list-style:none;padding:23px 0;font:700 20px "Space Grotesk";display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{color:var(--shop-muted);line-height:1.7;padding:0 45px 25px 0;margin:0}.dark .shop-faq{background:#140e0f;color:#fff}.dark .faq-list details{border-color:rgba(255,255,255,.14)}
.shop-cta{padding:105px 0;background:linear-gradient(135deg,#241416,#130d0e);color:#fff;text-align:center}.shop-cta .shop-title{max-width:750px;margin:12px auto 22px}.shop-cta p{color:#c7b1b2;margin:0 auto 28px;max-width:600px}.shop-cta .shop-btn{background:var(--shop-accent);color:#261719}
.jar-wrap{width:160px;margin:35px auto 0;text-align:center}.jar{height:190px;border:3px solid currentColor;border-top:0;clip-path:polygon(15% 0,85% 0,100% 10%,92% 100%,8% 100%,0 10%);position:relative;overflow:hidden}.jar-fill{position:absolute;bottom:0;left:0;right:0;height:12%;background:var(--shop-accent);transition:height 1s}.jar-word{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding-bottom:15px;font:700 14px "Space Grotesk";color:#2b1719;overflow:hidden}.jar-word span{opacity:0;transform:translateY(-120px);display:block}.jar-wrap.is-in .jar-fill{height:78%}.jar-wrap.is-in .jar-word span{animation:jarDrop .6s forwards;animation-delay:calc(var(--i)*.08s)}@keyframes jarDrop{to{opacity:1;transform:none}}
/* page variants */
.shop-page--cases .shop-hero{background:radial-gradient(circle at 75% 45%,rgba(242,145,145,.35),transparent 35%),var(--shop-bg)}.shop-page--cases .shop-hero-art:before{border-radius:20% 80% 35% 65%}.shop-page--cases .feature-item{clip-path:polygon(0 12%,100% 0,92% 100%,7% 90%)}.shop-page--cases .gallery-item{border-radius:40px 10px 60px 10px;clip-path:none}.shop-page--cases .compare-phone{border-radius:44px}
.shop-page--chargers .shop-hero{background:linear-gradient(110deg,var(--shop-bg),#f4d5d5)}.shop-page--chargers .shop-hero-art:before{border-radius:50%;width:330px;height:330px}.shop-page--chargers .feature-main{clip-path:polygon(0 0,89% 0,100% 15%,93% 100%,10% 92%)}.shop-page--chargers .feature-item{clip-path:polygon(0 0,92% 8%,100% 92%,8% 100%)}.shop-page--chargers .gallery-item{clip-path:polygon(0 14%,100% 0,94% 86%,12% 100%)}.shop-page--chargers .gallery-item:nth-child(even){clip-path:polygon(7% 0,94% 10%,100% 90%,0 100%,4% 14%)}
.shop-page--protectors .shop-hero{background:radial-gradient(circle at 20% 30%,rgba(242,145,145,.3),transparent 30%),var(--shop-bg)}.shop-page--protectors .shop-hero-art:before{border-radius:70% 30% 55% 45%;transform:rotate(20deg)}.shop-page--protectors .feature-main{clip-path:polygon(6% 0,100% 9%,94% 94%,0 100%)}.shop-page--protectors .feature-item{clip-path:polygon(12% 0,100% 10%,90% 100%,0 90%)}.shop-page--protectors .gallery-item{clip-path:polygon(50% 0,94% 9%,100% 55%,90% 94%,50% 100%,7% 92%,0 50%,8% 8%)}.shop-page--protectors .compare-phone{clip-path:polygon(50% 0,92% 10%,100% 50%,90% 92%,50% 100%,8% 92%,0 50%,10% 10%)}
@media(max-width:900px){.shop-hero .shop-wrap,.feature-flow,.compare-pin,.testimonial-line,.faq-grid{grid-template-columns:1fr}.shop-hero-art{height:450px}.gallery-item{width:72vw}.compare-stage{min-height:auto}.compare-pin{position:relative;top:auto;padding:85px 0}.compare-visual{height:500px}.shop-wrap{width:min(100% - 36px,700px)}}
@media(max-width:600px){.shop-hero .shop-wrap{padding:55px 0}.shop-hero-art{height:370px}.shop-hero-art img{height:340px}.shop-title{font-size:43px}.gallery-head{display:block}.gallery-item{width:84vw;height:400px}.feature-main{min-height:390px;padding:28px}.compare-visual{height:440px}.compare-phone{width:175px;height:300px}.compare-phone.a{left:0}.compare-phone.b{right:0}.compare-phone.c{left:27%}.quote-visual{height:330px}.shop-cta{padding:80px 0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}.shop-shape{opacity:1;transform:none;clip-path:none}}

/* ===== END VOLTIVA SHOP MOTION SYSTEM ===== */

/* ===== VOLTIVA AUTH / STATUS PAGES ===== */
.auth-page,.status-page{
  min-height:100vh; margin:0; color:var(--ink);
  background:
    radial-gradient(circle at 10% 15%, rgba(242,145,145,.28), transparent 28%),
    radial-gradient(circle at 90% 85%, rgba(109,59,59,.18), transparent 30%),
    linear-gradient(135deg,var(--bg),#fff 52%,var(--surface));
  position:relative; overflow-x:hidden;
}
.dark.auth-page,.dark.status-page{
  background:
    radial-gradient(circle at 15% 20%,rgba(242,145,145,.14),transparent 30%),
    radial-gradient(circle at 85% 80%,rgba(160,105,105,.12),transparent 32%),
    linear-gradient(135deg,#100b0c,#1b1214 52%,#0b0809);
}
.auth-topbar,.status-topbar{
  position:absolute; inset:0 0 auto 0; z-index:20; height:84px;
  display:flex; align-items:center; justify-content:space-between;
  padding:18px clamp(18px,4vw,55px);
}
.auth-controls,.status-controls{display:flex;align-items:center;gap:9px}
.auth-control,.status-control{
  width:42px;height:42px;border-radius:12px;border:1px solid var(--line);
  background:color-mix(in srgb,var(--bg) 76%,transparent);
  color:var(--ink);display:grid;place-items:center;font-weight:800;
  box-shadow:0 10px 30px rgba(29,16,16,.08);transition:.25s ease;
}
.auth-control:hover,.status-control:hover{transform:translateY(-3px);border-color:var(--accent)}
.auth-control.rtl-btn,.status-control.rtl-btn{width:auto;padding:0 13px;font-size:12px}
.auth-brand{
  display:inline-flex;align-items:center;gap:11px;font-family:"Space Grotesk",sans-serif;
  font-weight:800;letter-spacing:.09em;color:var(--ink);position:relative;z-index:2;
}
.auth-brand .brand-mark{width:42px;height:42px;border-radius:13px;background:var(--ink);color:var(--accent)}
.auth-stage{
  width:min(1120px,calc(100% - 34px)); min-height:100vh; margin:auto;
  display:grid; place-items:center; padding:105px 0 45px; position:relative;
}
.auth-shell{
  width:min(100%,1000px); min-height:600px; display:grid; grid-template-columns:1fr 1fr;
  position:relative; isolation:isolate;
  border:1px solid var(--line); border-radius:34px;
  background:color-mix(in srgb,var(--bg) 76%,transparent);
  box-shadow:0 35px 100px rgba(29,16,16,.16);
  overflow:hidden; backdrop-filter:blur(24px);
}
.auth-panel{padding:clamp(30px,5vw,68px);position:relative;display:flex;flex-direction:column;justify-content:center}
.auth-visual{
  background:linear-gradient(145deg,#241516,#5b3234 55%,#1a0f10);
  color:#fff;overflow:hidden;
}
.auth-visual:before,.auth-visual:after{
  content:"";position:absolute;border-radius:50%;pointer-events:none;
  border:1px solid rgba(255,255,255,.2);animation:authOrbit 10s linear infinite;
}
.auth-visual:before{width:440px;height:440px;right:-190px;top:-110px;box-shadow:0 0 100px rgba(242,145,145,.18)}
.auth-visual:after{width:260px;height:260px;left:-120px;bottom:-80px;animation-direction:reverse;animation-duration:7s}
.auth-visual-content{position:relative;z-index:2}
.auth-kicker{font:800 12px/1 "Space Grotesk";letter-spacing:.2em;text-transform:uppercase;color:#ffc0c0}
.auth-visual h2{font:800 clamp(42px,5vw,72px)/.93 "Space Grotesk";letter-spacing:-.06em;margin:17px 0}
.auth-visual p{font-size:16px;line-height:1.8;max-width:430px;color:rgba(255,255,255,.8)}
.auth-feature-list{display:grid;gap:12px;margin-top:28px}
.auth-feature{display:flex;align-items:center;gap:12px;font-weight:700}
.auth-feature i{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.1);color:#ffc0c0}
.auth-form-panel{background:color-mix(in srgb,var(--bg) 88%,transparent)}
.auth-form-panel h1{font:800 clamp(34px,4vw,52px)/1 "Space Grotesk";letter-spacing:-.045em;margin:0 0 10px}
.auth-subtitle{color:var(--muted);font-size:15px;margin:0 0 26px}
.auth-form{display:grid;gap:15px}
.auth-field{position:relative}
.auth-field label{display:block;font-size:13px;font-weight:800;margin:0 0 7px;color:var(--ink)}
.auth-input-wrap{position:relative}
.auth-input{
  width:100%;min-height:52px;padding:13px 45px 13px 15px;border:1px solid var(--line);
  border-radius:14px;background:color-mix(in srgb,var(--surface) 78%,transparent);
  color:var(--ink);outline:none;transition:.25s ease;
}
.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(109,59,59,.1);transform:translateY(-1px)}
.auth-input::placeholder{color:var(--muted);opacity:.72}
.auth-field-icon{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.auth-password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);width:35px;height:35px;background:none;color:var(--muted)}
.auth-input.has-toggle{padding-right:50px}
.auth-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.auth-check{display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:600}
.auth-check input{accent-color:var(--accent)}
.auth-link{color:var(--accent);font-weight:800}
.auth-submit{
  min-height:54px;border-radius:14px;background:var(--ink);color:var(--bg);
  font-weight:800;letter-spacing:.01em;position:relative;overflow:hidden;transition:.3s ease;
}
.auth-submit:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.22),transparent);transform:translateX(-120%);transition:.7s}
.auth-submit:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(29,16,16,.2)}
.auth-submit:hover:after{transform:translateX(120%)}
.auth-message{min-height:20px;font-size:13px;font-weight:700;margin:0;color:var(--accent)}
.auth-switch{text-align:center;margin:4px 0 0;color:var(--muted);font-size:14px}
.auth-switch a{color:var(--accent);font-weight:800}
.auth-blob{position:absolute;border-radius:50%;filter:blur(1px);opacity:.16;pointer-events:none}
.auth-blob.one{width:180px;height:180px;background:#f29191;left:5%;top:30%;animation:authFloat 6s ease-in-out infinite}
.auth-blob.two{width:110px;height:110px;background:#6d3b3b;right:7%;bottom:16%;animation:authFloat 5s ease-in-out infinite reverse}
.status-stage{
  width:min(100%,1100px);min-height:100vh;margin:auto;display:grid;place-items:center;
  padding:110px 25px 55px;position:relative;text-align:center;
}
.status-card{max-width:850px;position:relative}
.status-code{
  font:900 clamp(150px,27vw,330px)/.75 "Space Grotesk";letter-spacing:-.1em;
  margin:0;color:transparent;-webkit-text-stroke:1px color-mix(in srgb,var(--ink) 45%,transparent);
  text-shadow:0 25px 80px rgba(109,59,59,.15);animation:statusFloat 5s ease-in-out infinite;
}
.status-title{font:800 clamp(34px,6vw,72px)/1 "Space Grotesk";letter-spacing:-.05em;margin:18px 0 12px}
.status-copy{max-width:590px;margin:0 auto 26px;color:var(--muted);font-size:16px;line-height:1.8}
.status-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.status-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 20px;border-radius:13px;background:var(--ink);color:var(--bg);font-weight:800;transition:.25s}
.status-btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}
.status-btn:hover{transform:translateY(-3px)}
.status-dots{display:flex;justify-content:center;gap:8px;margin-top:32px}
.status-dots span{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:statusDot 1.4s ease-in-out infinite}
.status-dots span:nth-child(2){animation-delay:.15s}.status-dots span:nth-child(3){animation-delay:.3s}
.coming-ring{width:min(72vw,360px);aspect-ratio:1;margin:0 auto -30px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;position:relative}
.coming-ring:before,.coming-ring:after{content:"";position:absolute;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent)}
.coming-ring:before{inset:20px;animation:authOrbit 8s linear infinite}
.coming-ring:after{inset:48px;border-style:dashed;animation:authOrbit 12s linear infinite reverse}
.coming-core{font:800 clamp(26px,5vw,46px)/1 "Space Grotesk";letter-spacing:-.04em}
.countdown{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:24px 0}
.countdown-box{min-width:76px;padding:13px 12px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 65%,transparent)}
.countdown-box b{display:block;font:800 25px/1 "Space Grotesk"}.countdown-box span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.auth-page[dir="rtl"] .auth-field-icon,.status-page[dir="rtl"] .auth-field-icon{right:auto;left:15px}
.auth-page[dir="rtl"] .auth-input{padding-right:15px;padding-left:45px}
.auth-page[dir="rtl"] .auth-password-toggle{right:auto;left:9px}
@keyframes authFloat{50%{transform:translate3d(25px,-25px,0) scale(1.08)}}
@keyframes authOrbit{to{transform:rotate(360deg)}}
@keyframes statusFloat{50%{transform:translateY(-10px) rotate(-1deg)}}
@keyframes statusDot{50%{transform:translateY(-6px);opacity:.45}}
@media (max-width:800px){
 .auth-shell{grid-template-columns:1fr;min-height:auto;border-radius:27px}
 .auth-visual{min-height:310px}.auth-form-panel{min-height:560px}
 .auth-stage{padding-top:100px}
 .auth-topbar,.status-topbar{height:72px;padding:14px 18px}
 .auth-brand span:last-child{font-size:13px}
}
@media (max-width:520px){
 .auth-panel{padding:28px 21px}.auth-visual h2{font-size:42px}.auth-visual{min-height:330px}
 .auth-row{align-items:flex-start}.status-code{font-size:145px}.status-stage{padding-inline:16px}
 .status-title{font-size:38px}.coming-ring{width:280px}
}
@media (prefers-reduced-motion:reduce){
 .auth-visual:before,.auth-visual:after,.auth-blob,.status-code,.status-dots span,.coming-ring:before,.coming-ring:after{animation:none}
}

/* Auth/status theme + RTL integration */
html.dark .auth-page,html.dark .status-page{
  background:
    radial-gradient(circle at 15% 20%,rgba(255,255,255,.08),transparent 30%),
    radial-gradient(circle at 85% 80%,rgba(40,0,0,.2),transparent 32%),
    linear-gradient(135deg,#160c0d,#241315 52%,#0b0809);
}
html.dark .auth-shell{background:rgba(20,10,11,.76);border-color:rgba(255,255,255,.13)}
html.dark .auth-form-panel{background:rgba(20,10,11,.72)}
html.dark .auth-input{background:rgba(255,255,255,.07);color:#fff;border-color:rgba(255,255,255,.15)}
html.dark .auth-control,html.dark .status-control{background:rgba(20,10,11,.72);color:#fff;border-color:rgba(255,255,255,.14)}
html.dark .status-btn.secondary{color:#fff;border-color:rgba(255,255,255,.18)}
html.dark .status-code{-webkit-text-stroke-color:rgba(255,255,255,.42)}
html.dark .auth-brand{color:#fff}
html[dir="rtl"] .auth-field-icon{right:auto;left:15px}
html[dir="rtl"] .auth-input{padding-right:15px;padding-left:50px}
html[dir="rtl"] .auth-password-toggle{right:auto;left:9px}

/* ===== FINAL AUTH / STATUS VISIBILITY + RESPONSIVE FIX ===== */
/* These rules intentionally come last so the site's broad light/dark typography rules
   cannot make text disappear on the new auth/status pages. */
html:not(.dark) .auth-page,
html:not(.dark) .status-page{
  color:#190E0E !important;
  background:
    radial-gradient(circle at 8% 12%,rgba(125,48,61,.16),transparent 28%),
    radial-gradient(circle at 92% 86%,rgba(125,48,61,.12),transparent 30%),
    linear-gradient(135deg,#FBEFEF 0%,#FFF8F8 52%,#F0E0E0 100%) !important;
}

html.dark .auth-page,
html.dark .status-page{
  color:#F8EDED !important;
  background:
    radial-gradient(circle at 8% 12%,rgba(242,145,145,.14),transparent 28%),
    radial-gradient(circle at 92% 86%,rgba(242,145,145,.08),transparent 30%),
    linear-gradient(135deg,#100A0B 0%,#211214 55%,#0B0809 100%) !important;
}

/* Top controls + brand */
html:not(.dark) .auth-brand,
html:not(.dark) .auth-brand span,
html:not(.dark) .status-topbar .auth-brand,
html:not(.dark) .status-topbar .auth-brand span{
  color:#190E0E !important;
}
html.dark .auth-brand,
html.dark .auth-brand span,
html.dark .status-topbar .auth-brand,
html.dark .status-topbar .auth-brand span{
  color:#FFF4F4 !important;
}
html:not(.dark) .auth-control,
html:not(.dark) .status-control{
  color:#190E0E !important;
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(71,30,35,.22) !important;
}
html.dark .auth-control,
html.dark .status-control{
  color:#FFF4F4 !important;
  background:rgba(20,10,11,.82) !important;
  border-color:rgba(255,255,255,.18) !important;
}

/* Dark visual panel: ALL text stays light in both themes. */
.auth-visual,
.auth-visual-content,
.auth-visual h2,
.auth-visual p,
.auth-visual .auth-feature,
.auth-visual .auth-feature span,
.auth-visual .auth-kicker{
  color:#FFF7F7 !important;
}
.auth-visual{
  background:
    radial-gradient(circle at 78% 18%,rgba(242,145,145,.18),transparent 27%),
    linear-gradient(145deg,#241416 0%,#5B3234 52%,#160C0D 100%) !important;
}
.auth-visual h2{
  text-shadow:0 5px 25px rgba(0,0,0,.28);
}
.auth-visual p{
  color:rgba(255,247,247,.86) !important;
}
.auth-feature i{
  color:#FFD0D0 !important;
  background:rgba(255,255,255,.13) !important;
  border:1px solid rgba(255,255,255,.08);
}

/* Light form panel */
html:not(.dark) .auth-form-panel{
  background:rgba(255,249,249,.92) !important;
  color:#190E0E !important;
}
html:not(.dark) .auth-form-panel h1,
html:not(.dark) .auth-field label,
html:not(.dark) .auth-form-panel strong{
  color:#190E0E !important;
}
html:not(.dark) .auth-subtitle,
html:not(.dark) .auth-check,
html:not(.dark) .auth-switch{
  color:#5B3838 !important;
}
html:not(.dark) .auth-link,
html:not(.dark) .auth-switch a,
html:not(.dark) .auth-message{
  color:#6D3B3B !important;
}
html:not(.dark) .auth-input{
  color:#190E0E !important;
  background:#FFFDFD !important;
  border-color:rgba(55,25,28,.22) !important;
}
html:not(.dark) .auth-input::placeholder{
  color:#735B5B !important;
  opacity:1 !important;
}
html:not(.dark) .auth-field-icon,
html:not(.dark) .auth-password-toggle{
  color:#6D3B3B !important;
}

/* Dark form panel */
html.dark .auth-form-panel{
  background:rgba(18,10,11,.94) !important;
  color:#FFF4F4 !important;
}
html.dark .auth-form-panel h1,
html.dark .auth-field label,
html.dark .auth-form-panel strong{
  color:#FFF4F4 !important;
}
html.dark .auth-subtitle,
html.dark .auth-check,
html.dark .auth-switch{
  color:#DABFC0 !important;
}
html.dark .auth-link,
html.dark .auth-switch a,
html.dark .auth-message{
  color:#FFB4B4 !important;
}
html.dark .auth-input{
  color:#FFF !important;
  background:rgba(255,255,255,.075) !important;
  border-color:rgba(255,255,255,.2) !important;
}
html.dark .auth-input::placeholder{
  color:#C6A9AA !important;
  opacity:1 !important;
}
html.dark .auth-field-icon,
html.dark .auth-password-toggle{
  color:#FFC0C0 !important;
}

/* Submit buttons: prevent the global light/dark button rule from hiding the label. */
.auth-submit,
html:not(.dark) .auth-submit,
html.dark .auth-submit{
  background:#190E0E !important;
  color:#FFF5F5 !important;
  border:1px solid rgba(255,255,255,.08) !important;
  text-shadow:none !important;
}
.auth-submit i,
html:not(.dark) .auth-submit i,
html.dark .auth-submit i{
  color:#FFF5F5 !important;
}

/* Status pages */
html:not(.dark) .status-title,
html:not(.dark) .status-code,
html:not(.dark) .coming-core{
  color:#190E0E !important;
}
html:not(.dark) .status-code{
  -webkit-text-stroke:2px #6D3B3B !important;
  text-shadow:0 18px 50px rgba(80,35,40,.16) !important;
}
html:not(.dark) .status-copy{
  color:#5B3838 !important;
}
html:not(.dark) .status-btn{
  background:#190E0E !important;
  color:#FFF5F5 !important;
}
html:not(.dark) .status-btn i{
  color:#FFF5F5 !important;
}
html:not(.dark) .status-btn.secondary{
  background:rgba(255,255,255,.58) !important;
  color:#190E0E !important;
  border-color:rgba(29,16,16,.22) !important;
}
html:not(.dark) .status-btn.secondary i{
  color:#190E0E !important;
}
html:not(.dark) .countdown-box{
  background:rgba(255,255,255,.72) !important;
  border-color:rgba(29,16,16,.16) !important;
}
html:not(.dark) .countdown-box b{color:#190E0E !important}
html:not(.dark) .countdown-box span{color:#5B3838 !important}
html:not(.dark) .coming-ring{border-color:rgba(80,35,40,.28) !important}

html.dark .status-title,
html.dark .status-code,
html.dark .coming-core{
  color:#FFF4F4 !important;
}
html.dark .status-code{
  -webkit-text-stroke:2px rgba(255,190,190,.78) !important;
  text-shadow:0 18px 50px rgba(242,145,145,.12) !important;
}
html.dark .status-copy{color:#DABFC0 !important}
html.dark .status-btn{background:#F6EDED !important;color:#190E0E !important}
html.dark .status-btn i{color:#190E0E !important}
html.dark .status-btn.secondary{background:rgba(255,255,255,.04) !important;color:#FFF4F4 !important;border-color:rgba(255,255,255,.22) !important}
html.dark .status-btn.secondary i{color:#FFF4F4 !important}
html.dark .countdown-box{background:rgba(255,255,255,.055) !important;border-color:rgba(255,255,255,.16) !important}
html.dark .countdown-box b{color:#FFF4F4 !important}
html.dark .countdown-box span{color:#DABFC0 !important}
html.dark .coming-ring{border-color:rgba(255,190,190,.24) !important}

/* RTL: the dir attribute lives on <html>, not on .auth-page/.status-page. */
html[dir="rtl"] .auth-topbar,
html[dir="rtl"] .status-topbar{
  direction:ltr;
}
html[dir="rtl"] .auth-shell,
html[dir="rtl"] .auth-stage,
html[dir="rtl"] .status-stage{
  direction:rtl;
}
html[dir="rtl"] .auth-form,
html[dir="rtl"] .auth-form-panel,
html[dir="rtl"] .auth-visual-content{
  text-align:right;
}
html[dir="rtl"] .auth-switch,
html[dir="rtl"] .status-actions,
html[dir="rtl"] .countdown{
  direction:rtl;
}
html[dir="rtl"] .auth-row{flex-direction:row-reverse}
html[dir="rtl"] .auth-submit{flex-direction:row-reverse}
html[dir="rtl"] .auth-password-toggle{right:auto !important;left:9px !important}
html[dir="rtl"] .auth-field-icon{right:auto !important;left:15px !important}
html[dir="rtl"] .auth-input{padding-right:15px !important;padding-left:50px !important}

/* Left/right reveal animations for auth panels. */
.auth-visual{animation:authPanelFromLeft .8s cubic-bezier(.2,.8,.2,1) both}
.auth-form-panel{animation:authPanelFromRight .8s .08s cubic-bezier(.2,.8,.2,1) both}
html[dir="rtl"] .auth-visual{animation-name:authPanelFromRight}
html[dir="rtl"] .auth-form-panel{animation-name:authPanelFromLeft}
.auth-visual-content > *{animation:authContentRise .7s .2s both}
.auth-visual-content > *:nth-child(2){animation-delay:.28s}
.auth-visual-content > *:nth-child(3){animation-delay:.36s}
.auth-feature:nth-child(1){animation:authFeatureIn .55s .45s both}
.auth-feature:nth-child(2){animation:authFeatureIn .55s .55s both}
.auth-feature:nth-child(3){animation:authFeatureIn .55s .65s both}
@keyframes authPanelFromLeft{from{opacity:0;transform:translateX(-55px)}to{opacity:1;transform:translateX(0)}}
@keyframes authPanelFromRight{from{opacity:0;transform:translateX(55px)}to{opacity:1;transform:translateX(0)}}
@keyframes authContentRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes authFeatureIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}
html[dir="rtl"] .auth-feature:nth-child(1),html[dir="rtl"] .auth-feature:nth-child(2),html[dir="rtl"] .auth-feature:nth-child(3){animation-name:authFeatureInRtl}
@keyframes authFeatureInRtl{from{opacity:0;transform:translateX(-24px)}to{opacity:1;transform:translateX(0)}}

@media(max-width:800px){
  .auth-shell{width:min(100%,680px)}
  .auth-visual{order:1}
  .auth-form-panel{order:2}
  .auth-visual h2{font-size:clamp(40px,10vw,58px)}
  .auth-visual p{font-size:15px;max-width:100%}
  .auth-panel{padding:30px 24px}
}
@media(max-width:520px){
  .auth-stage{width:calc(100% - 20px);padding:88px 0 25px}
  .auth-shell{border-radius:24px}
  .auth-topbar,.status-topbar{padding:13px 12px}
  .auth-control,.status-control{height:38px;min-width:38px}
  .auth-control.rtl-btn,.status-control.rtl-btn{padding:0 10px}
  .auth-brand .brand-mark{width:38px;height:38px}
  .auth-panel{padding:26px 20px}
  .auth-visual{min-height:360px}
  .auth-form-panel{min-height:560px}
  .auth-row{font-size:12px}
  .status-stage{padding:92px 12px 35px}
  .status-title{font-size:34px}
  .status-copy{font-size:15px}
  .status-code{font-size:clamp(120px,42vw,190px)}
  .countdown-box{min-width:68px}
}
@media(prefers-reduced-motion:reduce){
  .auth-visual,.auth-form-panel,.auth-visual-content > *,
  .auth-feature:nth-child(1),.auth-feature:nth-child(2),.auth-feature:nth-child(3){animation:none !important}
}
/* ===== END FINAL AUTH / STATUS VISIBILITY FIX ===== */


/* =========================================================
   HOME 2 — SECTION 02 + 03 RESTRUCTURE V2
   Full-width flow, no product/cart controls, no overlapping
   content, and minimum 14px readable UI/body text.
   ========================================================= */
.h2-restructured-s2,.h2-restructured-s3{position:relative!important;margin:0!important;padding:0!important;overflow:hidden!important;isolation:isolate}
.h2-restructured-s2{background:#f8eeee;color:#211414}
.h2-restructured-s3{background:#171010;color:#fff5f5}
.h2r-s2-shell,.h2r-s3-shell{position:relative;z-index:2;width:100%;margin:0}
.h2r-s2-header,.h2r-s3-header{width:min(1240px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:280px minmax(0,1fr);gap:60px;align-items:end;padding:78px 0 48px;border-bottom:1px solid rgba(33,20,20,.16)}
.h2r-section-marker{display:flex;align-items:center;gap:14px;align-self:start;padding-top:9px}
.h2r-section-marker span{display:grid;place-items:center;width:46px;height:46px;border:1px solid currentColor;border-radius:50%;font:700 14px/1 "Space Grotesk",sans-serif}
.h2r-section-marker b{font:800 14px/1.2 "Space Grotesk",sans-serif;letter-spacing:.14em}
.h2r-s2-title>span,.h2r-s3-kicker{display:block;font:800 14px/1.3 "Space Grotesk",sans-serif;letter-spacing:.16em;color:#8d4d50}
.h2r-s2-title h2,.h2r-s3-header h2{margin:12px 0 15px;font:700 clamp(42px,5.6vw,76px)/.95 "Space Grotesk",sans-serif;letter-spacing:-.055em}
.h2r-s2-title h2 em,.h2r-s3-header h2 em,.h2r-s3-copy h3 em{font-style:normal;color:#a85d61}
.h2r-s2-title p,.h2r-s3-header p{max-width:690px;margin:0;font-size:16px;line-height:1.75;color:#604747}
.h2r-s2-stage{width:min(1240px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);align-items:center;gap:80px;padding:58px 0 54px}
.h2r-s2-visual{position:relative;min-height:570px;display:flex;align-items:center;justify-content:center}
.h2r-s2-image{width:min(520px,100%);height:510px;overflow:hidden;clip-path:polygon(5% 0,96% 5%,100% 88%,82% 100%,3% 93%,0 12%);background:#2a1718;box-shadow:0 28px 70px rgba(38,20,20,.16)}
.h2r-s2-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.75,.2,1),filter 1s ease}
.h2r-s2-visual:hover .h2r-s2-image img{transform:scale(1.08) rotate(-1deg);filter:saturate(1.08)}
.h2r-s2-orbit{position:absolute;border:1px solid rgba(141,77,80,.35);border-radius:50%;pointer-events:none;animation:h2rOrbit 12s linear infinite}
.h2r-s2-orbit.orbit-one{width:440px;height:230px;transform:rotate(24deg)}
.h2r-s2-orbit.orbit-two{width:570px;height:330px;transform:rotate(-22deg);opacity:.55;animation-duration:17s;animation-direction:reverse}
@keyframes h2rOrbit{to{transform:rotate(384deg)}}
.h2r-s2-stamp{position:absolute;right:0;bottom:34px;display:flex;align-items:center;gap:13px;padding:14px 17px;background:#211414;color:#fff5f5;clip-path:polygon(0 0,94% 0,100% 78%,88% 100%,0 86%);box-shadow:0 18px 45px rgba(33,20,20,.2)}
.h2r-s2-stamp strong{font:800 28px/1 "Space Grotesk",sans-serif}.h2r-s2-stamp span{font:800 14px/1.15 "Space Grotesk",sans-serif;letter-spacing:.12em}
.h2r-s2-image-label{position:absolute;left:0;bottom:23px;font:800 14px/1.2 "Space Grotesk",sans-serif;letter-spacing:.13em;color:#5e4141;background:#f8eeee;padding:8px 11px}
.h2r-s2-list{display:grid;border-top:1px solid rgba(33,20,20,.16)}
.h2r-s2-row{display:grid;grid-template-columns:54px minmax(0,1fr) 54px;gap:22px;align-items:start;padding:30px 0;border-bottom:1px solid rgba(33,20,20,.16);transition:transform .45s ease,background .45s ease}
.h2r-s2-row:hover{transform:translateX(10px);background:rgba(255,255,255,.34)}
.h2r-s2-index{font:800 16px/1 "Space Grotesk",sans-serif;color:#9b5659;padding-top:5px}
.h2r-s2-copy>span,.h2r-s3-copy>span{display:block;font:800 14px/1.25 "Space Grotesk",sans-serif;letter-spacing:.15em;color:#985356}
.h2r-s2-copy h3{margin:8px 0 9px;font:700 clamp(27px,3vw,42px)/1 "Space Grotesk",sans-serif;letter-spacing:-.04em}
.h2r-s2-copy p{margin:0 0 13px;max-width:570px;font-size:15px;line-height:1.7;color:#604747}
.h2r-s2-copy a,.h2r-s3-copy a{display:inline-flex;align-items:center;gap:10px;font:800 14px/1.3 "Space Grotesk",sans-serif;color:#321d1e;border-bottom:1px solid currentColor;padding-bottom:7px}
.h2r-s2-copy a i,.h2r-s3-copy a i{transition:transform .3s ease}.h2r-s2-copy a:hover i,.h2r-s3-copy a:hover i{transform:translateX(7px)}
.h2r-s2-mark{width:46px;height:46px;border:1px solid rgba(141,77,80,.38);border-radius:50%;display:grid;place-items:center;color:#9b5659;font-size:17px;transition:transform .4s ease,background .4s ease}
.h2r-s2-row:hover .h2r-s2-mark{transform:rotate(12deg) scale(1.08);background:#ead4d4}
.h2r-s2-marquee{width:100%;overflow:hidden;display:flex;gap:30px;align-items:center;white-space:nowrap;border-top:1px solid rgba(33,20,20,.16);border-bottom:1px solid rgba(33,20,20,.16);padding:15px 0;font:800 14px/1 "Space Grotesk",sans-serif;letter-spacing:.15em;color:#795252;animation:h2rMarquee 20s linear infinite}
.h2r-s2-marquee span,.h2r-s2-marquee i{flex:0 0 auto}.h2r-s2-marquee i{font-style:normal;color:#a85d61}@keyframes h2rMarquee{to{transform:translateX(-35%)}}

.h2r-s3-header{border-bottom-color:rgba(255,245,245,.16)}
.h2r-s3-header .h2r-section-marker{color:#fff5f5}.h2r-s3-header .h2r-section-marker span{color:#d99696}.h2r-s3-header h2{color:#fff5f5}.h2r-s3-header p{color:#d8bcbc}
.h2r-s3-flow{width:100%;border-bottom:1px solid rgba(255,245,245,.16)}
.h2r-s3-scene{width:min(1240px,calc(100% - 48px));margin:0 auto;min-height:490px;display:grid;grid-template-columns:72px minmax(360px,1fr) minmax(320px,.82fr);gap:34px;align-items:center;padding:58px 0;border-bottom:1px solid rgba(255,245,245,.16);position:relative}
.h2r-s3-scene:last-child{border-bottom:0}
.h2r-s3-reverse{grid-template-columns:72px minmax(320px,.82fr) minmax(360px,1fr)}
.h2r-s3-reverse .h2r-s3-media{grid-column:3;grid-row:1}.h2r-s3-reverse .h2r-s3-copy{grid-column:2;grid-row:1}
.h2r-s3-number{align-self:stretch;display:flex;flex-direction:column;align-items:center;gap:15px;padding-top:5px}
.h2r-s3-number span{font:800 17px/1 "Space Grotesk",sans-serif;color:#dc9999}.h2r-s3-number i{width:1px;flex:1;background:linear-gradient(#d48d8d,transparent);display:block}
.h2r-s3-media{height:385px;position:relative;overflow:hidden;background:#261718;clip-path:polygon(0 7%,94% 0,100% 90%,76% 100%,5% 94%);box-shadow:0 24px 65px rgba(0,0,0,.22)}
.h2r-s3-media:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 48%,rgba(214,142,142,.25));pointer-events:none}
.h2r-s3-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1s cubic-bezier(.2,.75,.2,1),filter 1s ease}
.h2r-s3-scene:hover .h2r-s3-media img{transform:scale(1.13) rotate(1deg);filter:saturate(1.08)}
.h2r-s3-media span{position:absolute;left:20px;bottom:20px;z-index:2;padding:8px 11px;background:rgba(23,16,16,.86);font:800 14px/1.2 "Space Grotesk",sans-serif;letter-spacing:.13em;color:#fff5f5}
.h2r-s3-copy{max-width:500px}.h2r-s3-copy>span{color:#dc9999}.h2r-s3-copy h3{margin:12px 0 16px;font:700 clamp(40px,5vw,66px)/.95 "Space Grotesk",sans-serif;letter-spacing:-.05em;color:#fff5f5}.h2r-s3-copy h3 em{color:#e2a1a1}
.h2r-s3-copy p{margin:0 0 20px;font-size:16px;line-height:1.75;color:#d5b9b9;max-width:480px}.h2r-s3-copy a{color:#fff5f5;border-color:rgba(255,245,245,.45)}
.h2r-s3-footer{width:min(1240px,calc(100% - 48px));margin:0 auto;display:flex;justify-content:space-between;gap:24px;padding:20px 0;font:800 14px/1.3 "Space Grotesk",sans-serif;letter-spacing:.12em;color:#c7a4a4}.h2r-s3-footer b{color:#f1dada}
.h2r-s2-bg,.h2r-s3-bg{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.h2r-s2-bg span{position:absolute;width:420px;height:420px;border:1px solid rgba(141,77,80,.17);border-radius:50%;right:-130px;top:-160px}.h2r-s2-bg i{position:absolute;width:250px;height:250px;border:1px solid rgba(141,77,80,.12);border-radius:50%;left:-100px;bottom:-120px}.h2r-s2-bg b{position:absolute;width:10px;height:10px;border-radius:50%;background:#b96d70;right:16%;top:30%;box-shadow:0 0 0 18px rgba(185,109,112,.07)}
.h2r-s3-bg .s3-glow-a,.h2r-s3-bg .s3-glow-b{position:absolute;border-radius:50%;filter:blur(10px);background:#9b5659;opacity:.18}.h2r-s3-bg .s3-glow-a{width:420px;height:420px;right:-160px;top:100px}.h2r-s3-bg .s3-glow-b{width:300px;height:300px;left:-140px;bottom:60px}.h2r-s3-bg .s3-line{position:absolute;width:75%;height:1px;background:linear-gradient(90deg,transparent,rgba(226,161,161,.22),transparent);top:46%;left:12%;transform:rotate(-7deg)}
.h2-restructured-s2 .cv-reveal,.h2-restructured-s3 .cv-reveal{opacity:0;transform:translateY(35px);filter:blur(5px);transition:opacity .75s ease,transform .9s cubic-bezier(.2,.75,.2,1),filter .75s ease}.h2-restructured-s2 .cv-reveal.cv-in,.h2-restructured-s3 .cv-reveal.cv-in{opacity:1;transform:none;filter:none}

html.dark .h2-restructured-s2{background:#120c0d;color:#fff4f4}.dark .h2r-s2-header{border-color:rgba(255,244,244,.15)}html.dark .h2r-s2-title>span,html.dark .h2r-s2-copy>span,html.dark .h2r-s3-kicker{color:#e0a0a0}html.dark .h2r-s2-title h2,html.dark .h2r-s2-title h2 em,html.dark .h2r-s2-copy h3{color:#fff4f4}html.dark .h2r-s2-title p,html.dark .h2r-s2-copy p{color:#d6bbbb}html.dark .h2r-s2-list{border-color:rgba(255,244,244,.15)}html.dark .h2r-s2-row{border-color:rgba(255,244,244,.15)}html.dark .h2r-s2-row:hover{background:rgba(255,255,255,.045)}html.dark .h2r-s2-copy a{color:#fff4f4}html.dark .h2r-s2-mark{border-color:rgba(224,160,160,.42);color:#e0a0a0}html.dark .h2r-s2-row:hover .h2r-s2-mark{background:#2a1819}html.dark .h2r-s2-image-label{background:#120c0d;color:#e5caca}html.dark .h2r-s2-stamp{background:#f0dada;color:#211414}html.dark .h2r-s2-marquee{border-color:rgba(255,244,244,.15);color:#d3b5b5}
html.light .h2-restructured-s3{background:#2b191a;color:#fff5f5}html.dark .h2-restructured-s3{background:#0f090a;color:#fff5f5}

/* Keep every visible textual element in these redesigned sections at 14px or larger. */
.h2-restructured-s2 :is(p,a,span,b,strong,small,label,button),.h2-restructured-s3 :is(p,a,span,b,strong,small,label,button){font-size:max(14px,1em)}
.h2-restructured-s2 .h2r-s2-index,.h2-restructured-s2 .h2r-s2-mark,.h2-restructured-s3 .h2r-s3-number span{font-size:16px}

@media(max-width:900px){
 .h2r-s2-header,.h2r-s3-header{grid-template-columns:1fr;gap:24px;padding:56px 0 34px}.h2r-s2-stage{grid-template-columns:1fr;gap:34px;padding:38px 0}.h2r-s2-visual{min-height:470px}.h2r-s2-image{height:430px}.h2r-s2-list{border-top:0}.h2r-s3-scene,.h2r-s3-reverse{grid-template-columns:48px minmax(0,1fr);gap:18px;min-height:0;padding:42px 0}.h2r-s3-media,.h2r-s3-reverse .h2r-s3-media{grid-column:2;grid-row:auto;height:330px}.h2r-s3-copy,.h2r-s3-reverse .h2r-s3-copy{grid-column:2;grid-row:auto;max-width:680px}.h2r-s3-footer{flex-wrap:wrap}
}
@media(max-width:640px){
 .h2r-s2-header,.h2r-s3-header,.h2r-s2-stage,.h2r-s3-scene,.h2r-s3-footer{width:calc(100% - 28px)}
 .h2r-s2-header,.h2r-s3-header{padding:42px 0 28px}.h2r-section-marker{gap:10px}.h2r-section-marker span{width:40px;height:40px}.h2r-section-marker b{font-size:14px}.h2r-s2-title h2,.h2r-s3-header h2{font-size:42px}.h2r-s2-title p,.h2r-s3-header p{font-size:15px;line-height:1.65}.h2r-s2-stage{padding:30px 0}.h2r-s2-visual{min-height:330px}.h2r-s2-image{height:310px;clip-path:polygon(3% 0,96% 4%,100% 90%,80% 100%,3% 94%,0 10%)}.h2r-s2-orbit.orbit-one{width:270px;height:150px}.h2r-s2-orbit.orbit-two{width:350px;height:210px}.h2r-s2-stamp{right:-2px;bottom:8px;padding:11px 13px}.h2r-s2-stamp strong{font-size:24px}.h2r-s2-stamp span,.h2r-s2-image-label{font-size:14px}.h2r-s2-image-label{left:0;bottom:5px}.h2r-s2-row{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:24px 0}.h2r-s2-mark{display:none}.h2r-s2-copy h3{font-size:29px}.h2r-s2-copy p{font-size:15px;line-height:1.65}.h2r-s2-copy a{font-size:14px}.h2r-s2-marquee{font-size:14px;gap:20px}.h2r-s3-scene,.h2r-s3-reverse{grid-template-columns:30px minmax(0,1fr);gap:10px;padding:30px 0}.h2r-s3-media,.h2r-s3-reverse .h2r-s3-media{height:245px}.h2r-s3-copy h3{font-size:43px;margin:12px 0}.h2r-s3-copy p{font-size:15px;line-height:1.65}.h2r-s3-media span{font-size:14px}.h2r-s3-footer{font-size:14px;padding:17px 0}.h2r-s3-footer span,.h2r-s3-footer b{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.h2r-s2-orbit,.h2r-s2-marquee{animation:none!important}.h2-restructured-s2 .cv-reveal,.h2-restructured-s3 .cv-reveal{opacity:1!important;transform:none!important;filter:none!important}}


/* =========================================================
   HOME 2 — SECTION 03 FINAL LIGHT-MODE CONTRAST FIX
   Section 03 must never use dark-on-dark text in Light Mode.
   ========================================================= */
html.light .h2-restructured-s3{
  background:#F9EEEE !important;
  color:#1B1111 !important;
}
html.light .h2-restructured-s3 .h2r-s3-header,
html.light .h2-restructured-s3 .h2r-s3-scene,
html.light .h2-restructured-s3 .h2r-s3-flow{
  border-color:rgba(45,22,22,.18) !important;
}
html.light .h2-restructured-s3 .h2r-section-marker,
html.light .h2-restructured-s3 .h2r-section-marker b,
html.light .h2-restructured-s3 .h2r-s3-header h2,
html.light .h2-restructured-s3 .h2r-s3-copy h3,
html.light .h2-restructured-s3 .h2r-s3-copy h3 em{
  color:#1B1111 !important;
  text-shadow:none !important;
}
html.light .h2-restructured-s3 .h2r-section-marker span,
html.light .h2-restructured-s3 .h2r-s3-kicker,
html.light .h2-restructured-s3 .h2r-s3-copy>span,
html.light .h2-restructured-s3 .h2r-s3-number span{
  color:#8A4248 !important;
}
html.light .h2-restructured-s3 .h2r-s3-header p,
html.light .h2-restructured-s3 .h2r-s3-copy p,
html.light .h2-restructured-s3 .h2r-s3-footer{
  color:#513030 !important;
}
html.light .h2-restructured-s3 .h2r-s3-copy a{
  color:#241616 !important;
  border-color:rgba(36,22,22,.45) !important;
}
html.light .h2-restructured-s3 .h2r-s3-media span{
  background:rgba(255,248,248,.96) !important;
  color:#241616 !important;
}
html.light .h2-restructured-s3 .h2r-s3-number i{
  background:linear-gradient(#9A5559,transparent) !important;
}
html.light .h2-restructured-s3 .h2r-s3-bg .s3-line{
  background:linear-gradient(90deg,transparent,rgba(111,55,61,.24),transparent) !important;
}
html.light .h2-restructured-s3 .h2r-s3-bg .s3-glow-a,
html.light .h2-restructured-s3 .h2r-s3-bg .s3-glow-b{
  background:#B86D6D !important;
  opacity:.10 !important;
}

/* Keep Section 03 readable at every viewport. */
.h2-restructured-s3 :is(p,a,span,b,strong,small,label,button){
  font-size:max(14px,1em);
}


/* =========================================================
   VOLTIVA CASES V2 — COMPLETE RESTRUCTURE
   Scoped only to .cases-v2 / .shop-page--cases
   ========================================================= */
.shop-page--cases .cases-v2{
  --cv2-bg:#f8eeee;--cv2-ink:#170d0e;--cv2-muted:#604c4d;--cv2-accent:#b85f63;
  --cv2-panel:#efe0e0;--cv2-line:rgba(23,13,14,.16);
  background:var(--cv2-bg);color:var(--cv2-ink);overflow:hidden;
}
.shop-page--cases .cases-v2 *{box-sizing:border-box}
.shop-page--cases .cases-v2 section{margin:0;border:0}
.shop-page--cases .cases-v2 p,
.shop-page--cases .cases-v2 a,
.shop-page--cases .cases-v2 button,
.shop-page--cases .cases-v2 span,
.shop-page--cases .cases-v2 small,
.shop-page--cases .cases-v2 summary{font-size:max(14px,1em)}
.shop-page--cases .cases-v2 p{line-height:1.75}
.shop-page--cases .cases-v2 h1,
.shop-page--cases .cases-v2 h2,
.shop-page--cases .cases-v2 h3,
.shop-page--cases .cases-v2 p{margin-top:0}
.shop-page--cases .cases-v2 h1,
.shop-page--cases .cases-v2 h2{letter-spacing:-.055em}
.shop-page--cases .cases-eyebrow{
  display:inline-block;color:#914b50;font:800 14px/1.2 "Space Grotesk",sans-serif!important;
  letter-spacing:.16em;text-transform:uppercase
}
.shop-page--cases .cases-v2 h1{font:700 clamp(48px,7vw,96px)/.92 "Space Grotesk",sans-serif;margin:18px 0 28px}
.shop-page--cases .cases-v2 h2{font:700 clamp(42px,6vw,78px)/.94 "Space Grotesk",sans-serif;margin:16px 0 24px}
.shop-page--cases .cases-v2 h3{font:700 25px/1.1 "Space Grotesk",sans-serif}
.shop-page--cases .cases-v2 em{font-style:normal;color:var(--cv2-accent)}
.shop-page--cases .cases-v2 .cases-reveal{opacity:1;transform:none}
.shop-page--cases .cases-v2 .cases-reveal-child{opacity:1;transform:none}
.shop-page--cases .cases-v2-hero{
  min-height:calc(100vh - 78px);background:
  radial-gradient(circle at 82% 32%,rgba(184,95,99,.23),transparent 28%),var(--cv2-bg);
  position:relative;display:flex;flex-direction:column;justify-content:center
}
.shop-page--cases .cases-hero-grid{width:min(1280px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:30px;padding:72px 0 30px}
.shop-page--cases .cases-hero-copy{max-width:650px}
.shop-page--cases .cases-hero-copy>p{max-width:590px;color:var(--cv2-muted);font-size:18px!important}
.shop-page--cases .cases-actions{display:flex;align-items:center;gap:25px;margin-top:32px}
.shop-page--cases .cases-btn{
  display:inline-flex;align-items:center;gap:12px;padding:13px 19px;border-radius:12px;
  background:var(--cv2-ink);color:#fff!important;text-decoration:none;font:800 14px/1.2 "Inter",sans-serif!important;
  transition:transform .3s,box-shadow .3s
}
.shop-page--cases .cases-btn:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(23,13,14,.22)}
.shop-page--cases .cases-note{font:800 14px/1.2 "Space Grotesk",sans-serif!important;letter-spacing:.13em;color:var(--cv2-muted)}
.shop-page--cases .cases-hero-visual{height:610px;position:relative;display:grid;place-items:center}
.shop-page--cases .cases-hero-visual img{width:min(500px,72%);height:570px;object-fit:cover;transform:rotate(4deg);clip-path:polygon(5% 2%,94% 0,100% 87%,77% 100%,3% 94%,0 14%);filter:saturate(.95);box-shadow:25px 35px 70px rgba(35,17,18,.2);position:relative;z-index:2}
.shop-page--cases .cases-ring{position:absolute;border:1px solid rgba(145,75,80,.4);border-radius:50%;animation:cv2Orbit 12s linear infinite}
.shop-page--cases .ring-a{width:480px;height:480px}.shop-page--cases .ring-b{width:260px;height:260px;border-style:dashed;animation-duration:8s;animation-direction:reverse}
.shop-page--cases .cases-float-label{position:absolute;z-index:3;right:5%;bottom:12%;background:var(--cv2-ink);color:#fff;padding:10px 14px;font:800 14px/1 "Space Grotesk",sans-serif!important;letter-spacing:.1em}
.shop-page--cases .cases-vertical{position:absolute;left:0;top:45%;writing-mode:vertical-rl;color:var(--cv2-muted);font:800 14px/1 "Space Grotesk",sans-serif!important;letter-spacing:.14em}
.shop-page--cases .cases-marquee{overflow:hidden;border-top:1px solid var(--cv2-line);border-bottom:1px solid var(--cv2-line);white-space:nowrap;padding:18px 0}
.shop-page--cases .cases-marquee span{display:inline-block;font:800 14px/1 "Space Grotesk",sans-serif!important;letter-spacing:.2em;color:var(--cv2-muted);animation:cv2Marquee 22s linear infinite}
.shop-page--cases .cases-v2-story{display:grid;grid-template-columns:220px 1fr;gap:50px;background:var(--cv2-bg);padding:100px max(32px,calc((100% - 1280px)/2))}
.shop-page--cases .cases-section-index{display:flex;align-items:flex-start;gap:15px}
.shop-page--cases .cases-section-index b{font:700 18px/1 "Space Grotesk",sans-serif!important;color:var(--cv2-accent)}
.shop-page--cases .cases-section-index span{font:800 14px/1.2 "Space Grotesk",sans-serif!important;letter-spacing:.14em;color:var(--cv2-muted)}
.shop-page--cases .cases-section-head{max-width:850px}
.shop-page--cases .cases-section-head>p{max-width:720px;color:var(--cv2-muted);font-size:17px!important}
.shop-page--cases .cases-feature-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--cv2-line);margin-top:55px}
.shop-page--cases .cases-feature{padding:34px 28px 38px;border-right:1px solid var(--cv2-line);position:relative;overflow:hidden;transition:transform .4s,background .4s}
.shop-page--cases .cases-feature:last-child{border-right:0}
.shop-page--cases .cases-feature:hover{transform:translateY(-8px);background:rgba(184,95,99,.08)}
.shop-page--cases .cases-feature i{font-size:28px;color:var(--cv2-accent);display:block;margin:30px 0 20px}
.shop-page--cases .cases-feature h3{margin:0 0 12px}
.shop-page--cases .cases-feature p{color:var(--cv2-muted);margin:0}
.shop-page--cases .cases-feature-num{position:absolute;right:18px;top:15px;font:800 14px/1 "Space Grotesk";color:var(--cv2-accent)}
.shop-page--cases .cases-v2-gallery{background:#1b1011;color:#fff;padding:100px 0 0}
.shop-page--cases .cases-gallery-intro{width:min(1280px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:220px 1fr;gap:50px;padding-bottom:65px}
.shop-page--cases .cases-v2-gallery .cases-section-index span,
.shop-page--cases .cases-v2-gallery .cases-eyebrow{color:#efaaa9}
.shop-page--cases .cases-v2-gallery h2{max-width:850px}
.shop-page--cases .cases-v2-gallery p{color:#dbc4c5;max-width:700px;font-size:17px!important}
.shop-page--cases .cases-gallery-rail{display:grid;grid-template-columns:repeat(3,1fr);width:100%;border-top:1px solid rgba(255,255,255,.15)}
.shop-page--cases .cases-product{min-height:650px;padding:28px 28px 45px;border-right:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column;justify-content:space-between;transition:background .45s,transform .45s}
.shop-page--cases .cases-product:last-child{border-right:0}
.shop-page--cases .cases-product:hover{background:#271719}
.shop-page--cases .cases-product-image{height:440px;position:relative;overflow:hidden;clip-path:polygon(0 5%,92% 0,100% 91%,78% 100%,4% 95%);background:#281719}
.shop-page--cases .cases-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s;filter:saturate(.9)}
.shop-page--cases .cases-product:hover .cases-product-image img{transform:scale(1.08) rotate(2deg)}
.shop-page--cases .cases-product-image>span{position:absolute;left:18px;top:18px;background:#fff;color:#1b1011;padding:7px 9px;font:800 14px/1 "Space Grotesk"!important}
.shop-page--cases .cases-product>div:last-child{padding-top:24px}
.shop-page--cases .cases-product-type{color:#efaaa9;font:800 14px/1.2 "Space Grotesk"!important;letter-spacing:.15em}
.shop-page--cases .cases-product h3{font-size:32px;margin:9px 0}
.shop-page--cases .cases-product p{color:#dbc4c5;margin:0 0 20px}
.shop-page--cases .cases-product .add-cart{color:#fff;border-color:rgba(255,255,255,.6)}
.shop-page--cases .cases-v2-motion{background:#120b0c;color:#fff;min-height:100vh;position:relative;overflow:hidden}
.shop-page--cases .cases-motion-bg{position:absolute;inset:0;background:radial-gradient(circle at 75% 50%,rgba(184,95,99,.3),transparent 24%),radial-gradient(circle at 15% 80%,rgba(184,95,99,.16),transparent 25%)}
.shop-page--cases .cases-motion-content{position:relative;z-index:2;min-height:100vh;width:min(1280px,calc(100% - 64px));margin:auto;display:grid;grid-template-columns:220px .9fr 1.1fr;gap:45px;align-items:center}
.shop-page--cases .cases-v2-motion .cases-section-index span,.shop-page--cases .cases-v2-motion .cases-eyebrow{color:#efaaa9}
.shop-page--cases .cases-motion-copy p{color:#dbc4c5;max-width:530px;font-size:17px!important}
.shop-page--cases .cases-text-link{display:inline-flex;gap:10px;align-items:center;color:#fff!important;text-decoration:none;font:800 15px/1.2 "Inter"!important;border-bottom:1px solid #efaaa9;padding-bottom:8px;margin-top:15px}
.shop-page--cases .cases-impact-orbit{height:560px;position:relative;display:grid;place-items:center}
.shop-page--cases .cases-impact-phone{width:290px;height:470px;transform:rotate(8deg);overflow:hidden;clip-path:polygon(10% 0,93% 5%,100% 89%,78% 100%,5% 94%,0 12%);box-shadow:0 30px 80px rgba(0,0,0,.45);z-index:2}
.shop-page--cases .cases-impact-phone img{width:100%;height:100%;object-fit:cover}
.shop-page--cases .cases-impact-orbit:before,.shop-page--cases .cases-impact-orbit:after{content:"";position:absolute;border:1px solid rgba(239,170,169,.4);border-radius:50%;animation:cv2Orbit 11s linear infinite}
.shop-page--cases .cases-impact-orbit:before{width:500px;height:500px}.shop-page--cases .cases-impact-orbit:after{width:370px;height:370px;animation-direction:reverse;animation-duration:8s}
.shop-page--cases .cases-impact-orbit>span{position:absolute;font:800 14px/1 "Space Grotesk"!important;letter-spacing:.15em;color:#efaaa9}
.shop-page--cases .cases-impact-orbit>span:nth-last-child(3){top:8%;right:5%}
.shop-page--cases .cases-impact-orbit>span:nth-last-child(2){bottom:12%;left:4%}
.shop-page--cases .cases-impact-orbit>span:nth-last-child(1){top:50%;right:0}
.shop-page--cases .cases-v2-split{display:grid;grid-template-columns:1fr 1fr;min-height:760px;background:var(--cv2-panel)}
.shop-page--cases .cases-split-image{min-height:760px;overflow:hidden}
.shop-page--cases .cases-split-image img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s}
.shop-page--cases .cases-v2-split:hover .cases-split-image img{transform:scale(1.06)}
.shop-page--cases .cases-split-copy{padding:90px max(32px,7vw);display:flex;flex-direction:column;justify-content:center}
.shop-page--cases .cases-detail-list{margin-top:35px;border-top:1px solid var(--cv2-line)}
.shop-page--cases .cases-detail-list>div{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:23px 0;border-bottom:1px solid var(--cv2-line)}
.shop-page--cases .cases-detail-list b{color:var(--cv2-accent);font:800 14px/1 "Space Grotesk"}
.shop-page--cases .cases-detail-list strong,.shop-page--cases .cases-detail-list small{display:block}
.shop-page--cases .cases-detail-list strong{font:700 17px/1.3 "Space Grotesk";margin-bottom:5px}
.shop-page--cases .cases-detail-list small{color:var(--cv2-muted);line-height:1.55}
.shop-page--cases .cases-v2-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;padding:100px max(32px,calc((100% - 1280px)/2));background:var(--cv2-bg)}
.shop-page--cases .cases-faq-head p{color:var(--cv2-muted);font-size:17px!important}
.shop-page--cases .cases-faq-list{border-top:1px solid var(--cv2-line)}
.shop-page--cases .cases-faq-list details{border-bottom:1px solid var(--cv2-line);padding:0}
.shop-page--cases .cases-faq-list summary{padding:24px 0;display:flex;justify-content:space-between;gap:20px;cursor:pointer;color:var(--cv2-ink);font:700 19px/1.4 "Space Grotesk"!important;list-style:none}
.shop-page--cases .cases-faq-list summary::-webkit-details-marker{display:none}
.shop-page--cases .cases-faq-list summary i{color:var(--cv2-accent);transition:transform .3s}
.shop-page--cases .cases-faq-list details[open] summary i{transform:rotate(45deg)}
.shop-page--cases .cases-faq-list details p{color:var(--cv2-muted);margin:0;padding:0 40px 25px 0}
.shop-page--cases .cases-v2-cta{min-height:620px;display:grid;place-items:center;text-align:center;align-content:center;position:relative;overflow:hidden;background:#1b1011;color:#fff;padding:80px 24px}
.shop-page--cases .cases-v2-cta .cases-eyebrow{color:#efaaa9}
.shop-page--cases .cases-v2-cta h2{max-width:850px}
.shop-page--cases .cases-v2-cta p{max-width:600px;color:#dbc4c5;font-size:17px!important}
.shop-page--cases .cases-cta-orbit{position:absolute;width:520px;height:520px;border:1px solid rgba(239,170,169,.28);border-radius:50%;animation:cv2Orbit 18s linear infinite}
.shop-page--cases .cases-v2-cta .cases-btn{margin-top:15px;background:#fff;color:#1b1011!important}
@keyframes cv2Orbit{to{transform:rotate(360deg)}}
@keyframes cv2Marquee{to{transform:translateX(-50%)}}

html.dark .shop-page--cases .cases-v2{
  --cv2-bg:#120b0c;--cv2-ink:#fff5f5;--cv2-muted:#d8bebe;--cv2-accent:#f09a9c;
  --cv2-panel:#201415;--cv2-line:rgba(255,245,245,.17)
}
html.dark .shop-page--cases .cases-v2-hero{background:radial-gradient(circle at 82% 32%,rgba(240,154,156,.22),transparent 28%),#120b0c}
html.dark .shop-page--cases .cases-v2-story,
html.dark .shop-page--cases .cases-v2-faq{background:#120b0c;color:#fff5f5}
html.dark .shop-page--cases .cases-eyebrow,
html.dark .shop-page--cases .cases-section-index b{color:#f09a9c}
html.dark .shop-page--cases .cases-btn{background:#fff;color:#180e0f!important}
html.dark .shop-page--cases .cases-feature:hover{background:rgba(240,154,156,.08)}
html.dark .shop-page--cases .cases-v2-split{background:#201415}
html.dark .shop-page--cases .cases-faq-list summary{color:#fff5f5}
html.dark .shop-page--cases .cases-product .add-cart{color:#fff;border-color:rgba(255,255,255,.55)}
html:not(.dark) .shop-page--cases .cases-v2{color:#170d0e}
html:not(.dark) .shop-page--cases .cases-v2 .cases-product{color:#fff}
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-gallery,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-motion,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-cta{color:#fff}
html:not(.dark) .shop-page--cases .cases-v2 p{color:var(--cv2-muted)}
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-gallery p,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-motion p,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-cta p{color:#dbc4c5}
html:not(.dark) .shop-page--cases .cases-v2 .cases-product h3{color:#fff}
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-gallery .cases-section-index span,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-motion .cases-section-index span{color:#efaaa9}
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-gallery .cases-eyebrow,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-motion .cases-eyebrow,
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-cta .cases-eyebrow{color:#efaaa9}
html:not(.dark) .shop-page--cases .cases-v2 .cases-v2-cta .cases-btn{background:#fff;color:#1b1011!important}

@media(max-width:1024px){
 .shop-page--cases .cases-hero-grid{grid-template-columns:1fr 1fr}
 .shop-page--cases .cases-hero-visual{height:500px}.shop-page--cases .cases-hero-visual img{height:450px}
 .shop-page--cases .cases-v2-story,.shop-page--cases .cases-gallery-intro{grid-template-columns:150px 1fr}
 .shop-page--cases .cases-motion-content{grid-template-columns:130px 1fr 1fr;gap:25px}
 .shop-page--cases .cases-impact-phone{width:230px;height:380px}
 .shop-page--cases .cases-impact-orbit:before{width:390px;height:390px}.shop-page--cases .cases-impact-orbit:after{width:280px;height:280px}
 .shop-page--cases .cases-v2-split{min-height:620px}.shop-page--cases .cases-split-image{min-height:620px}
}
@media(max-width:767px){
 .shop-page--cases .cases-v2 h1{font-size:48px}.shop-page--cases .cases-v2 h2{font-size:42px}
 .shop-page--cases .cases-hero-grid{width:calc(100% - 32px);grid-template-columns:1fr;padding:55px 0 25px}
 .shop-page--cases .cases-hero-visual{height:430px}.shop-page--cases .cases-hero-visual img{height:390px;width:78%}
 .shop-page--cases .ring-a{width:330px;height:330px}.shop-page--cases .ring-b{width:200px;height:200px}
 .shop-page--cases .cases-hero-copy>p{font-size:16px!important}.shop-page--cases .cases-actions{flex-wrap:wrap}
 .shop-page--cases .cases-v2-story,.shop-page--cases .cases-gallery-intro{grid-template-columns:1fr;gap:25px;padding:70px 20px}
 .shop-page--cases .cases-feature-strip{grid-template-columns:1fr;margin-top:40px}
 .shop-page--cases .cases-feature{border-right:0;border-bottom:1px solid var(--cv2-line)}
 .shop-page--cases .cases-feature:last-child{border-bottom:0}
 .shop-page--cases .cases-gallery-intro{padding-bottom:50px}.shop-page--cases .cases-gallery-rail{grid-template-columns:1fr}
 .shop-page--cases .cases-product{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:22px 20px 38px}
 .shop-page--cases .cases-product-image{height:390px}
 .shop-page--cases .cases-v2-motion{min-height:auto}.shop-page--cases .cases-motion-content{grid-template-columns:1fr;min-height:auto;padding:75px 20px}
 .shop-page--cases .cases-impact-orbit{height:430px}.shop-page--cases .cases-impact-phone{width:210px;height:340px}
 .shop-page--cases .cases-impact-orbit:before{width:330px;height:330px}.shop-page--cases .cases-impact-orbit:after{width:240px;height:240px}
 .shop-page--cases .cases-v2-split{grid-template-columns:1fr;min-height:0}.shop-page--cases .cases-split-image{min-height:400px;height:400px}
 .shop-page--cases .cases-split-copy{padding:65px 20px}
 .shop-page--cases .cases-v2-faq{grid-template-columns:1fr;gap:45px;padding:70px 20px}
 .shop-page--cases .cases-v2-cta{min-height:520px}
}
@media(prefers-reduced-motion:reduce){
 .shop-page--cases .cases-v2 *{animation:none!important;transition:none!important}
}

/* =========================================================
   VOLTIVA CASES V3 — IMMERSIVE MOTION / NO-BOX FLOW
   Final visual override for Cases only
   ========================================================= */
.shop-page--cases .cases-v2{
  position:relative;
  isolation:isolate;
  --case-dark:#180c0e;
  --case-dark-2:#281416;
  --case-light:#fbf3f2;
  --case-ink:#171012;
  --case-muted:#49383a;
  --case-accent:#a94f57;
  --case-soft:#e9c9ca;
  background:var(--case-light)!important;
  color:var(--case-ink)!important;
}
.shop-page--cases .cases-v2::before{
  content:"";position:fixed;inset:-20%;z-index:-3;pointer-events:none;
  background:
    radial-gradient(circle at 12% 18%,rgba(169,79,87,.13),transparent 19%),
    radial-gradient(circle at 88% 22%,rgba(169,79,87,.12),transparent 22%),
    radial-gradient(circle at 52% 72%,rgba(105,47,54,.09),transparent 24%);
  animation:casesAmbient 18s ease-in-out infinite alternate;
}
.shop-page--cases .cases-v2::after{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.22;
  background-image:linear-gradient(rgba(80,40,44,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(80,40,44,.12) 1px,transparent 1px);
  background-size:90px 90px;mask-image:linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);
  animation:casesGridDrift 24s linear infinite;
}
.shop-page--cases .cases-v2 section{margin:0!important;border:0!important}
.shop-page--cases .cases-v2 p,
.shop-page--cases .cases-v2 a,
.shop-page--cases .cases-v2 button,
.shop-page--cases .cases-v2 span,
.shop-page--cases .cases-v2 small,
.shop-page--cases .cases-v2 summary{font-size:max(14px,1em)!important}
.shop-page--cases .cases-v2 p{line-height:1.78!important}
.shop-page--cases .cases-v2 h1,.shop-page--cases .cases-v2 h2,.shop-page--cases .cases-v2 h3{color:var(--case-ink)!important}
.shop-page--cases .cases-v2 em{color:var(--case-accent)!important}
.shop-page--cases .cases-eyebrow,.shop-page--cases .cases-section-index span{color:#7f3e45!important}

/* Hero: cinematic, layered rather than boxed */
.shop-page--cases .cases-v2-hero{
  min-height:calc(100vh - 78px);overflow:hidden;background:transparent!important;position:relative;
}
.shop-page--cases .cases-v2-hero::before{
  content:"";position:absolute;width:46vw;height:46vw;max-width:680px;max-height:680px;right:-15vw;top:5%;border-radius:50%;
  border:1px solid rgba(169,79,87,.25);box-shadow:0 0 100px rgba(169,79,87,.10),inset 0 0 80px rgba(169,79,87,.06);
  animation:casesOrbitPulse 10s ease-in-out infinite;
}
.shop-page--cases .cases-v2-hero::after{
  content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#a94f57;left:24%;top:28%;box-shadow:0 0 0 10px rgba(169,79,87,.07),0 0 35px rgba(169,79,87,.65);animation:casesDotFloat 5s ease-in-out infinite;pointer-events:none;
}
.shop-page--cases .cases-hero-grid{position:relative;z-index:2;min-height:calc(100vh - 145px);padding:80px 0 30px!important}
.shop-page--cases .cases-hero-copy{animation:casesCopyIn 1s cubic-bezier(.16,1,.3,1) both}
.shop-page--cases .cases-hero-copy h1{font-size:clamp(56px,7.5vw,112px)!important;line-height:.88!important}
.shop-page--cases .cases-hero-copy>p{color:var(--case-muted)!important}
.shop-page--cases .cases-actions{gap:28px}
.shop-page--cases .cases-btn{background:transparent!important;color:var(--case-ink)!important;border:0!important;border-radius:0!important;padding:10px 0!important;box-shadow:none!important;border-bottom:2px solid var(--case-accent)!important;position:relative;overflow:hidden}
.shop-page--cases .cases-btn::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:2px;background:var(--case-ink);transform:translateX(-105%);transition:transform .45s ease}
.shop-page--cases .cases-btn:hover{transform:translateX(7px)!important;box-shadow:none!important}
.shop-page--cases .cases-btn:hover::after{transform:translateX(0)}
.shop-page--cases .cases-hero-visual{height:650px}
.shop-page--cases .cases-hero-visual::before{content:"";position:absolute;width:68%;height:78%;border-radius:47% 53% 62% 38%;background:radial-gradient(circle,rgba(169,79,87,.19),transparent 68%);filter:blur(14px);animation:casesBlob 8s ease-in-out infinite alternate}
.shop-page--cases .cases-hero-visual img{border-radius:48% 12% 43% 9%!important;clip-path:polygon(4% 4%,90% 0,100% 82%,72% 100%,0 92%,0 18%)!important;box-shadow:0 40px 100px rgba(35,17,18,.28)!important;animation:casesImageFloat 7s ease-in-out infinite!important}
.shop-page--cases .cases-ring{border-color:rgba(169,79,87,.42)!important}
.shop-page--cases .cases-ring.ring-a{animation:casesOrbit 14s linear infinite!important}
.shop-page--cases .cases-ring.ring-b{animation:casesOrbitReverse 9s linear infinite!important}
.shop-page--cases .cases-float-label{background:transparent!important;color:var(--case-ink)!important;border-bottom:1px solid var(--case-accent);padding:8px 0!important}
.shop-page--cases .cases-vertical{color:#7f3e45!important}
.shop-page--cases .cases-marquee{background:transparent!important;border-color:rgba(80,40,44,.2)!important;padding:21px 0!important}
.shop-page--cases .cases-marquee span{color:#7f3e45!important;animation:casesMarquee 16s linear infinite!important}

/* Story: open editorial rhythm, no cards */
.shop-page--cases .cases-v2-story{grid-template-columns:190px 1fr!important;gap:45px!important;padding:105px max(32px,calc((100% - 1280px)/2))!important;background:transparent!important;position:relative;overflow:hidden}
.shop-page--cases .cases-v2-story::after{content:"02";position:absolute;right:-20px;bottom:-90px;font:800 260px/.8 "Space Grotesk";color:rgba(169,79,87,.055);pointer-events:none}
.shop-page--cases .cases-section-index{position:relative;z-index:2}
.shop-page--cases .cases-section-index b{font-size:20px!important;color:var(--case-accent)!important}
.shop-page--cases .cases-section-head{position:relative;z-index:2}
.shop-page--cases .cases-section-head h2{font-size:clamp(48px,6vw,82px)!important}
.shop-page--cases .cases-section-head>p{color:var(--case-muted)!important}
.shop-page--cases .cases-feature-strip{border-top:1px solid rgba(80,40,44,.2)!important;margin-top:70px!important}
.shop-page--cases .cases-feature{border-right:0!important;border-bottom:1px solid rgba(80,40,44,.18);padding:38px 30px 42px 0!important;transition:transform .55s ease!important;background:transparent!important}
.shop-page--cases .cases-feature:hover{transform:translateX(14px)!important;background:transparent!important}
.shop-page--cases .cases-feature i{font-size:32px!important}
.shop-page--cases .cases-feature h3{color:var(--case-ink)!important}
.shop-page--cases .cases-feature p{color:var(--case-muted)!important}
.shop-page--cases .cases-feature-num{color:var(--case-accent)!important}

/* Collection: full-bleed dark cinematic section, images float in open space */
.shop-page--cases .cases-v2-gallery{background:var(--case-dark)!important;color:#fff!important;padding:115px 0 0!important;position:relative;overflow:hidden}
.shop-page--cases .cases-v2-gallery::before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 20% 30%,rgba(191,89,99,.18),transparent 22%),radial-gradient(circle at 82% 70%,rgba(191,89,99,.13),transparent 25%);animation:casesAmbientDark 16s ease-in-out infinite alternate}
.shop-page--cases .cases-gallery-intro{position:relative;z-index:2;padding-bottom:75px!important}
.shop-page--cases .cases-v2-gallery h2,.shop-page--cases .cases-v2-gallery h3{color:#fff!important}
.shop-page--cases .cases-v2-gallery p{color:#ead5d6!important}
.shop-page--cases .cases-v2-gallery .cases-section-index span,.shop-page--cases .cases-v2-gallery .cases-eyebrow{color:#f0a5a8!important}
.shop-page--cases .cases-gallery-rail{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.18)!important}
.shop-page--cases .cases-product{background:transparent!important;border-right:1px solid rgba(255,255,255,.13)!important;border-bottom:0!important;padding:32px 34px 55px!important;transition:transform .6s ease!important}
.shop-page--cases .cases-product:hover{background:transparent!important;transform:translateY(-12px)!important}
.shop-page--cases .cases-product-image{height:470px!important;background:transparent!important;clip-path:polygon(2% 6%,90% 0,100% 88%,72% 100%,0 92%,0 15%)!important;border-radius:34% 8% 30% 6%!important;box-shadow:0 25px 70px rgba(0,0,0,.28)}
.shop-page--cases .cases-product-image::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.2);clip-path:inherit;pointer-events:none}
.shop-page--cases .cases-product-image img{transition:transform 1.2s cubic-bezier(.16,1,.3,1),filter .7s!important}
.shop-page--cases .cases-product:hover .cases-product-image img{transform:scale(1.12) rotate(-2deg)!important;filter:saturate(1.15)!important}
.shop-page--cases .cases-product-image>span{background:transparent!important;color:#fff!important;border-bottom:1px solid #efaaa9;padding:5px 0!important}
.shop-page--cases .cases-product-type{color:#f0a5a8!important}
.shop-page--cases .cases-product p{color:#ead5d6!important}
.shop-page--cases .cases-product .add-cart{background:transparent!important;color:#fff!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.6)!important;border-radius:0!important;padding:9px 0!important}

/* Motion section: moving background waves */
.shop-page--cases .cases-v2-motion{background:var(--case-dark-2)!important;min-height:100vh!important;color:#fff!important}
.shop-page--cases .cases-motion-bg{inset:-20%!important;background:radial-gradient(circle at 75% 50%,rgba(198,94,103,.34),transparent 22%),radial-gradient(circle at 15% 80%,rgba(198,94,103,.2),transparent 25%),conic-gradient(from 0deg at 50% 50%,transparent,rgba(198,94,103,.07),transparent,rgba(198,94,103,.08),transparent)!important;animation:casesMotionBG 15s linear infinite!important}
.shop-page--cases .cases-v2-motion::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(120deg,transparent 0 100px,rgba(255,255,255,.045) 101px 102px);animation:casesLines 18s linear infinite}
.shop-page--cases .cases-motion-copy h2,.shop-page--cases .cases-v2-motion .cases-section-index b{color:#fff!important}
.shop-page--cases .cases-motion-copy p{color:#ead5d6!important}
.shop-page--cases .cases-v2-motion .cases-section-index span,.shop-page--cases .cases-v2-motion .cases-eyebrow{color:#f0a5a8!important}
.shop-page--cases .cases-text-link{color:#fff!important;border-color:#f0a5a8!important}
.shop-page--cases .cases-impact-phone{border-radius:40% 10% 34% 8%!important;animation:casesPhoneFloat 6s ease-in-out infinite!important}
.shop-page--cases .cases-impact-orbit::before{animation:casesOrbit 13s linear infinite!important}
.shop-page--cases .cases-impact-orbit::after{animation:casesOrbitReverse 8s linear infinite!important}

/* Details: diagonal open composition */
.shop-page--cases .cases-v2-split{background:transparent!important;position:relative;overflow:hidden}
.shop-page--cases .cases-split-image{min-height:760px!important;overflow:hidden!important}
.shop-page--cases .cases-split-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(251,243,242,0),rgba(251,243,242,.18));pointer-events:none}
.shop-page--cases .cases-split-image img{transform:scale(1.08);transition:transform 1.4s cubic-bezier(.16,1,.3,1)!important}
.shop-page--cases .cases-v2-split.is-visible .cases-split-image img{transform:scale(1)!important}
.shop-page--cases .cases-split-copy{background:transparent!important;padding:110px max(40px,7vw)!important}
.shop-page--cases .cases-split-copy h2{color:var(--case-ink)!important}
.shop-page--cases .cases-detail-list{margin-top:50px!important}
.shop-page--cases .cases-detail-list>div{border-top:1px solid rgba(80,40,44,.2)!important;padding:24px 0!important;display:grid!important;grid-template-columns:55px 1fr!important;background:transparent!important}
.shop-page--cases .cases-detail-list strong,.shop-page--cases .cases-detail-list small{color:var(--case-ink)!important}
.shop-page--cases .cases-detail-list small{display:block;color:var(--case-muted)!important;margin-top:5px}

/* FAQ: lines, not cards */
.shop-page--cases .cases-v2-faq{background:transparent!important;padding:110px max(32px,calc((100% - 1280px)/2))!important}
.shop-page--cases .cases-faq-head h2{color:var(--case-ink)!important}
.shop-page--cases .cases-faq-head p{color:var(--case-muted)!important}
.shop-page--cases .cases-faq-list details{border-top:1px solid rgba(80,40,44,.22)!important;border-radius:0!important;background:transparent!important;padding:0!important}
.shop-page--cases .cases-faq-list details:last-child{border-bottom:1px solid rgba(80,40,44,.22)!important}
.shop-page--cases .cases-faq-list summary{color:var(--case-ink)!important;padding:26px 0!important;background:transparent!important}
.shop-page--cases .cases-faq-list details p{color:var(--case-muted)!important;padding:0 45px 26px 0!important}

/* CTA: open stage with giant typography */
.shop-page--cases .cases-v2-cta{background:var(--case-dark)!important;color:#fff!important;min-height:620px!important;position:relative;overflow:hidden}
.shop-page--cases .cases-v2-cta h2,.shop-page--cases .cases-v2-cta p{color:#fff!important}
.shop-page--cases .cases-v2-cta p{color:#ead5d6!important}
.shop-page--cases .cases-v2-cta .cases-eyebrow{color:#f0a5a8!important}
.shop-page--cases .cases-cta-orbit{border-radius:50%!important;border:1px solid rgba(240,165,168,.4)!important;box-shadow:0 0 90px rgba(198,94,103,.18)!important;animation:casesOrbitPulse 8s ease-in-out infinite!important}
.shop-page--cases .cases-v2-cta .cases-btn{color:#fff!important;border-color:#f0a5a8!important}
.shop-page--cases .cases-v2-cta .cases-btn::after{background:#fff}

/* Scroll reveal states: dramatic and guaranteed visible after reveal */
.shop-page--cases .cases-v2 .cv-motion-item{opacity:0;transform:translate3d(0,70px,0) scale(.97);filter:blur(5px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter .9s ease}
.shop-page--cases .cases-v2 .cv-motion-item.is-visible{opacity:1;transform:none;filter:none}
.shop-page--cases .cases-v2 .cv-motion-left{opacity:0;transform:translate3d(-90px,0,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .cases-v2 .cv-motion-left.is-visible{opacity:1;transform:none}
.shop-page--cases .cases-v2 .cv-motion-right{opacity:0;transform:translate3d(90px,0,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .cases-v2 .cv-motion-right.is-visible{opacity:1;transform:none}
.shop-page--cases .cases-v2 .cv-stagger>*{opacity:0;transform:translateY(45px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .cases-v2 .cv-stagger.is-visible>*{opacity:1;transform:none}
.shop-page--cases .cases-v2 .cv-stagger.is-visible>*:nth-child(2){transition-delay:.12s}.shop-page--cases .cases-v2 .cv-stagger.is-visible>*:nth-child(3){transition-delay:.24s}

@keyframes casesAmbient{from{transform:translate3d(-3%,0,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.08)}}
@keyframes casesGridDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(90px,90px,0)}}
@keyframes casesAmbientDark{from{transform:rotate(0deg) scale(1)}to{transform:rotate(10deg) scale(1.12)}}
@keyframes casesOrbit{to{transform:rotate(360deg)}}
@keyframes casesOrbitReverse{to{transform:rotate(-360deg)}}
@keyframes casesOrbitPulse{0%,100%{transform:scale(1) rotate(0);opacity:.7}50%{transform:scale(1.08) rotate(8deg);opacity:1}}
@keyframes casesDotFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(55px,25px)}}
@keyframes casesBlob{from{transform:scale(.9) rotate(-8deg)}to{transform:scale(1.1) rotate(8deg)}}
@keyframes casesImageFloat{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(2deg) translateY(-18px)}}
@keyframes casesPhoneFloat{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(5deg) translateY(-22px)}}
@keyframes casesCopyIn{from{opacity:0;transform:translateX(-70px)}to{opacity:1;transform:none}}
@keyframes casesMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes casesMotionBG{to{transform:rotate(360deg) scale(1.12)}}
@keyframes casesLines{from{transform:translateX(-180px)}to{transform:translateX(180px)}}

/* Explicit theme overrides: never allow low-contrast text */
html:not(.dark) .shop-page--cases .cases-v2,
html.light .shop-page--cases .cases-v2{background:#fbf3f2!important;color:#171012!important}
html:not(.dark) .shop-page--cases .cases-v2 h1,html:not(.dark) .shop-page--cases .cases-v2 h2,html:not(.dark) .shop-page--cases .cases-v2 h3,
html.light .shop-page--cases .cases-v2 h1,html.light .shop-page--cases .cases-v2 h2,html.light .shop-page--cases .cases-v2 h3{color:#171012!important}
html:not(.dark) .shop-page--cases .cases-v2 p,html:not(.dark) .shop-page--cases .cases-v2 summary,
html.light .shop-page--cases .cases-v2 p,html.light .shop-page--cases .cases-v2 summary{color:#49383a!important}
html.dark .shop-page--cases .cases-v2{background:#180c0e!important;color:#f9eeee!important}
html.dark .shop-page--cases .cases-v2 h1,html.dark .shop-page--cases .cases-v2 h2,html.dark .shop-page--cases .cases-v2 h3{color:#fff!important}
html.dark .shop-page--cases .cases-v2 p,html.dark .shop-page--cases .cases-v2 summary{color:#ead5d6!important}
html.dark .shop-page--cases .cases-v2 .cases-v2-story,html.dark .shop-page--cases .cases-v2 .cases-v2-split,html.dark .shop-page--cases .cases-v2 .cases-v2-faq{background:#180c0e!important}
html.dark .shop-page--cases .cases-v2 .cases-feature h3,html.dark .shop-page--cases .cases-v2 .cases-detail-list strong,html.dark .shop-page--cases .cases-v2 .cases-detail-list small{color:#fff!important}
html.dark .shop-page--cases .cases-v2 .cases-detail-list small{color:#ead5d6!important}
html.dark .shop-page--cases .cases-v2 .cases-eyebrow,html.dark .shop-page--cases .cases-v2 .cases-section-index span{color:#f0a5a8!important}

@media(max-width:1024px){
 .shop-page--cases .cases-hero-grid{min-height:auto;padding-top:60px!important}
 .shop-page--cases .cases-hero-copy h1{font-size:clamp(50px,8vw,82px)!important}
 .shop-page--cases .cases-hero-visual{height:540px}
 .shop-page--cases .cases-v2-story{grid-template-columns:150px 1fr!important}
 .shop-page--cases .cases-product-image{height:400px!important}
}
@media(max-width:767px){
 .shop-page--cases .cases-v2-hero{min-height:auto}
 .shop-page--cases .cases-hero-grid{grid-template-columns:1fr!important;width:calc(100% - 32px)!important;padding:58px 0 18px!important}
 .shop-page--cases .cases-hero-copy h1{font-size:clamp(48px,14vw,70px)!important}
 .shop-page--cases .cases-hero-visual{height:410px}
 .shop-page--cases .cases-hero-visual img{height:370px!important;width:78%!important}
 .shop-page--cases .cases-v2-story{grid-template-columns:1fr!important;gap:28px!important;padding:78px 20px!important}
 .shop-page--cases .cases-section-head h2{font-size:clamp(42px,12vw,62px)!important}
 .shop-page--cases .cases-feature{padding-right:0!important}
 .shop-page--cases .cases-gallery-intro{grid-template-columns:1fr!important;padding:78px 20px 52px!important}
 .shop-page--cases .cases-gallery-rail{grid-template-columns:1fr!important}
 .shop-page--cases .cases-product{border-right:0!important;padding:28px 20px 50px!important}
 .shop-page--cases .cases-product-image{height:370px!important}
 .shop-page--cases .cases-motion-content{grid-template-columns:1fr!important;min-height:auto!important;padding:80px 20px!important}
 .shop-page--cases .cases-impact-orbit{height:390px!important}
 .shop-page--cases .cases-v2-split{grid-template-columns:1fr!important}
 .shop-page--cases .cases-split-image{min-height:390px!important;height:390px!important}
 .shop-page--cases .cases-split-copy{padding:78px 20px!important}
 .shop-page--cases .cases-v2-faq{grid-template-columns:1fr!important;padding:78px 20px!important}
 .shop-page--cases .cases-v2-cta{min-height:540px!important;padding:75px 20px!important}
}
@media(prefers-reduced-motion:reduce){
 .shop-page--cases .cases-v2::before,.shop-page--cases .cases-v2::after,.shop-page--cases .cases-v2 *{animation:none!important;transition:none!important}
 .shop-page--cases .cases-v2 .cv-motion-item,.shop-page--cases .cases-v2 .cv-motion-left,.shop-page--cases .cases-v2 .cv-motion-right,.shop-page--cases .cases-v2 .cv-stagger>*{opacity:1!important;transform:none!important;filter:none!important}
}

/* =========================================================
   CASES HERO V4 — CENTERED IMAGE FIELD / GLOW / FLOAT MOTION
   First section only. No boxes, no panels.
   ========================================================= */
.shop-page--cases .cases-v2-hero{
  min-height:calc(100svh - 78px)!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-image:
    linear-gradient(180deg,rgba(251,243,242,.84),rgba(251,243,242,.72)),
    url('../images/colorful-phone-cases.jpg')!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}

/* Soft cinematic veil keeps every word readable without creating a box. */
.shop-page--cases .cases-v2-hero .cases-hero-grid{
  width:min(900px,calc(100% - 40px))!important;
  min-height:calc(100svh - 145px)!important;
  padding:70px 0 28px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  position:relative!important;
  z-index:5!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-copy{
  max-width:820px!important;
  margin:0 auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  animation:casesHeroRise 1.15s cubic-bezier(.16,1,.3,1) both!important;
}
.shop-page--cases .cases-v2-hero .cases-eyebrow{
  margin-bottom:10px!important;
  color:#74363e!important;
  text-shadow:0 1px 10px rgba(255,255,255,.65)!important;
  animation:casesEyebrowIn .9s .08s cubic-bezier(.16,1,.3,1) both!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-copy h1{
  max-width:760px!important;
  margin:8px auto 18px!important;
  font-size:clamp(44px,6vw,76px)!important;
  line-height:.94!important;
  letter-spacing:-.045em!important;
  color:#160d0f!important;
  text-shadow:0 2px 22px rgba(255,255,255,.55)!important;
  animation:casesHeroTitleIn 1.05s .16s cubic-bezier(.16,1,.3,1) both!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-copy h1 em{
  color:#9e4d55!important;
  position:relative!important;
  display:inline-block!important;
  animation:casesAccentFloat 4s ease-in-out 1.2s infinite!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-copy>p{
  max-width:650px!important;
  margin:0 auto!important;
  color:#302124!important;
  font-size:17px!important;
  line-height:1.72!important;
  font-weight:600!important;
  text-shadow:0 1px 12px rgba(255,255,255,.72)!important;
  animation:casesHeroTextIn 1s .28s cubic-bezier(.16,1,.3,1) both!important;
}
.shop-page--cases .cases-v2-hero .cases-actions{
  justify-content:center!important;
  margin-top:25px!important;
  animation:casesHeroTextIn 1s .4s cubic-bezier(.16,1,.3,1) both!important;
}
.shop-page--cases .cases-v2-hero .cases-note{
  color:#4b3336!important;
  text-shadow:0 1px 8px rgba(255,255,255,.7)!important;
}

/* The old side image becomes a full atmospheric layer, not a card. */
.shop-page--cases .cases-v2-hero .cases-hero-visual{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:1!important;
  pointer-events:none!important;
  display:block!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-visual img{
  display:none!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-visual::before{
  content:""!important;
  position:absolute!important;
  width:min(62vw,760px)!important;
  height:min(62vw,760px)!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(184,95,99,.24) 0,rgba(184,95,99,.09) 32%,transparent 69%)!important;
  filter:blur(10px)!important;
  animation:casesHeroGlow 7s ease-in-out infinite!important;
}
.shop-page--cases .cases-v2-hero .cases-hero-visual::after{
  content:""!important;
  position:absolute!important;
  width:18px!important;
  height:18px!important;
  left:18%!important;
  top:27%!important;
  border-radius:50%!important;
  background:#b85f63!important;
  box-shadow:0 0 0 9px rgba(184,95,99,.08),0 0 35px rgba(184,95,99,.72)!important;
  animation:casesFloatDot 5s ease-in-out infinite!important;
}

/* Orbit rings float around the centered composition. */
.shop-page--cases .cases-v2-hero .cases-ring{
  z-index:2!important;
  opacity:.62!important;
  left:50%!important;
  top:50%!important;
  transform-origin:center!important;
}
.shop-page--cases .cases-v2-hero .ring-a{
  width:min(52vw,650px)!important;
  height:min(52vw,650px)!important;
  margin:-min(26vw,325px) 0 0 -min(26vw,325px)!important;
  border:1px solid rgba(145,75,80,.42)!important;
  box-shadow:0 0 45px rgba(169,79,87,.10)!important;
}
.shop-page--cases .cases-v2-hero .ring-b{
  width:min(29vw,360px)!important;
  height:min(29vw,360px)!important;
  margin:-min(14.5vw,180px) 0 0 -min(14.5vw,180px)!important;
  border:1px dashed rgba(145,75,80,.48)!important;
}
.shop-page--cases .cases-v2-hero .cases-float-label,
.shop-page--cases .cases-v2-hero .cases-vertical{
  background:transparent!important;
  border:0!important;
  color:#71383f!important;
  text-shadow:0 1px 10px rgba(255,255,255,.75)!important;
  z-index:4!important;
}
.shop-page--cases .cases-v2-hero .cases-float-label{
  right:8%!important;
  bottom:18%!important;
  animation:casesFloatLabel 5.5s ease-in-out infinite!important;
}
.shop-page--cases .cases-v2-hero .cases-vertical{
  left:5%!important;
  top:48%!important;
  animation:casesVerticalDrift 6s ease-in-out infinite!important;
}

/* Remove any visible box feeling from the hero controls. */
.shop-page--cases .cases-v2-hero .cases-btn{
  background:transparent!important;
  border-radius:0!important;
  box-shadow:none!important;
}

@keyframes casesHeroRise{from{opacity:0;transform:translateY(45px) scale(.98);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes casesEyebrowIn{from{opacity:0;letter-spacing:.45em;transform:translateY(18px)}to{opacity:1;letter-spacing:.16em;transform:none}}
@keyframes casesHeroTitleIn{from{opacity:0;transform:translateY(35px) scale(.94)}to{opacity:1;transform:none}}
@keyframes casesHeroTextIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes casesHeroGlow{0%,100%{transform:translate(-50%,-50%) scale(.9);opacity:.62}50%{transform:translate(-50%,-50%) scale(1.12);opacity:1}}
@keyframes casesFloatDot{0%,100%{transform:translate(0,0) scale(1)}35%{transform:translate(45px,22px) scale(1.25)}70%{transform:translate(-10px,58px) scale(.82)}}
@keyframes casesFloatLabel{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}
@keyframes casesVerticalDrift{0%,100%{transform:translateY(0)}50%{transform:translateY(18px)}}
@keyframes casesAccentFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

html.dark .shop-page--cases .cases-v2-hero{
  background-image:
    linear-gradient(180deg,rgba(24,12,14,.78),rgba(24,12,14,.84)),
    url('../images/colorful-phone-cases.jpg')!important;
}
html.dark .shop-page--cases .cases-v2-hero .cases-eyebrow,
html.dark .shop-page--cases .cases-v2-hero .cases-vertical,
html.dark .shop-page--cases .cases-v2-hero .cases-float-label,
html.dark .shop-page--cases .cases-v2-hero .cases-note{color:#f0a5a8!important;text-shadow:0 2px 14px rgba(0,0,0,.65)!important}
html.dark .shop-page--cases .cases-v2-hero .cases-hero-copy h1{color:#fff7f7!important;text-shadow:0 3px 25px rgba(0,0,0,.55)!important}
html.dark .shop-page--cases .cases-v2-hero .cases-hero-copy h1 em{color:#f0a0a4!important}
html.dark .shop-page--cases .cases-v2-hero .cases-hero-copy>p{color:#f0dddd!important;text-shadow:0 2px 16px rgba(0,0,0,.7)!important}
html.dark .shop-page--cases .cases-v2-hero .cases-hero-visual::before{background:radial-gradient(circle,rgba(239,133,139,.27) 0,rgba(184,95,99,.12) 35%,transparent 70%)!important}
html.dark .shop-page--cases .cases-v2-hero .cases-ring{border-color:rgba(239,170,169,.45)!important}

@media(max-width:767px){
  .shop-page--cases .cases-v2-hero{min-height:calc(100svh - 70px)!important;background-position:center center!important}
  .shop-page--cases .cases-v2-hero .cases-hero-grid{width:calc(100% - 28px)!important;min-height:calc(100svh - 130px)!important;padding:58px 0 20px!important}
  .shop-page--cases .cases-v2-hero .cases-hero-copy h1{font-size:clamp(40px,12vw,60px)!important;line-height:.96!important}
  .shop-page--cases .cases-v2-hero .cases-hero-copy>p{font-size:15px!important;line-height:1.7!important;max-width:500px!important}
  .shop-page--cases .cases-v2-hero .cases-actions{margin-top:21px!important;gap:18px!important}
  .shop-page--cases .cases-v2-hero .ring-a{width:88vw!important;height:88vw!important;margin:-44vw 0 0 -44vw!important}
  .shop-page--cases .cases-v2-hero .ring-b{width:52vw!important;height:52vw!important;margin:-26vw 0 0 -26vw!important}
  .shop-page--cases .cases-v2-hero .cases-float-label{right:7%!important;bottom:12%!important}
  .shop-page--cases .cases-v2-hero .cases-vertical{left:3%!important;top:43%!important}
}
@media(prefers-reduced-motion:reduce){
  .shop-page--cases .cases-v2-hero *{animation:none!important;transition:none!important}
}

/* =========================================================
   CASES V4 — SECTION 04 HANGING PHOTO + SECTION 05 DETAIL STUDIO
   Open composition: no transparent boxes, no card walls.
   ========================================================= */
.shop-page--cases .cases-hanging{position:relative!important;min-height:900px!important;overflow:hidden!important;background:#1a0d0f!important;color:#fff!important}
.shop-page--cases .cases-hanging::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 42%,rgba(226,111,122,.22),transparent 22%),radial-gradient(circle at 18% 78%,rgba(226,111,122,.12),transparent 28%);animation:casesHangAmbient 12s ease-in-out infinite alternate;pointer-events:none}
.shop-page--cases .cases-hanging::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(112deg,transparent 0 150px,rgba(255,255,255,.035) 151px 152px);animation:casesHangLines 16s linear infinite;pointer-events:none}
.shop-page--cases .hanging-bg-orb{position:absolute;border:1px solid rgba(241,160,165,.25);border-radius:50%;box-shadow:0 0 70px rgba(220,93,105,.16);pointer-events:none}
.shop-page--cases .hanging-orb-one{width:420px;height:420px;right:-130px;top:90px;animation:casesHangOrb 12s ease-in-out infinite}
.shop-page--cases .hanging-orb-two{width:220px;height:220px;left:-100px;bottom:50px;animation:casesHangOrb 9s ease-in-out infinite reverse}
.shop-page--cases .hanging-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.shop-page--cases .hanging-lines span{position:absolute;width:1px;height:160%;top:-30%;background:linear-gradient(transparent,rgba(239,154,159,.25),transparent);transform:rotate(22deg);animation:casesHangSweep 8s linear infinite}
.shop-page--cases .hanging-lines span:nth-child(1){left:18%;animation-delay:-2s}.shop-page--cases .hanging-lines span:nth-child(2){left:52%;animation-delay:-5s}.shop-page--cases .hanging-lines span:nth-child(3){left:82%;animation-delay:-7s}
.shop-page--cases .hanging-wrap{position:relative;z-index:2;width:min(1260px,calc(100% - 64px));min-height:900px;margin:auto;display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}
.shop-page--cases .hanging-intro{padding:80px 0 80px 15px}
.shop-page--cases .hanging-intro .cases-section-index{margin-bottom:60px}.shop-page--cases .hanging-intro .cases-section-index b{color:#f0a5a8!important}.shop-page--cases .hanging-intro .cases-section-index span,.shop-page--cases .hanging-intro .cases-eyebrow{color:#f0a5a8!important}
.shop-page--cases .hanging-intro h2{font-size:clamp(48px,5.6vw,78px)!important;line-height:.95!important;color:#fff!important;margin:18px 0 24px!important}
.shop-page--cases .hanging-intro p{max-width:500px;color:#ead5d6!important;font-size:16px!important}
.shop-page--cases .hanging-intro .cases-text-link{display:inline-flex;margin-top:24px;color:#fff!important;border-bottom:1px solid #f0a5a8!important;padding-bottom:9px}
.shop-page--cases .hanging-stage{position:relative;height:720px;display:flex;align-items:center;justify-content:center;perspective:1200px}
.shop-page--cases .hanging-rope{position:absolute;top:0;width:2px;height:245px;background:linear-gradient(#f2d7d7,rgba(242,215,215,.2));transform-origin:top center;z-index:3;box-shadow:0 0 12px rgba(240,165,168,.25)}
.shop-page--cases .rope-left{left:29%;transform:rotate(-2deg)}.shop-page--cases .rope-right{right:29%;transform:rotate(2deg)}
.shop-page--cases .hanging-knot{position:absolute;top:238px;width:10px;height:10px;border-radius:50%;background:#f0a5a8;box-shadow:0 0 20px rgba(240,165,168,.8);z-index:5;animation:casesKnotPulse 2.8s ease-in-out infinite}
.shop-page--cases .knot-left{left:calc(29% - 4px)}.shop-page--cases .knot-right{right:calc(29% - 4px);animation-delay:-1.3s}
.shop-page--cases .hanging-frame{position:relative;width:min(470px,72%);height:540px;transform:rotate(-3deg);animation:casesHangSway 6s ease-in-out infinite;transform-origin:50% 5%;z-index:2}
.shop-page--cases .hanging-frame::before{content:"";position:absolute;inset:-18px;background:radial-gradient(circle,rgba(231,110,121,.32),transparent 65%);filter:blur(12px);animation:casesHangGlow 4s ease-in-out infinite alternate;z-index:-1}
.shop-page--cases .hanging-frame::after{content:"";position:absolute;inset:-1px;border:1px solid rgba(242,205,205,.42);clip-path:polygon(3% 0,97% 4%,100% 94%,4% 100%);pointer-events:none}
.shop-page--cases .hanging-frame img{width:100%;height:100%;object-fit:cover;clip-path:polygon(3% 0,97% 4%,100% 94%,4% 100%);filter:saturate(.92) contrast(1.05);transition:transform 1s cubic-bezier(.16,1,.3,1),filter .8s}
.shop-page--cases .hanging-stage:hover .hanging-frame img{transform:scale(1.06);filter:saturate(1.18) contrast(1.08)}
.shop-page--cases .hanging-photo-glow{position:absolute;inset:12%;background:rgba(235,110,120,.12);filter:blur(45px);z-index:-1;animation:casesHangGlow 4s ease-in-out infinite alternate}
.shop-page--cases .hanging-tag{position:absolute;right:8%;top:25%;z-index:6;color:#f0a5a8;font:700 14px/1 "Inter",sans-serif;letter-spacing:.18em;writing-mode:vertical-rl;animation:casesTagFloat 4s ease-in-out infinite}
.shop-page--cases .hanging-caption{position:absolute;right:3%;bottom:8%;display:flex;flex-direction:column;gap:8px;z-index:6;color:#fff;animation:casesCaptionIn 1s .4s both}
.shop-page--cases .hanging-caption span{font-size:14px!important;letter-spacing:.18em;color:#f0a5a8!important}.shop-page--cases .hanging-caption strong{font-size:17px!important;font-weight:700}

.shop-page--cases .cases-details-v3{min-height:860px!important;grid-template-columns:1.08fr .92fr!important;position:relative;overflow:hidden!important;background:#fbf3f2!important}
.shop-page--cases .details-v3-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 10% 40%,rgba(169,79,87,.12),transparent 25%),radial-gradient(circle at 90% 20%,rgba(169,79,87,.1),transparent 25%);animation:casesDetailAmbient 14s ease-in-out infinite alternate;pointer-events:none}
.shop-page--cases .details-v3-media{position:relative;min-height:860px;overflow:hidden;clip-path:polygon(0 0,92% 3%,100% 92%,7% 100%);transform:translateY(35px) rotate(-1deg);transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .details-v3-media.is-visible{transform:translateY(0) rotate(-1deg)}
.shop-page--cases .details-v3-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.1);transition:transform 1.5s cubic-bezier(.16,1,.3,1);filter:saturate(.9)}
.shop-page--cases .details-v3-media.is-visible img{transform:scale(1)}
.shop-page--cases .details-v3-media:hover img{transform:scale(1.06)}
.shop-page--cases .details-v3-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,rgba(251,243,242,.28));pointer-events:none}
.shop-page--cases .details-v3-stamp{position:absolute;left:35px;bottom:35px;z-index:2;color:#fff;background:#1a0d0f;padding:10px 14px;font-size:14px!important;letter-spacing:.14em}
.shop-page--cases .details-v3-line{position:absolute;top:8%;right:7%;width:120px;height:120px;border:1px solid rgba(255,255,255,.7);border-radius:50%;z-index:2;animation:casesDetailSpin 12s linear infinite}
.shop-page--cases .details-v3-copy{position:relative;z-index:2;padding:90px max(40px,7vw) 90px 70px;display:flex;flex-direction:column;justify-content:center}
.shop-page--cases .details-v3-copy .cases-section-index{margin-bottom:44px}.shop-page--cases .details-v3-copy .cases-section-index span,.shop-page--cases .details-v3-copy .cases-eyebrow{color:#7f3e45!important}
.shop-page--cases .details-v3-copy h2{font-size:clamp(46px,5.5vw,76px)!important;line-height:.96!important;color:#171012!important;margin:18px 0 20px!important}
.shop-page--cases .details-v3-lead{color:#49383a!important;font-size:16px!important;max-width:570px}
.shop-page--cases .details-v3-list{margin-top:38px}
.shop-page--cases .details-v3-item{display:grid;grid-template-columns:42px 1fr 28px;gap:18px;align-items:start;padding:20px 0;border-top:1px solid rgba(80,40,44,.2);transition:transform .45s ease}
.shop-page--cases .details-v3-item:last-child{border-bottom:1px solid rgba(80,40,44,.2)}
.shop-page--cases .details-v3-item:hover{transform:translateX(12px)}
.shop-page--cases .details-v3-item>b{font-size:14px!important;color:#a94f57!important}.shop-page--cases .details-v3-item strong{display:block;color:#171012!important;font-size:16px!important}.shop-page--cases .details-v3-item span{display:block;color:#49383a!important;font-size:14px!important;line-height:1.6;margin-top:5px}.shop-page--cases .details-v3-item i{color:#a94f57;font-size:14px;padding-top:3px}
.shop-page--cases .details-v3-link{align-self:flex-start;margin-top:30px;color:#171012!important;border-bottom:2px solid #a94f57;padding:8px 0;transition:transform .4s ease}.shop-page--cases .details-v3-link:hover{transform:translateX(8px)}

/* Guaranteed contrast in both themes for the two redesigned sections */
html:not(.dark) .shop-page--cases .cases-hanging h2,html:not(.dark) .shop-page--cases .cases-hanging p,html:not(.dark) .shop-page--cases .cases-hanging .cases-text-link{color:#fff!important}
html.dark .shop-page--cases .cases-hanging{background:#14090b!important}.shop-page--cases .cases-hanging h2,.shop-page--cases .cases-hanging p,.shop-page--cases .cases-hanging .cases-text-link{color:#fff!important}
html.dark .shop-page--cases .cases-details-v3{background:#170c0e!important} html.dark .shop-page--cases .details-v3-copy h2{color:#fff!important}
html.dark .shop-page--cases .details-v3-copy h2,html.dark .shop-page--cases .details-v3-lead,html.dark .shop-page--cases .details-v3-item strong,html.dark .shop-page--cases .details-v3-item span,html.dark .shop-page--cases .details-v3-link{color:#fff!important}
html.dark .shop-page--cases .details-v3-copy .cases-section-index span,html.dark .shop-page--cases .details-v3-copy .cases-eyebrow{color:#f0a5a8!important}
html.dark .shop-page--cases .details-v3-item{border-color:rgba(255,255,255,.22)}

@keyframes casesHangSway{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(2deg) translateY(-12px)}}
@keyframes casesHangGlow{from{opacity:.45;transform:scale(.92)}to{opacity:1;transform:scale(1.08)}}
@keyframes casesHangAmbient{from{transform:scale(1) translate3d(-1%,0,0)}to{transform:scale(1.12) translate3d(2%,2%,0)}}
@keyframes casesHangLines{from{transform:translateX(-5%)}to{transform:translateX(5%)}}
@keyframes casesHangOrb{0%,100%{transform:scale(1) rotate(0);opacity:.5}50%{transform:scale(1.12) rotate(12deg);opacity:1}}
@keyframes casesHangSweep{from{transform:translateY(-20%) rotate(22deg)}to{transform:translateY(20%) rotate(22deg)}}
@keyframes casesKnotPulse{0%,100%{box-shadow:0 0 10px rgba(240,165,168,.45)}50%{box-shadow:0 0 28px rgba(240,165,168,.95)}}
@keyframes casesTagFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes casesCaptionIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}
@keyframes casesDetailAmbient{from{transform:scale(1)}to{transform:scale(1.1) rotate(2deg)}}
@keyframes casesDetailSpin{to{transform:rotate(360deg)}}

@media(max-width:1024px){
 .shop-page--cases .hanging-wrap{grid-template-columns:1fr .95fr;gap:25px;width:calc(100% - 42px)}
 .shop-page--cases .hanging-intro{padding-left:0}.shop-page--cases .hanging-stage{height:650px}.shop-page--cases .hanging-frame{height:470px;width:74%}
 .shop-page--cases .cases-details-v3{min-height:720px!important}.shop-page--cases .details-v3-media{min-height:720px}.shop-page--cases .details-v3-copy{padding:75px 35px 75px 45px}
}
@media(max-width:767px){
 .shop-page--cases .cases-hanging{min-height:0!important}.shop-page--cases .hanging-wrap{grid-template-columns:1fr;min-height:0;width:calc(100% - 32px);gap:5px;padding:70px 0 45px}.shop-page--cases .hanging-intro{padding:0}.shop-page--cases .hanging-intro .cases-section-index{margin-bottom:30px}.shop-page--cases .hanging-intro h2{font-size:clamp(44px,12vw,62px)!important}.shop-page--cases .hanging-stage{height:560px}.shop-page--cases .hanging-rope{height:180px}.shop-page--cases .hanging-knot{top:173px}.shop-page--cases .hanging-frame{height:390px;width:72%}.shop-page--cases .hanging-tag{right:3%;top:25%}.shop-page--cases .hanging-caption{right:0;bottom:4%}
 .shop-page--cases .cases-details-v3{grid-template-columns:1fr!important;min-height:0!important}.shop-page--cases .details-v3-media{min-height:430px;height:430px;clip-path:polygon(0 0,96% 2%,100% 94%,4% 100%)}.shop-page--cases .details-v3-copy{padding:70px 20px 80px}.shop-page--cases .details-v3-copy h2{font-size:clamp(44px,11vw,60px)!important}.shop-page--cases .details-v3-stamp{left:20px;bottom:20px}.shop-page--cases .details-v3-line{width:75px;height:75px;right:8%;top:7%}
}
@media(prefers-reduced-motion:reduce){.shop-page--cases .cases-hanging *,.shop-page--cases .cases-details-v3 *{animation:none!important;transition:none!important}.shop-page--cases .details-v3-media,.shop-page--cases .details-v3-media img{transform:none!important}}

/* CASES SECTION 03 FINAL OPEN LAYOUT */
.shop-page--cases .cv3-new{position:relative;overflow:hidden;isolation:isolate;padding:110px 7vw 0;background:#f7eee9;color:#171012;min-height:100vh}.shop-page--cases .cv3-backdrop{position:absolute;inset:0;z-index:-1;pointer-events:none}.shop-page--cases .cv3-backdrop span{position:absolute;border:1px solid rgba(164,76,84,.2);border-radius:50%;animation:cv3Float 8s ease-in-out infinite}.shop-page--cases .cv3-backdrop span:nth-child(1){width:360px;height:360px;right:-100px;top:5%;box-shadow:0 0 80px rgba(184,91,98,.14)}.shop-page--cases .cv3-backdrop span:nth-child(2){width:180px;height:180px;left:-60px;bottom:20%;animation-delay:-3s}.shop-page--cases .cv3-backdrop span:nth-child(3){width:90px;height:90px;right:34%;bottom:4%;animation-delay:-5s}.shop-page--cases .cv3-backdrop i{position:absolute;width:7px;height:7px;border-radius:50%;background:#ad5960;box-shadow:0 0 18px rgba(173,89,96,.7);animation:cv3Particle 5s ease-in-out infinite}.shop-page--cases .cv3-backdrop i:nth-of-type(1){left:18%;top:24%}.shop-page--cases .cv3-backdrop i:nth-of-type(2){right:19%;top:48%;animation-delay:-2s}.shop-page--cases .cv3-heading{max-width:900px;margin:0 auto 65px;text-align:center}.shop-page--cases .cv3-index{display:flex;justify-content:center;align-items:center;gap:14px;margin-bottom:24px;color:#3d292b}.shop-page--cases .cv3-index b{font-size:14px;border-bottom:1px solid #ad5960;padding-bottom:6px;color:#8f454d}.shop-page--cases .cv3-index span{font-size:14px;letter-spacing:.18em;font-weight:700}.shop-page--cases .cv3-heading .cases-eyebrow{font-size:14px!important;color:#9b4d55!important;letter-spacing:.18em}.shop-page--cases .cv3-heading h2{font-size:clamp(42px,6vw,72px)!important;line-height:1;margin:16px 0 20px;color:#171012!important;letter-spacing:-.04em}.shop-page--cases .cv3-heading h2 em{font-style:normal;color:#a9565e}.shop-page--cases .cv3-heading p{max-width:680px;margin:auto;color:#49383a!important;font-size:16px!important;line-height:1.7}.shop-page--cases .cv3-stage{max-width:1280px;margin:auto;position:relative}.shop-page--cases .cv3-track-line{position:absolute;left:8%;right:8%;top:48%;height:1px;background:rgba(64,35,38,.2)}.shop-page--cases .cv3-product{position:relative;display:grid;grid-template-columns:60px minmax(360px,1fr) minmax(300px,.8fr);align-items:center;gap:clamp(25px,5vw,70px);min-height:500px;padding:65px 0;border-bottom:1px solid rgba(64,35,38,.18);opacity:0;transform:translateY(60px)}.shop-page--cases .cv3-product.cv3-visible{opacity:1;transform:none;transition:opacity .9s ease,transform 1s cubic-bezier(.2,.8,.2,1)}.shop-page--cases .cv3-product:nth-child(even){grid-template-columns:60px minmax(300px,.8fr) minmax(360px,1fr)}.shop-page--cases .cv3-product:nth-child(even) .cv3-visual{order:3}.shop-page--cases .cv3-product:nth-child(even) .cv3-copy{order:2}.shop-page--cases .cv3-number{align-self:start;font-size:16px;font-weight:800;color:#9c4d55;padding-top:14px}.shop-page--cases .cv3-number:after{content:"";display:block;width:1px;height:70px;background:#ad5960;margin:12px 0 0 7px}.shop-page--cases .cv3-visual{height:420px;position:relative;display:flex;align-items:center;justify-content:center;transform:rotate(-2deg);transition:transform .6s ease}.shop-page--cases .cv3-product:nth-child(even) .cv3-visual{transform:rotate(2deg)}.shop-page--cases .cv3-visual img{width:100%;height:100%;object-fit:cover;clip-path:polygon(5% 8%,94% 0,100% 88%,8% 100%);position:relative;z-index:1;transition:transform .7s ease,filter .5s ease}.shop-page--cases .cv3-visual:before,.shop-page--cases .cv3-glow{content:"";position:absolute;width:70%;height:70%;border-radius:50%;background:rgba(183,81,91,.18);filter:blur(42px);animation:cv3Glow 4s ease-in-out infinite alternate}.shop-page--cases .cv3-visual:hover{transform:rotate(0) translateY(-10px)}.shop-page--cases .cv3-product:nth-child(even) .cv3-visual:hover{transform:rotate(0) translateY(-10px)}.shop-page--cases .cv3-visual:hover img{transform:scale(1.04);filter:saturate(1.12)}.shop-page--cases .cv3-tag{position:absolute;z-index:2;bottom:7%;left:7%;background:#171012;color:#fff;padding:9px 14px;font-size:14px;font-weight:800;letter-spacing:.1em;animation:cv3Tag 4s ease-in-out infinite}.shop-page--cases .cv3-copy{padding:25px 0}.shop-page--cases .cv3-kicker{font-size:14px!important;font-weight:800;letter-spacing:.15em;color:#9b4d55!important}.shop-page--cases .cv3-copy h3{font-size:clamp(34px,4vw,56px)!important;line-height:1;margin:12px 0 18px;color:#171012!important}.shop-page--cases .cv3-copy p{font-size:16px!important;line-height:1.7;color:#49383a!important;max-width:470px;margin:0 0 28px}.shop-page--cases .cv3-cart{background:none!important;border:0!important;border-bottom:2px solid #171012!important;border-radius:0!important;color:#171012!important;padding:10px 2px!important;font-size:15px!important;font-weight:800!important;display:inline-flex!important;gap:14px;align-items:center;box-shadow:none!important;transition:.35s ease}.shop-page--cases .cv3-cart:hover{gap:22px;color:#9b4d55!important;border-color:#9b4d55!important}.shop-page--cases .cv3-footer-line{display:flex;justify-content:space-between;max-width:1280px;margin:auto;padding:24px 0 28px;border-top:1px solid rgba(64,35,38,.18);font-size:14px;font-weight:800;letter-spacing:.15em;color:#5b4143}html.dark .shop-page--cases .cv3-new{background:#180b0d;color:#fff}html.dark .shop-page--cases .cv3-index{color:#f5dfe0}html.dark .shop-page--cases .cv3-heading h2,html.dark .shop-page--cases .cv3-copy h3{color:#fff!important}html.dark .shop-page--cases .cv3-heading p,html.dark .shop-page--cases .cv3-copy p{color:#ead9da!important}html.dark .shop-page--cases .cv3-heading .cases-eyebrow,html.dark .shop-page--cases .cv3-kicker{color:#f0a5a8!important}html.dark .shop-page--cases .cv3-product{border-color:rgba(255,255,255,.18)}html.dark .shop-page--cases .cv3-track-line{background:rgba(255,255,255,.18)}html.dark .shop-page--cases .cv3-cart{color:#fff!important;border-color:#fff!important}html.dark .shop-page--cases .cv3-footer-line{color:#ead9da;border-color:rgba(255,255,255,.18)}html.dark .shop-page--cases .cv3-tag{background:#fff;color:#180b0d}@keyframes cv3Float{0%,100%{transform:translateY(0)}50%{transform:translate(20px,-18px)}}@keyframes cv3Glow{from{opacity:.35;transform:scale(.88)}to{opacity:.9;transform:scale(1.12)}}@keyframes cv3Particle{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-28px);opacity:1}}@keyframes cv3Tag{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@media(max-width:900px){.shop-page--cases .cv3-product,.shop-page--cases .cv3-product:nth-child(even){grid-template-columns:40px 1fr;gap:18px;padding:55px 0}.shop-page--cases .cv3-visual,.shop-page--cases .cv3-product:nth-child(even) .cv3-visual{grid-column:2;grid-row:1;height:380px;order:1}.shop-page--cases .cv3-copy,.shop-page--cases .cv3-product:nth-child(even) .cv3-copy{grid-column:2;grid-row:2;order:2}.shop-page--cases .cv3-track-line{display:none}}@media(max-width:600px){.shop-page--cases .cv3-new{padding:75px 18px 0}.shop-page--cases .cv3-heading{margin-bottom:35px}.shop-page--cases .cv3-heading h2{font-size:clamp(36px,12vw,52px)!important}.shop-page--cases .cv3-heading p,.shop-page--cases .cv3-copy p{font-size:14px!important}.shop-page--cases .cv3-product,.shop-page--cases .cv3-product:nth-child(even){grid-template-columns:30px 1fr;gap:10px;min-height:0}.shop-page--cases .cv3-visual,.shop-page--cases .cv3-product:nth-child(even) .cv3-visual{height:300px}.shop-page--cases .cv3-copy h3{font-size:34px!important}.shop-page--cases .cv3-footer-line{font-size:12px;letter-spacing:.07em}}@media(prefers-reduced-motion:reduce){.shop-page--cases .cv3-new *{animation:none!important;transition:none!important}.shop-page--cases .cv3-product{opacity:1!important;transform:none!important}}


/* =========================================================
   CASES SECTION 03 — SCROLL FLIP GALLERY
   No side-by-side flow, no glass/transparent boxes.
   Each product image flips 180deg on scroll and stays there.
   ========================================================= */
.shop-page--cases .cv3-flip-gallery{position:relative;overflow:hidden;isolation:isolate;min-height:100vh;padding:110px 7vw 0;background:#f8eee9;color:#170f10}
.shop-page--cases .cv3-flip-gallery .flip-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.shop-page--cases .cv3-flip-gallery .flip-bg span{position:absolute;border:1px solid rgba(119,49,57,.20);border-radius:50%;box-shadow:0 0 80px rgba(169,72,83,.10);animation:cvFlipFloat 10s ease-in-out infinite}
.shop-page--cases .cv3-flip-gallery .flip-bg span:nth-child(1){width:520px;height:520px;right:-180px;top:5%}
.shop-page--cases .cv3-flip-gallery .flip-bg span:nth-child(2){width:250px;height:250px;left:-120px;top:40%;animation-delay:-3s}
.shop-page--cases .cv3-flip-gallery .flip-bg span:nth-child(3){width:150px;height:150px;right:25%;bottom:5%;animation-delay:-6s}
.shop-page--cases .cv3-flip-gallery .flip-bg i{position:absolute;width:7px;height:7px;border-radius:50%;background:#ad5960;box-shadow:0 0 20px rgba(173,89,96,.8);animation:cvFlipParticle 5s ease-in-out infinite}
.shop-page--cases .cv3-flip-gallery .flip-bg i:nth-of-type(1){left:18%;top:19%}.shop-page--cases .cv3-flip-gallery .flip-bg i:nth-of-type(2){right:18%;top:47%;animation-delay:-2s}.shop-page--cases .cv3-flip-gallery .flip-bg i:nth-of-type(3){left:45%;bottom:9%;animation-delay:-4s}
.shop-page--cases .flip-intro{max-width:850px;margin:0 auto 55px;text-align:center}
.shop-page--cases .flip-index{display:flex;justify-content:center;align-items:center;gap:14px;margin-bottom:22px;color:#342427}
.shop-page--cases .flip-index b{font-size:15px;color:#8e414a;border-bottom:1px solid #a95760;padding-bottom:6px}.shop-page--cases .flip-index span{font-size:14px;letter-spacing:.16em;font-weight:800}
.shop-page--cases .flip-intro .cases-eyebrow{font-size:14px!important;color:#934851!important;letter-spacing:.18em}
.shop-page--cases .flip-intro h2{margin:15px 0 18px;font-size:clamp(42px,6vw,68px)!important;line-height:.98;letter-spacing:-.045em;color:#170f10!important}
.shop-page--cases .flip-intro h2 em{font-style:normal;color:#a95760}
.shop-page--cases .flip-intro p{max-width:680px;margin:auto;font-size:16px!important;line-height:1.75;color:#493739!important}
.shop-page--cases .flip-scroll-hint{margin-top:25px;display:inline-flex;align-items:center;gap:11px;color:#5d4043;font-size:14px;font-weight:800;letter-spacing:.12em}.shop-page--cases .flip-scroll-hint span{width:9px;height:9px;border-radius:50%;background:#ad5960;box-shadow:0 0 18px rgba(173,89,96,.65);animation:cvFlipPulse 1.8s ease-in-out infinite}
.shop-page--cases .flip-products{max-width:1250px;margin:0 auto}
.shop-page--cases .flip-product{position:relative;display:grid;grid-template-columns:55px minmax(420px,1fr);grid-template-areas:"num visual" "num copy";justify-content:center;min-height:760px;padding:70px 0;border-top:1px solid rgba(53,31,34,.17);opacity:0;transform:translateY(60px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .flip-product.is-visible{opacity:1;transform:none}.shop-page--cases .flip-number{grid-area:num;font-size:16px;font-weight:900;color:#934851;padding-top:18px}.shop-page--cases .flip-visual-wrap{grid-area:visual;position:relative;width:min(760px,100%);height:520px;margin:0 auto;display:grid;place-items:center;perspective:1400px}
.shop-page--cases .flip-image{position:relative;width:min(650px,88%);height:440px;transform-style:preserve-3d;transition:transform 1.35s cubic-bezier(.16,1,.3,1);will-change:transform;filter:drop-shadow(0 35px 45px rgba(50,20,23,.18))}
.shop-page--cases .flip-image.is-flipped{transform:rotate(180deg) rotateZ(-2deg) scale(.97)}
.shop-page--cases .flip-face{position:absolute;inset:0;backface-visibility:hidden;transform-style:preserve-3d;overflow:hidden;clip-path:polygon(5% 4%,96% 0,100% 91%,9% 100%);background:#ddd;box-shadow:0 28px 55px rgba(30,12,15,.18)}
.shop-page--cases .flip-face img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s ease,filter .5s ease}.shop-page--cases .flip-image:hover .flip-face img{transform:scale(1.035)}
.shop-page--cases .flip-back{transform:rotateY(180deg)}
.shop-page--cases .flip-image-label{position:absolute;left:7%;bottom:4%;z-index:5;background:#170f10;color:#fff;padding:10px 15px;font-size:14px;font-weight:900;letter-spacing:.12em;box-shadow:0 12px 28px rgba(0,0,0,.18);animation:cvFlipLabel 3.8s ease-in-out infinite}
.shop-page--cases .flip-orbit{position:absolute;border:1px solid rgba(157,72,80,.35);border-radius:50%;pointer-events:none}.shop-page--cases .orbit-a{width:510px;height:510px;animation:cvFlipSpin 18s linear infinite}.shop-page--cases .orbit-b{width:340px;height:340px;border-style:dashed;animation:cvFlipSpin 12s linear infinite reverse}
.shop-page--cases .flip-copy{grid-area:copy;width:min(700px,100%);margin:15px auto 0;padding:0 25px 35px;text-align:center}.shop-page--cases .flip-kicker{font-size:14px!important;font-weight:900;letter-spacing:.15em;color:#934851!important}.shop-page--cases .flip-copy h3{font-size:clamp(38px,5vw,62px)!important;line-height:1;margin:12px 0 15px;color:#170f10!important}.shop-page--cases .flip-copy p{max-width:620px;margin:0 auto 25px;font-size:16px!important;line-height:1.75;color:#493739!important}
.shop-page--cases .flip-cart{display:inline-flex!important;align-items:center;gap:13px;background:transparent!important;border:0!important;border-bottom:2px solid #170f10!important;border-radius:0!important;color:#170f10!important;padding:11px 3px!important;font-size:15px!important;font-weight:900!important;box-shadow:none!important;transition:gap .35s ease,color .35s ease,border-color .35s ease}.shop-page--cases .flip-cart:hover{gap:21px;color:#934851!important;border-color:#934851!important}
.shop-page--cases .flip-footer{max-width:1250px;margin:auto;display:flex;justify-content:space-between;padding:25px 0 30px;border-top:1px solid rgba(53,31,34,.17);font-size:14px;font-weight:900;letter-spacing:.15em;color:#5d4043}
@keyframes cvFlipFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(24px,-18px)}}@keyframes cvFlipParticle{0%,100%{transform:translateY(0);opacity:.35}50%{transform:translateY(-30px);opacity:1}}@keyframes cvFlipPulse{0%,100%{transform:scale(.75);opacity:.45}50%{transform:scale(1.35);opacity:1}}@keyframes cvFlipSpin{to{transform:rotate(360deg)}}@keyframes cvFlipLabel{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
html.dark .shop-page--cases .cv3-flip-gallery{background:#180b0d;color:#fff}html.dark .shop-page--cases .flip-index{color:#f3dfe0}html.dark .shop-page--cases .flip-intro h2,html.dark .shop-page--cases .flip-copy h3{color:#fff!important}html.dark .shop-page--cases .flip-intro p,html.dark .shop-page--cases .flip-copy p{color:#ead9da!important}html.dark .shop-page--cases .flip-intro .cases-eyebrow,html.dark .shop-page--cases .flip-kicker{color:#f0a5a8!important}html.dark .shop-page--cases .flip-product{border-color:rgba(255,255,255,.17)}html.dark .shop-page--cases .flip-scroll-hint,html.dark .shop-page--cases .flip-footer{color:#ead9da}html.dark .shop-page--cases .flip-cart{color:#fff!important;border-color:#fff!important}html.dark .shop-page--cases .flip-image-label{background:#fff;color:#180b0d}
@media(max-width:767px){.shop-page--cases .cv3-flip-gallery{padding:80px 18px 0}.shop-page--cases .flip-intro h2{font-size:clamp(38px,12vw,54px)!important}.shop-page--cases .flip-intro p,.shop-page--cases .flip-copy p{font-size:14px!important}.shop-page--cases .flip-product{grid-template-columns:30px 1fr;min-height:0;padding:55px 0}.shop-page--cases .flip-visual-wrap{height:350px}.shop-page--cases .flip-image{height:290px;width:94%}.shop-page--cases .orbit-a{width:320px;height:320px}.shop-page--cases .orbit-b{width:220px;height:220px}.shop-page--cases .flip-copy{padding:0 5px 35px}.shop-page--cases .flip-copy h3{font-size:38px!important}.shop-page--cases .flip-footer{font-size:12px;letter-spacing:.07em}}
@media(prefers-reduced-motion:reduce){.shop-page--cases .cv3-flip-gallery *{animation:none!important;transition:none!important}.shop-page--cases .flip-product{opacity:1!important;transform:none!important}.shop-page--cases .flip-image{transform:none!important}}

/* ========================================================================
   CASES — SECTION 3 RESTRUCTURE: CASE ARCHITECTURE
   Deliberately different from Section 4's hanging product lineup.
   ======================================================================== */
.shop-page--cases .case-architecture{
  position:relative; overflow:hidden; padding:clamp(80px,9vw,125px) 7vw clamp(70px,8vw,105px);
  background:#f7ecea; color:#170f10; border-top:1px solid rgba(48,22,24,.12); border-bottom:1px solid rgba(48,22,24,.12);
}
.shop-page--cases .case-architecture::before{
  content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(167,75,84,.14);border-radius:50%;right:-180px;top:10%;animation:caseArchOrbit 18s linear infinite;
}
.shop-page--cases .case-architecture::after{
  content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(180deg,transparent,rgba(170,77,85,.05));pointer-events:none;
}
.shop-page--cases .architecture-head{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:end;margin-bottom:75px}
.shop-page--cases .architecture-head h2{margin:14px 0 0;font:800 clamp(40px,5.5vw,76px)/.96 "Space Grotesk",sans-serif;letter-spacing:-.04em;color:#170f10}
.shop-page--cases .architecture-head h2 em{font-style:normal;color:#a84e57}
.shop-page--cases .architecture-head p{max-width:620px;margin:0;font-size:16px;line-height:1.8;font-weight:650;color:#4b3638}
.shop-page--cases .architecture-rail{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:0;min-height:440px;align-items:start}
.shop-page--cases .architecture-line{position:absolute;left:3%;right:3%;top:80px;height:2px;background:linear-gradient(90deg,transparent,#a95760 8%,#a95760 92%,transparent);transform-origin:left;animation:caseRailDraw 1.5s ease both}
.shop-page--cases .architecture-step{position:relative;padding:0 28px 0 0;min-height:360px;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.shop-page--cases .architecture-step:nth-of-type(odd){transform:translateY(0)}
.shop-page--cases .architecture-step-lift{transform:translateY(95px)}
.shop-page--cases .architecture-step:hover{transform:translateY(-10px)}
.shop-page--cases .architecture-step-lift:hover{transform:translateY(85px)}
.shop-page--cases .architecture-node{position:relative;z-index:3;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#170f10;color:#fff;font:800 15px "Space Grotesk",sans-serif;box-shadow:0 0 0 10px #f7ecea,0 0 0 11px rgba(169,78,87,.28);margin:49px 0 28px;transition:transform .35s ease,box-shadow .35s ease}
.shop-page--cases .architecture-step:hover .architecture-node{transform:scale(1.1);box-shadow:0 0 0 10px #f7ecea,0 0 0 14px rgba(169,78,87,.18)}
.shop-page--cases .architecture-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.shop-page--cases .architecture-step-top small{font-size:14px;font-weight:800;letter-spacing:.16em;color:#a84e57}
.shop-page--cases .architecture-step-top i{font-size:18px;color:#a84e57}
.shop-page--cases .architecture-step h3{font:800 24px/1.1 "Space Grotesk",sans-serif;color:#170f10;margin:0 0 13px}
.shop-page--cases .architecture-step p{font-size:15px;line-height:1.75;font-weight:600;color:#4b3638;margin:0;max-width:280px}
.shop-page--cases .architecture-step ul{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:8px}
.shop-page--cases .architecture-step li{font-size:14px;font-weight:700;color:#6a484b;position:relative;padding-left:18px}
.shop-page--cases .architecture-step li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:#a95760;box-shadow:0 0 0 4px rgba(169,87,96,.1)}
.shop-page--cases .architecture-footer{position:relative;z-index:2;margin-top:35px;padding-top:22px;border-top:1px solid rgba(48,22,24,.18);display:flex;justify-content:flex-end;align-items:center;gap:16px;font-size:14px;font-weight:800;letter-spacing:.12em;color:#8d4b52}
.shop-page--cases .architecture-footer b{font-size:20px;color:#a95760}
@keyframes caseRailDraw{from{transform:scaleX(0);opacity:.2}to{transform:scaleX(1);opacity:1}}
@keyframes caseArchOrbit{to{transform:rotate(360deg)}}

/* Section 4 remains visually distinct: suspended product lineup, not another split/timeline. */
.shop-page--cases .case-lineup{position:relative;overflow:hidden}
.shop-page--cases .case-lineup .lineup-head{position:relative;z-index:2}
.shop-page--cases .case-lineup .hanging-rail{position:relative;z-index:2}

/* Strong scoped contrast for the new section */
html.dark .shop-page--cases .case-architecture{background:#0c0809;color:#f9eded;border-color:rgba(255,255,255,.12)}
html.dark .shop-page--cases .case-architecture::after{background:linear-gradient(180deg,transparent,rgba(240,137,143,.06))}
html.dark .shop-page--cases .architecture-head h2,
html.dark .shop-page--cases .architecture-step h3{color:#fff!important}
html.dark .shop-page--cases .architecture-head p,
html.dark .shop-page--cases .architecture-step p{color:#e0c8c9!important}
html.dark .shop-page--cases .architecture-step li{color:#d7b5b7!important}
html.dark .shop-page--cases .architecture-node{background:#fff;color:#170f10;box-shadow:0 0 0 10px #0c0809,0 0 0 11px rgba(240,137,143,.35)}
html.dark .shop-page--cases .architecture-step:hover .architecture-node{box-shadow:0 0 0 10px #0c0809,0 0 0 14px rgba(240,137,143,.2)}
html.dark .shop-page--cases .architecture-footer{border-color:rgba(255,255,255,.16);color:#f09197}

@media(max-width:900px){
  .shop-page--cases .architecture-head{grid-template-columns:1fr;gap:20px;margin-bottom:45px}
  .shop-page--cases .architecture-rail{grid-template-columns:1fr 1fr;row-gap:45px}
  .shop-page--cases .architecture-line{left:7%;right:7%;top:70px}
  .shop-page--cases .architecture-step{min-height:330px;padding-right:22px}
  .shop-page--cases .architecture-step-lift{transform:translateY(50px)}
  .shop-page--cases .architecture-step-lift:hover{transform:translateY(40px)}
}
@media(max-width:620px){
  .shop-page--cases .case-architecture{padding:65px 20px 55px}
  .shop-page--cases .architecture-head h2{font-size:clamp(38px,12vw,56px)}
  .shop-page--cases .architecture-rail{grid-template-columns:1fr;gap:0;padding-left:30px}
  .shop-page--cases .architecture-line{left:7px;right:auto;top:20px;bottom:20px;width:2px;height:auto;background:linear-gradient(180deg,transparent,#a95760 8%,#a95760 92%,transparent);transform-origin:top;animation:none}
  .shop-page--cases .architecture-step,.shop-page--cases .architecture-step-lift{min-height:0;padding:0 0 42px;transform:none!important}
  .shop-page--cases .architecture-node{width:48px;height:48px;margin:0 0 18px;margin-left:-54px;box-shadow:0 0 0 7px #f7ecea,0 0 0 8px rgba(169,78,87,.28)}
  html.dark .shop-page--cases .architecture-node{box-shadow:0 0 0 7px #0c0809,0 0 0 8px rgba(240,137,143,.35)}
  .shop-page--cases .architecture-step h3{font-size:21px}
  .shop-page--cases .architecture-step p{font-size:15px;max-width:none}
  .shop-page--cases .architecture-footer{justify-content:flex-start;flex-wrap:wrap;gap:9px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){
 .shop-page--cases .case-architecture::before,.shop-page--cases .architecture-line{animation:none!important}
 .shop-page--cases .architecture-step,.shop-page--cases .architecture-step-lift{transition:none!important;transform:none!important}
}


/* =========================================================
   VOLTIVA CART — full-width editorial cart experience
   Kept in the main stylesheet so the project uses one shared UI system.
   ========================================================= */
.cart-page{--cart-accent:#ff8f93;--cart-dark:#171010}
.cart-hero{position:relative;min-height:390px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(120deg,#1a1010 0%,#301919 48%,#6d3b3b 100%);color:#fff}
.cart-hero:before,.cart-hero:after{content:"";position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none}
.cart-hero:before{width:480px;height:480px;right:-100px;top:-170px;background:radial-gradient(circle,rgba(255,143,147,.42),transparent 68%);animation:cartOrb 8s ease-in-out infinite}
.cart-hero:after{width:300px;height:300px;left:-80px;bottom:-180px;background:radial-gradient(circle,rgba(255,255,255,.13),transparent 68%);animation:cartOrb 10s ease-in-out infinite reverse}
.cart-hero-noise{position:absolute;inset:0;opacity:.14;background-image:radial-gradient(rgba(255,255,255,.7) .7px,transparent .7px);background-size:14px 14px;mask-image:linear-gradient(90deg,#000,transparent 85%)}
.cart-hero-inner{width:min(1240px,calc(100% - 48px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:50px;position:relative;z-index:1}
.cart-kicker{font-size:12px;letter-spacing:.16em;font-weight:800;display:inline-flex;align-items:center;gap:8px;text-transform:uppercase}
.cart-hero h1{font:700 clamp(42px,6vw,76px)/.98 "Space Grotesk",sans-serif;letter-spacing:-.055em;margin:16px 0 18px;max-width:760px}
.cart-hero p{font-size:16px;max-width:650px;margin:0;color:rgba(255,255,255,.78)}
.cart-hero-orb{width:170px;height:170px;min-width:170px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;background:rgba(255,255,255,.06);backdrop-filter:blur(14px);box-shadow:inset 0 0 60px rgba(255,143,147,.08);animation:cartFloat 5s ease-in-out infinite}
.cart-hero-orb span{font:700 22px "Space Grotesk",sans-serif}.cart-hero-orb i{font-size:18px;animation:cartArrow 1.5s ease-in-out infinite}
.cart-shell{width:min(1240px,calc(100% - 48px));margin:0 auto;padding:70px 0 90px}
.cart-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}
.cart-toolbar h2,.checkout-heading h2,.cart-summary-card h2,.cart-empty h2{font:700 clamp(28px,4vw,46px)/1.05 "Space Grotesk",sans-serif;letter-spacing:-.04em;margin:8px 0 0}
.cart-clear,.summary-continue{border:0;background:none;color:var(--ink);font-weight:800;font-size:13px;padding:10px 0;cursor:pointer;transition:transform .25s,color .25s}
.cart-clear:hover,.summary-continue:hover{transform:translateX(5px);color:var(--accent)}
.cart-items{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.cart-item{display:grid;grid-template-columns:150px 1fr auto;gap:28px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);opacity:0;transform:translateY(22px);animation:cartReveal .65s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--cart-delay)}
.cart-item-media{height:150px;overflow:hidden;background:var(--surface);clip-path:polygon(8% 0,92% 0,100% 15%,100% 85%,92% 100%,8% 100%,0 85%,0 15%);position:relative}
.cart-item-media:after{content:"";position:absolute;inset:-50% -20%;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);transform:translateX(-100%);animation:cartShine 3.2s ease-in-out infinite}
.cart-item-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.cart-item:hover .cart-item-media img{transform:scale(1.08) rotate(-1deg)}
.cart-item-info h3{font:700 25px/1.15 "Space Grotesk",sans-serif;margin:7px 0 7px}
.cart-item-info p{font-size:14px;color:var(--muted);margin:0 0 12px}
.cart-item-info strong{font-size:18px}
.cart-item-kicker{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--accent)}
.cart-item-actions{display:flex;align-items:center;gap:18px}
.qty-control{display:flex;align-items:center;border:1px solid var(--line);background:var(--surface);height:44px}
.qty-control button{width:42px;height:42px;background:none;color:var(--ink);font-size:21px;transition:background .2s}
.qty-control button:hover{background:var(--accent);color:#fff}
.qty-control b{min-width:38px;text-align:center;font-size:14px}
.cart-remove{border:0;background:none;color:var(--muted);font-size:12px;font-weight:800;display:flex;gap:7px;align-items:center;cursor:pointer}
.cart-remove:hover{color:#ef4444}
.cart-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:50px;padding-top:70px}
.checkout-panel{border-top:2px solid var(--ink);padding-top:22px}
.checkout-heading p{color:var(--muted);font-size:14px;margin:12px 0 28px}
#checkoutForm{display:grid;grid-template-columns:1fr 1fr;gap:20px 26px}
#checkoutForm label{font-size:12px;font-weight:800;display:flex;flex-direction:column;gap:8px}
#checkoutForm label:nth-child(4),.cart-submit{grid-column:1/-1}
#checkoutForm input,#checkoutForm textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:13px 14px;border-radius:12px;outline:none;resize:vertical;font-size:14px;transition:border .25s,transform .25s,box-shadow .25s}
#checkoutForm input:focus,#checkoutForm textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(255,143,147,.12);transform:translateY(-2px)}
.cart-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--ink);color:var(--bg);border:0;border-radius:12px;padding:14px 20px;font-size:13px;font-weight:800;transition:transform .3s,box-shadow .3s}
.cart-primary:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(0,0,0,.16)}
.cart-submit{width:100%;margin-top:4px}
.cart-summary-card{align-self:start;position:sticky;top:105px;background:var(--surface);padding:28px;border-left:3px solid var(--accent)}
.cart-summary-card h2{font-size:30px;margin-bottom:28px}
.summary-line{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}
.summary-line strong{font-weight:800}.summary-total{font-size:17px;border-bottom:0;padding-top:22px}.summary-total strong{font-size:25px}
.cart-summary-card>p{font-size:12px;color:var(--muted);margin:12px 0 24px}.summary-continue{display:inline-flex;gap:8px;align-items:center}
.cart-empty{text-align:center;padding:80px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cart-empty-art{width:110px;height:110px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;margin:0 auto 28px;font-size:35px;color:var(--accent);animation:cartFloat 4s ease-in-out infinite}
.cart-empty p{max-width:520px;margin:15px auto 25px;color:var(--muted);font-size:14px}
.checkout-success{margin-top:25px;padding:25px;border-left:3px solid var(--accent);background:var(--surface);animation:cartReveal .6s ease both}
.checkout-success i{font-size:28px;color:var(--accent)}.checkout-success h3{font:700 24px "Space Grotesk",sans-serif;margin:8px 0}.checkout-success p{margin:0 0 5px}.checkout-success span{font-size:12px;color:var(--muted)}
@keyframes cartReveal{to{opacity:1;transform:translateY(0)}}@keyframes cartFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes cartOrb{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-25px,18px,0) scale(1.08)}}@keyframes cartArrow{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes cartShine{0%,55%{transform:translateX(-120%)}75%,100%{transform:translateX(120%)}}@media(max-width:800px){.cart-hero{min-height:430px}.cart-hero-inner{width:min(100% - 32px,620px);flex-direction:column;align-items:flex-start}.cart-hero-orb{align-self:flex-end;width:120px;height:120px;min-width:120px}.cart-hero-orb span{font-size:15px}.cart-shell{width:min(100% - 32px,700px);padding:52px 0 70px}.cart-toolbar{align-items:flex-start}.cart-item{grid-template-columns:90px 1fr;gap:16px}.cart-item-media{height:90px}.cart-item-actions{grid-column:1/-1;justify-content:space-between}.cart-bottom{grid-template-columns:1fr;gap:45px;padding-top:50px}.cart-summary-card{position:relative;top:auto}#checkoutForm{grid-template-columns:1fr}#checkoutForm label:nth-child(4),.cart-submit{grid-column:auto}.cart-submit{width:100%}}
@media(max-width:480px){.cart-hero h1{font-size:42px}.cart-toolbar{display:block}.cart-clear{margin-top:16px}.cart-item-info h3{font-size:20px}.cart-item-info p{font-size:12px}.cart-item-actions{gap:10px}.cart-remove span{display:none}.cart-summary-card{padding:22px}}
/* =========================================================
   VOLTIVA CART — FINAL THEME / VISIBILITY OVERRIDES
   These rules intentionally live at the end of the shared stylesheet
   so the cart cannot inherit invisible colors from another page.
   ========================================================= */
.cart-page{
  --cart-bg:#f7e8e8;
  --cart-surface:#fbeeee;
  --cart-ink:#241313;
  --cart-muted:#704646;
  --cart-line:rgba(36,19,19,.16);
  --cart-accent:#a94f56;
  background:var(--cart-bg)!important;
  color:var(--cart-ink)!important;
}
.cart-page main{background:var(--cart-bg)!important;color:var(--cart-ink)!important}
.cart-page .cart-hero{
  min-height:390px!important;
  background:linear-gradient(118deg,#241313 0%,#54282b 48%,#a95b60 100%)!important;
  color:#fff!important;
}
.cart-page .cart-hero h1,
.cart-page .cart-hero p,
.cart-page .cart-hero .cart-kicker,
.cart-page .cart-hero-orb,
.cart-page .cart-hero-orb span,
.cart-page .cart-hero-orb i{color:#fff!important}
.cart-page .cart-hero p{color:rgba(255,255,255,.86)!important}
.cart-page .cart-shell{background:var(--cart-bg)!important;color:var(--cart-ink)!important}
.cart-page .cart-toolbar h2,
.cart-page .checkout-heading h2,
.cart-page .cart-summary-card h2,
.cart-page .cart-empty h2,
.cart-page .cart-item-info h3,
.cart-page .cart-item-info strong,
.cart-page .summary-line,
.cart-page .summary-line strong,
.cart-page #checkoutForm label{color:var(--cart-ink)!important}
.cart-page .cart-kicker,
.cart-page .cart-item-kicker{color:var(--cart-accent)!important}
.cart-page .cart-item-info p,
.cart-page .checkout-heading p,
.cart-page .cart-summary-card>p,
.cart-page .cart-empty p{color:var(--cart-muted)!important}
.cart-page .cart-clear,
.cart-page .summary-continue{color:var(--cart-ink)!important}
.cart-page .cart-clear:hover,
.cart-page .summary-continue:hover{color:var(--cart-accent)!important}
.cart-page .cart-items{border-color:var(--cart-line)!important}
.cart-page .cart-item{border-color:var(--cart-line)!important}
.cart-page .qty-control{background:var(--cart-surface)!important;border-color:var(--cart-line)!important}
.cart-page .qty-control button,
.cart-page .qty-control b{color:var(--cart-ink)!important}
.cart-page .qty-control button:hover{background:var(--cart-accent)!important;color:#fff!important}
.cart-page .cart-remove{color:var(--cart-muted)!important}
.cart-page .cart-remove:hover{color:#c53030!important}
.cart-page .cart-summary-card,
.cart-page .checkout-success{background:var(--cart-surface)!important;color:var(--cart-ink)!important;border-color:var(--cart-accent)!important}
.cart-page .checkout-panel{border-top-color:var(--cart-ink)!important}
.cart-page #checkoutForm input,
.cart-page #checkoutForm textarea{
  background:#fff7f7!important;
  color:var(--cart-ink)!important;
  border-color:var(--cart-line)!important;
}
.cart-page #checkoutForm input::placeholder,
.cart-page #checkoutForm textarea::placeholder{color:#866363!important;opacity:1!important}
.cart-page .cart-primary{background:var(--cart-ink)!important;color:#fff!important}
.cart-page .cart-primary:hover{background:#3a1c1c!important;color:#fff!important}
.cart-page .cart-empty{border-color:var(--cart-line)!important;color:var(--cart-ink)!important}
.cart-page .cart-empty-art{border-color:var(--cart-line)!important;color:var(--cart-accent)!important}

/* Cart header: always readable in both themes. */
.cart-page .site-header{background:rgba(28,13,13,.96)!important;color:#fff!important;border-bottom-color:rgba(255,255,255,.12)!important}
.cart-page .site-header .brand,
.cart-page .site-header .nav-link,
.cart-page .site-header .login-link,
.cart-page .site-header .icon-btn,
.cart-page .site-header .pill-btn{color:#fff!important}
.cart-page .site-header .nav-link:hover,
.cart-page .site-header .login-link:hover{color:#ff9b9f!important}
.cart-page .site-header .dropdown{background:#241313!important;border-color:rgba(255,255,255,.14)!important}
.cart-page .site-header .dropdown a{color:#f9e9e9!important}
.cart-page .site-header .dropdown a:hover{background:#3b1c1e!important;color:#fff!important}

/* Existing Voltiva footer, shared visual language. */
.cart-page .cv-footer{margin:0!important}

@media(max-width:800px){
  .cart-page .cart-hero{min-height:430px!important}
  .cart-page .cart-shell{width:min(100% - 32px,700px)!important}
}
@media(max-width:480px){
  .cart-page .cart-hero h1{font-size:42px!important}
  .cart-page .cart-item-info h3{font-size:20px!important}
}


/* ===== MERGED: cases-redesign.css ===== */
/* ==========================================================================
   VOLTIVA CASES — COMPLETE PAGE REDESIGN & ENHANCED ARCHITECTURE / LINEUP
   High contrast (Dark & Light), All text > 13px (Min 14px), 3D Interactive Animations
   ========================================================================== */

:root {
  --c-bg: #fcf4f4;
  --c-surface: #ffffff;
  --c-surface-card: #f9eded;
  --c-ink: #180b0c;
  --c-muted: #4a2c2e;
  --c-accent: #a84e57;
  --c-accent-light: #bd6f70;
  --c-accent-glow: rgba(168, 78, 87, 0.22);
  --c-line: rgba(90, 30, 36, 0.16);
  --c-card-shadow: 0 20px 45px rgba(60, 20, 24, 0.08);
}

html.dark,
html.dark .cases-new {
  --c-bg: #0c0707;
  --c-surface: #170e0f;
  --c-surface-card: #221415;
  --c-ink: #fff5f5;
  --c-muted: #e8c8c8;
  --c-accent: #ff8e92;
  --c-accent-light: #ffb0b3;
  --c-accent-glow: rgba(255, 142, 146, 0.28);
  --c-line: rgba(255, 142, 146, 0.22);
  --c-card-shadow: 0 24px 50px rgba(0, 0, 0, 0.7);
  background: #0c0707;
  color: #fff5f5;
}

/* Base resets & typography enforcing > 13px (minimum 14px) */
.cases-new {
  background: var(--c-bg);
  color: var(--c-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  overflow-x: hidden;
}

.cases-new * {
  box-sizing: border-box;
}

.cases-new section {
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--c-line);
  position: relative;
}

.cases-new p,
.cases-new li,
.cases-new span,
.cases-new strong,
.cases-new a,
.cases-new button,
.cases-new summary,
.cases-new small,
.cases-new b,
.cases-new label {
  font-size: 15px;
  line-height: 1.65;
}

.cases-new p {
  color: var(--c-muted);
  font-weight: 500;
  margin: 0 0 16px;
}

.cases-new h1,
.cases-new h2,
.cases-new h3,
.cases-new h4 {
  font-family: "Space Grotesk", Inter, sans-serif;
  color: var(--c-ink);
  margin: 0;
  font-weight: 800;
  letter-spacing: -0.035em;
}

.cases-new h1 {
  font-size: clamp(44px, 6vw, 82px);
  line-height: 0.98;
}

.cases-new h2 {
  font-size: clamp(34px, 4.5vw, 56px);
  line-height: 1.05;
}

.cases-new h3 {
  font-size: 24px;
  line-height: 1.2;
}

.cases-new em {
  font-style: normal;
  color: var(--c-accent);
}

.case-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--c-accent) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.case-kicker:before {
  content: "";
  width: 28px;
  height: 2px;
  background: currentColor;
}

/* ==========================================================================
   GLOBAL NAVBAR CONTRAST & TYPOGRAPHY FIXES (High visibility & size > 13px)
   ========================================================================== */
.shop-page--cases .site-header {
  position: sticky;
  top: 0;
  z-index: 1200;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--c-line);
  transition: background 0.3s ease, border-color 0.3s ease;
}

html:not(.dark) .shop-page--cases .site-header {
  background: rgba(252, 244, 244, 0.94);
  color: #180b0c;
}

html.dark .shop-page--cases .site-header {
  background: rgba(12, 7, 7, 0.95) !important;
  color: #fff5f5 !important;
  border-bottom: 1px solid rgba(255, 142, 146, 0.22) !important;
}

.shop-page--cases .nav-link,
.shop-page--cases .has-dropdown > button {
  font-size: 15px !important;
  font-weight: 600;
  color: var(--c-ink) !important;
  padding: 12px 14px;
  transition: color 0.2s ease;
}

.shop-page--cases .nav-link i {
  font-size: 14px !important;
}

/* Dark Mode hover/active fixes: replaces invisible #623434 with glowing accent */
html.dark .shop-page--cases .nav-link,
html.dark .shop-page--cases .has-dropdown > button,
html.dark .shop-page--cases .brand,
html.dark .shop-page--cases .login-link {
  color: #fff5f5 !important;
}

html.dark .shop-page--cases .nav-link:hover,
html.dark .shop-page--cases .nav-link.active,
html.dark .shop-page--cases .has-dropdown:hover > button {
  color: #ff8e92 !important;
  text-shadow: 0 0 14px rgba(255, 142, 146, 0.45);
}

html:not(.dark) .shop-page--cases .nav-link:hover,
html:not(.dark) .shop-page--cases .nav-link.active,
html:not(.dark) .shop-page--cases .has-dropdown:hover > button {
  color: #a84e57 !important;
}

/* Dropdown menu typography (>13px) and high contrast */
.shop-page--cases .dropdown {
  min-width: 220px;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid var(--c-line);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.18);
  background: var(--c-surface);
}

html.dark .shop-page--cases .dropdown {
  background: #1a0e10 !important;
  border: 1px solid rgba(255, 142, 146, 0.25) !important;
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.7) !important;
}

.shop-page--cases .dropdown a {
  font-size: 15px !important;
  font-weight: 600;
  padding: 11px 16px;
  border-radius: 10px;
  color: var(--c-ink) !important;
  transition: all 0.2s ease;
  display: block;
}

html:not(.dark) .shop-page--cases .dropdown a:hover,
html:not(.dark) .shop-page--cases .dropdown a.active {
  background: rgba(168, 78, 87, 0.12) !important;
  color: #8c353d !important;
}

html.dark .shop-page--cases .dropdown a {
  color: #fff5f5 !important;
}

html.dark .shop-page--cases .dropdown a:hover,
html.dark .shop-page--cases .dropdown a.active {
  background: rgba(255, 142, 146, 0.22) !important;
  color: #ffb0b3 !important;
}

/* Action buttons and badge sizes (>13px) */
.shop-page--cases .pill-btn {
  font-size: 14px !important;
  font-weight: 800 !important;
  padding: 0 14px;
  height: 40px;
  background: var(--c-surface-card);
  color: var(--c-ink);
  border: 1px solid var(--c-line);
}

html.dark .shop-page--cases .pill-btn,
html.dark .shop-page--cases .icon-btn {
  background: #201314 !important;
  color: #fff5f5 !important;
  border-color: rgba(255, 142, 146, 0.25) !important;
}

.shop-page--cases .login-link {
  font-size: 15px !important;
  font-weight: 700;
}

.shop-page--cases .cart-count {
  font-size: 14px !important;
  font-weight: 800;
  min-width: 22px;
  height: 22px;
  line-height: 22px;
  padding: 0 4px;
  border-radius: 11px;
  top: -7px;
  right: -7px;
  background: #ef4444;
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(239, 68, 68, 0.45);
}

/* Mobile Drawer fixes */
.mobile-nav a,
.mobile-group > button {
  font-size: 18px !important;
}

.mobile-group > div a {
  font-size: 16px !important;
}

.drawer-login {
  font-size: 15px !important;
}

/* ==========================================================================
   SECTION 1 & 2 BASE PRESERVATION
   ========================================================================== */
.case-hero {
  min-height: calc(100vh - 78px);
  background: var(--c-bg);
}

.case-hero-grid {
  max-width: 1380px;
  margin: auto;
  min-height: calc(100vh - 130px);
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  align-items: center;
  padding: 70px 6vw 50px;
  gap: 20px;
}

.case-hero-copy p {
  max-width: 680px;
  font-size: 18px !important;
  margin: 28px 0;
}

.case-stat-line {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border-top: 1px solid var(--c-line);
  border-bottom: 1px solid var(--c-line);
  max-width: 760px;
}

.case-stat-line span {
  padding: 15px 20px 15px 0;
  margin-right: 20px;
  font-weight: 700;
  color: var(--c-muted);
}

.case-stat-line b {
  color: var(--c-accent);
  margin-right: 7px;
}

.case-cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 28px;
  padding: 14px 24px;
  border-radius: 12px;
  background: var(--c-accent);
  color: #ffffff !important;
  text-decoration: none;
  font-weight: 800 !important;
  font-size: 15px !important;
  transition: 0.35s ease;
  box-shadow: 0 10px 25px var(--c-accent-glow);
}

html.dark .case-cta {
  background: #ff8e92 !important;
  color: #1a0809 !important;
}

.case-cta:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 36px var(--c-accent-glow);
}

.case-hero-art {
  height: 590px;
  position: relative;
  display: grid;
  place-items: center;
}

.hero-device {
  width: min(330px, 58%);
  height: 470px;
  border: 10px solid var(--c-ink);
  border-radius: 54px;
  overflow: hidden;
  transform: rotate(7deg);
  box-shadow: 30px 35px 0 var(--c-accent-glow);
  animation: caseFloat 5s ease-in-out infinite;
}

.hero-device img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-device span {
  position: absolute;
  left: 18px;
  top: 20px;
  background: rgba(0, 0, 0, 0.78);
  color: #fff;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 14px !important;
  font-weight: 800;
}

.hero-note {
  position: absolute;
  right: 5%;
  bottom: 20%;
  font-weight: 900;
  font-size: 14px !important;
  letter-spacing: 0.15em;
  color: var(--c-accent);
  transform: rotate(-90deg);
}

.hero-orbit {
  position: absolute;
  border: 1px solid var(--c-accent);
  border-radius: 50%;
  animation: orbitSpin 12s linear infinite;
}

.orbit-1 { width: 410px; height: 410px; }
.orbit-2 { width: 530px; height: 220px; transform: rotate(30deg); }

.case-marquee {
  overflow: hidden;
  border-top: 1px solid var(--c-line);
  padding: 16px 0;
  white-space: nowrap;
  color: var(--c-accent);
  font-weight: 900;
  font-size: 14px !important;
  letter-spacing: 0.16em;
}

.case-marquee span {
  display: inline-block;
  min-width: 100%;
  animation: marqueeCase 18s linear infinite;
}

/* SECTION 2: WHY IT WORKS */
.case-story {
  padding: 85px 6vw 0;
  background: var(--c-surface);
}

.case-story-head {
  max-width: 1000px;
  margin: 0 auto 55px;
  text-align: center;
}

.case-story-head p {
  max-width: 760px;
  margin: 22px auto 0;
  font-size: 18px !important;
}

.case-process {
  max-width: 1200px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--c-line);
  border-bottom: 1px solid var(--c-line);
}

.process-step {
  position: relative;
  padding: 42px 34px 48px;
  min-height: 340px;
  border-right: 1px solid var(--c-line);
  overflow: hidden;
  transition: 0.45s ease;
}

.process-step:last-child {
  border-right: 0;
}

.process-step:hover {
  background: var(--c-accent-glow);
  transform: translateY(-8px);
}

.process-no {
  position: absolute;
  right: 24px;
  top: 24px;
  color: var(--c-accent);
  font-weight: 900;
  font-size: 16px !important;
}

.process-mark {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--c-ink);
  color: var(--c-accent);
  font-size: 24px !important;
  margin-bottom: 50px;
}

.process-step h3 {
  font-size: 24px !important;
  margin-bottom: 12px;
}

.process-step p {
  max-width: 320px;
  font-size: 15px !important;
}

.process-step strong {
  display: block;
  margin-top: 24px;
  color: var(--c-accent);
  font-size: 14px !important;
  letter-spacing: 0.1em;
}

.story-rail {
  max-width: 1200px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
  color: var(--c-muted);
  font-weight: 800;
  font-size: 14px !important;
}

.story-rail i {
  height: 1px;
  flex: 1;
  background: var(--c-line);
  margin: 0 15px;
}

/* ==========================================================================
   SECTION 3: CASE ARCHITECTURE — FULL RESTRUCTURE WITH 3D LAYER ANIMATION
   Interactive 3D Exploded Armor Breakdown + Synced HUD + Live Spec Metrics
   ========================================================================== */
.case-architecture {
  position: relative;
  overflow: hidden;
  padding: clamp(85px, 9vw, 130px) 6vw clamp(80px, 8vw, 120px);
  background: var(--c-bg);
}

.case-architecture::before {
  content: "";
  position: absolute;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--c-accent-glow) 0%, transparent 70%);
  top: -150px;
  right: -100px;
  pointer-events: none;
  filter: blur(40px);
  opacity: 0.6;
}

.case-architecture::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 10% 90%, var(--c-accent-glow) 0%, transparent 60%);
  pointer-events: none;
  opacity: 0.4;
}

.arch-header {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 5vw;
  align-items: end;
  margin-bottom: 60px;
}

.arch-header h2 {
  margin: 16px 0 0;
}

.arch-header p {
  font-size: 17px !important;
  line-height: 1.75;
  margin: 0;
  color: var(--c-muted);
}

/* Architecture Interactive Grid */
.arch-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1.08fr;
  gap: 50px;
  align-items: center;
}

/* Left: 3D Exploded Stage */
.arch-visual-stage {
  position: relative;
  min-height: 580px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  perspective: 1200px;
}

.arch-radar-bg {
  position: absolute;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  border: 1px dashed var(--c-line);
  animation: radarSpin 30s linear infinite;
  pointer-events: none;
}

.arch-radar-bg::after {
  content: "";
  position: absolute;
  inset: 50px;
  border-radius: 50%;
  border: 1px solid var(--c-line);
}

.arch-scanner-line {
  position: absolute;
  width: 380px;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
  box-shadow: 0 0 15px var(--c-accent);
  animation: laserScan 4s ease-in-out infinite;
  z-index: 10;
  pointer-events: none;
}

/* 3D Exploded Stack */
.arch-exploded-stack {
  position: relative;
  width: 300px;
  height: 380px;
  transform-style: preserve-3d;
  transform: rotateX(54deg) rotateZ(-36deg);
  transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.arch-visual-stage:hover .arch-exploded-stack {
  transform: rotateX(50deg) rotateZ(-30deg) translateY(-10px);
}

/* Individual Exploded Tiers */
.arch-tier {
  position: absolute;
  inset: 0;
  border-radius: 36px;
  border: 2px solid var(--c-line);
  background: var(--c-surface);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
  transition: all 0.5s cubic-bezier(0.18, 0.89, 0.32, 1.28);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px;
  cursor: pointer;
}

html.dark .arch-tier {
  background: rgba(26, 15, 17, 0.92);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.6);
}

/* Exploded Stacking Offsets */
.tier-4 {
  transform: translateZ(150px);
  border-color: var(--c-accent);
  background: linear-gradient(135deg, rgba(168, 78, 87, 0.15), var(--c-surface));
}

.tier-3 {
  transform: translateZ(95px);
}

.tier-2 {
  transform: translateZ(45px);
}

.tier-1 {
  transform: translateZ(0px);
}

/* Hover & Active Tier states */
.arch-tier:hover,
.arch-tier.active {
  border-color: var(--c-accent) !important;
  box-shadow: 0 0 35px var(--c-accent-glow), 0 20px 45px rgba(0, 0, 0, 0.25) !important;
}

.tier-4.active { transform: translateZ(190px) scale(1.05); }
.tier-3.active { transform: translateZ(120px) scale(1.05); }
.tier-2.active { transform: translateZ(55px) scale(1.05); }
.tier-1.active { transform: translateZ(-5px) scale(1.05); }

/* Tier visual elements inside 3D frame */
.tier-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  transform: rotateZ(36deg); /* counter-rotates label for easy reading */
  pointer-events: none;
}

.tier-icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--c-ink);
  color: var(--c-accent);
  font-size: 20px !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

html.dark .tier-icon {
  background: #fff5f5;
  color: #180b0c;
}

.tier-label {
  font-family: "Space Grotesk", sans-serif;
  font-size: 15px !important;
  font-weight: 800;
  color: var(--c-ink);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.tier-sub {
  font-size: 14px !important;
  font-weight: 700;
  color: var(--c-accent);
}

/* Floating HUD Bar below 3D stage */
.arch-hud {
  position: relative;
  z-index: 12;
  margin-top: 25px;
  padding: 14px 24px;
  border-radius: 16px;
  background: var(--c-surface);
  border: 1px solid var(--c-line);
  box-shadow: var(--c-card-shadow);
  display: flex;
  align-items: center;
  gap: 16px;
  max-width: 440px;
}

html.dark .arch-hud {
  background: #1c1012;
}

.arch-hud-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 10px #22c55e;
  animation: pulseDot 2s infinite;
  flex-shrink: 0;
}

.arch-hud-text {
  font-size: 14px !important;
  font-weight: 700;
  color: var(--c-muted);
}

.arch-hud-text b {
  color: var(--c-ink);
  font-weight: 800;
}

.arch-hud-text span {
  color: var(--c-accent);
  font-weight: 800;
}

/* Right: Architecture Interactive Cards */
.arch-cards-stage {
  display: grid;
  gap: 20px;
}

.arch-card {
  position: relative;
  padding: 28px 30px;
  border-radius: 20px;
  background: var(--c-surface);
  border: 1px solid var(--c-line);
  box-shadow: var(--c-card-shadow);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  cursor: pointer;
  overflow: hidden;
}

html.dark .arch-card {
  background: #180f10;
  border-color: rgba(255, 142, 146, 0.2);
}

.arch-card:hover,
.arch-card.active {
  transform: translateX(8px) translateY(-4px);
  border-color: var(--c-accent) !important;
  box-shadow: 0 20px 45px var(--c-accent-glow), 0 0 0 1px var(--c-accent);
}

html.dark .arch-card:hover,
html.dark .arch-card.active {
  background: #221416 !important;
  border-color: #ff8e92 !important;
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.7), 0 0 30px rgba(255, 142, 146, 0.25) !important;
}

.arch-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.arch-card-badge-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}

.arch-card-num {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--c-ink);
  color: var(--c-bg);
  display: grid;
  place-items: center;
  font-family: "Space Grotesk", sans-serif;
  font-size: 15px !important;
  font-weight: 800;
}

html.dark .arch-card-num {
  background: #fff5f5;
  color: #180b0c;
}

.arch-card-tag {
  font-size: 14px !important;
  font-weight: 800;
  letter-spacing: 0.12em;
  color: var(--c-accent);
  text-transform: uppercase;
}

.arch-card-icon {
  font-size: 20px !important;
  color: var(--c-accent);
}

.arch-card h3 {
  font-size: 22px !important;
  margin: 0 0 10px;
  color: var(--c-ink);
}

.arch-card p {
  font-size: 15px !important;
  line-height: 1.7;
  margin: 0 0 16px;
  color: var(--c-muted);
}

.arch-card-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.arch-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 999px;
  background: var(--c-surface-card);
  font-size: 14px !important;
  font-weight: 700;
  color: var(--c-ink);
  border: 1px solid var(--c-line);
}

.arch-pill i {
  color: var(--c-accent);
  font-size: 14px !important;
}

/* Metric Progress Bar */
.arch-metric {
  border-top: 1px solid var(--c-line);
  padding-top: 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.arch-metric-info {
  display: flex;
  justify-content: space-between;
  font-size: 14px !important;
  font-weight: 800;
  color: var(--c-muted);
}

.arch-metric-info b {
  color: var(--c-accent);
}

.arch-meter-track {
  height: 6px;
  width: 100%;
  border-radius: 999px;
  background: var(--c-line);
  overflow: hidden;
}

.arch-meter-fill {
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--c-accent), var(--c-accent-light));
  transition: width 1s ease;
}

/* Footer ticker for Section 3 */
.arch-footer-bar {
  position: relative;
  z-index: 2;
  margin-top: 45px;
  padding-top: 24px;
  border-top: 1px solid var(--c-line);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px;
}

.arch-footer-tags {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px !important;
  font-weight: 800;
  color: var(--c-muted);
  letter-spacing: 0.1em;
}

.arch-footer-tags b {
  color: var(--c-accent);
  font-size: 18px !important;
}

.arch-cert-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px !important;
  font-weight: 800;
  color: var(--c-accent);
}

/* ==========================================================================
   SECTION 4: THE CASE LINEUP — COMPLETE 3D INTERACTIVE SHOWCASE RESTRUCTURE
   3D Tilt Cards + Filter Bar + Color Swatches + Live Ratings + Fly-to-Cart
   ========================================================================== */
.case-lineup {
  position: relative;
  padding: clamp(85px, 9vw, 130px) 6vw clamp(70px, 7vw, 100px);
  background: var(--c-surface);
  overflow: hidden;
}

.lineup-head {
  text-align: center;
  max-width: 950px;
  margin: 0 auto 40px;
}

.lineup-head h2 {
  margin: 16px 0 18px;
}

.lineup-head p {
  font-size: 18px !important;
  max-width: 720px;
  margin: 0 auto;
}

/* Interactive Filter Bar */
.lineup-filters {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 auto 50px;
  max-width: 800px;
}

.filter-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  border-radius: 999px;
  border: 1px solid var(--c-line);
  background: var(--c-bg);
  color: var(--c-ink);
  font-size: 15px !important;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s ease;
}

.filter-btn i {
  font-size: 14px !important;
  color: var(--c-accent);
}

.filter-btn:hover {
  border-color: var(--c-accent);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px var(--c-accent-glow);
}

.filter-btn.active {
  background: var(--c-accent);
  color: #ffffff !important;
  border-color: var(--c-accent);
  box-shadow: 0 10px 25px var(--c-accent-glow);
}

html.dark .filter-btn.active {
  background: #ff8e92 !important;
  color: #180b0c !important;
}

/* 3D Product Showcase Grid */
.lineup-grid {
  max-width: 1340px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}

/* Interactive 3D Product Card */
.lineup-card {
  position: relative;
  border-radius: 26px;
  background: var(--c-bg);
  border: 1px solid var(--c-line);
  box-shadow: var(--c-card-shadow);
  padding: 24px;
  display: flex;
  flex-direction: column;
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.4s ease, border-color 0.4s ease;
  transform-style: preserve-3d;
  will-change: transform;
  overflow: hidden;
}

html.dark .lineup-card {
  background: #190f11;
  border-color: rgba(255, 142, 146, 0.2);
}

.lineup-card:hover {
  border-color: var(--c-accent);
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.16), 0 0 35px var(--c-accent-glow);
  transform: translateY(-10px);
}

html.dark .lineup-card:hover {
  background: #211315 !important;
  border-color: #ff8e92 !important;
  box-shadow: 0 30px 65px rgba(0, 0, 0, 0.8), 0 0 35px rgba(255, 142, 146, 0.28) !important;
}

/* Card Visual Header with Tags */
.card-meta-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  z-index: 3;
}

.lineup-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 14px !important;
  font-weight: 800;
  letter-spacing: 0.04em;
}

.pill-hot {
  background: rgba(239, 68, 68, 0.14);
  color: #ef4444;
  border: 1px solid rgba(239, 68, 68, 0.3);
}

.pill-trending {
  background: rgba(245, 158, 11, 0.14);
  color: #f59e0b;
  border: 1px solid rgba(245, 158, 11, 0.3);
}

.pill-eco {
  background: rgba(16, 185, 129, 0.14);
  color: #10b981;
  border: 1px solid rgba(16, 185, 129, 0.3);
}

.pill-luxe {
  background: rgba(168, 85, 247, 0.14);
  color: #a855f7;
  border: 1px solid rgba(168, 85, 247, 0.3);
}

.card-rating {
  font-size: 14px !important;
  font-weight: 800;
  color: var(--c-muted);
  display: flex;
  align-items: center;
  gap: 4px;
}

.card-rating i {
  color: #f59e0b;
  font-size: 14px !important;
}

/* Product Media Showcase */
.card-media {
  position: relative;
  height: 290px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--c-surface-card);
  margin-bottom: 20px;
  border: 1px solid var(--c-line);
}

.card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.lineup-card:hover .card-media img {
  transform: scale(1.08) rotate(1deg);
}

.card-floating-badge {
  position: absolute;
  bottom: 12px;
  left: 12px;
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(8px);
  color: #ffffff;
  padding: 6px 12px;
  border-radius: 8px;
  font-size: 14px !important;
  font-weight: 800;
  letter-spacing: 0.06em;
}

/* Card Body Content */
.card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.card-body h3 {
  font-size: 22px !important;
  margin: 0 0 8px;
  color: var(--c-ink);
}

.card-body p {
  font-size: 15px !important;
  line-height: 1.6;
  color: var(--c-muted);
  margin: 0 0 16px;
  flex: 1;
}

/* Color Swatches */
.card-swatches {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}

.card-swatches span {
  font-size: 14px !important;
  font-weight: 700;
  color: var(--c-muted);
}

.swatch-list {
  display: flex;
  gap: 7px;
}

.swatch-dot {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 2px solid var(--c-surface);
  box-shadow: 0 0 0 1px var(--c-line);
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.swatch-dot:hover,
.swatch-dot.active {
  transform: scale(1.2);
  box-shadow: 0 0 0 2px var(--c-accent);
}

/* Price and Add-To-Cart Footer */
.card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--c-line);
  padding-top: 18px;
  margin-top: auto;
}

.card-price {
  display: flex;
  flex-direction: column;
}

.card-price strong {
  font-family: "Space Grotesk", sans-serif;
  font-size: 22px !important;
  font-weight: 800;
  color: var(--c-ink);
}

.card-price small {
  font-size: 14px !important;
  font-weight: 600;
  text-decoration: line-through;
  color: var(--c-muted);
}

.case-cart-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 12px 18px;
  border: 0;
  border-radius: 12px;
  background: var(--c-ink);
  color: var(--c-bg) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  cursor: pointer;
  transition: all 0.3s ease;
}

html.dark .case-cart-btn {
  background: #fff5f5 !important;
  color: #180b0c !important;
}

.case-cart-btn i {
  color: var(--c-accent);
  font-size: 15px !important;
}

.case-cart-btn:hover {
  background: var(--c-accent) !important;
  color: #ffffff !important;
  transform: translateY(-3px);
  box-shadow: 0 10px 22px var(--c-accent-glow);
}

.case-cart-btn:hover i {
  color: #ffffff !important;
}

html.dark .case-cart-btn:hover {
  background: #ff8e92 !important;
  color: #180b0c !important;
}

/* Bottom Trust Features Strip */
.lineup-trust-strip {
  max-width: 1280px;
  margin: 60px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 24px;
  border-radius: 20px;
  background: var(--c-surface-card);
  border: 1px solid var(--c-line);
}

.trust-item {
  display: flex;
  align-items: center;
  gap: 14px;
}

.trust-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--c-surface);
  color: var(--c-accent);
  display: grid;
  place-items: center;
  font-size: 18px !important;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

html.dark .trust-icon {
  background: #2a181b;
}

.trust-item span {
  font-size: 14px !important;
  font-weight: 700;
  color: var(--c-ink);
  line-height: 1.35;
}

/* ==========================================================================
   SECTIONS 5, 6, 7 PRESERVATION & CONTRAST OVERRIDES
   ========================================================================== */
.case-specs {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  background: var(--c-bg);
  padding: 90px 6vw;
  gap: 60px;
}

.specs-intro {
  position: sticky;
  top: 100px;
  height: max-content;
}

.specs-intro h2 {
  margin-top: 18px;
}

.specs-intro > p {
  max-width: 560px;
  font-size: 18px !important;
  margin: 20px 0 35px;
}

.spec-meter {
  max-width: 520px;
}

.spec-meter span,
.spec-meter b {
  font-size: 15px !important;
  font-weight: 900;
  color: var(--c-muted);
}

.spec-meter b {
  float: right;
  color: var(--c-accent);
}

.spec-meter i {
  display: block;
  height: 8px;
  border-radius: 4px;
  background: var(--c-line);
  margin-top: 10px;
}

.spec-meter u {
  display: block;
  width: 92%;
  height: 100%;
  border-radius: 4px;
  background: var(--c-accent);
  animation: meterCase 1.6s ease both;
}

.spec-list {
  border-top: 1px solid var(--c-line);
}

.spec-row {
  display: grid;
  grid-template-columns: 55px 1fr 48px;
  align-items: center;
  gap: 15px;
  padding: 30px 0;
  border-bottom: 1px solid var(--c-line);
}

.spec-row > span {
  color: var(--c-accent);
  font-size: 18px !important;
  font-weight: 900;
}

.spec-row h3 {
  font-size: 22px !important;
}

.spec-row p {
  margin: 8px 0 0;
  font-size: 15px !important;
}

.spec-row > i {
  font-size: 22px !important;
  color: var(--c-accent);
  text-align: right;
}

/* SECTION 6: FAQ */
.case-faq {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  padding: 90px 6vw;
  background: var(--c-surface);
  gap: 70px;
}

.faq-copy h2 {
  margin-top: 18px;
}

.faq-copy p {
  max-width: 470px;
  font-size: 18px !important;
}

.faq-signal {
  margin-top: 40px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--c-accent);
  font-size: 15px !important;
  font-weight: 900;
}

.faq-signal span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--c-accent);
  box-shadow: 0 0 0 8px var(--c-accent-glow);
  animation: pulseCase 1.8s infinite;
}

.faq-list details {
  border-top: 1px solid var(--c-line);
  padding: 0;
}

.faq-list details:last-child {
  border-bottom: 1px solid var(--c-line);
}

.faq-list summary {
  cursor: pointer;
  list-style: none;
  padding: 26px 0;
  font-size: 18px !important;
  font-weight: 800;
  color: var(--c-ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.faq-list summary::-webkit-details-marker {
  display: none;
}

.faq-list summary i {
  color: var(--c-accent);
  font-size: 16px !important;
  transition: 0.3s;
}

.faq-list details[open] summary i {
  transform: rotate(45deg);
}

.faq-list details p {
  max-width: 760px;
  margin: 0 0 26px;
  font-size: 16px !important;
}

/* SECTION 7: FINAL CTA */
.case-cta-final {
  padding: 60px 5vw;
  background: var(--c-bg);
}

.cta-surface {
  max-width: 1280px;
  margin: auto;
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  min-height: 520px;
  background: #18090a;
  color: #fff;
  border-radius: 30px;
  overflow: hidden;
  position: relative;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25);
}

html.dark .cta-surface {
  background: #1f0f11;
  border: 1px solid rgba(255, 142, 146, 0.2);
}

.cta-image {
  min-height: 520px;
  overflow: hidden;
}

.cta-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.85);
  transition: transform 1.2s ease;
}

.cta-surface:hover .cta-image img {
  transform: scale(1.06);
}

.cta-copy {
  padding: 70px;
  align-self: center;
}

.cta-copy h2 {
  color: #ffffff !important;
  margin-top: 18px;
}

.cta-copy p {
  color: #f3dede !important;
  max-width: 600px;
  font-size: 17px !important;
}

.cta-points {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 28px;
}

.cta-points span {
  color: #ffffff;
  font-size: 15px !important;
  font-weight: 800;
}

.cta-points i {
  color: var(--c-accent);
  margin-right: 7px;
}

/* ==========================================================================
   ANIMATIONS & KEYFRAMES
   ========================================================================== */
.reveal {
  opacity: 0;
  transform: translateY(35px);
  transition: opacity 0.8s ease, transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.reveal-left { transform: translateX(-45px); }
.reveal-right { transform: translateX(45px); }
.reveal-up { transform: translateY(50px); }

.reveal.is-visible {
  opacity: 1;
  transform: none;
}

.reveal:nth-child(2) { transition-delay: 0.08s; }
.reveal:nth-child(3) { transition-delay: 0.16s; }
.reveal:nth-child(4) { transition-delay: 0.24s; }

@keyframes caseFloat {
  0%, 100% { transform: rotate(7deg) translateY(0); }
  50% { transform: rotate(4deg) translateY(-14px); }
}

@keyframes orbitSpin { to { transform: rotate(360deg); } }
@keyframes radarSpin { to { transform: rotate(360deg); } }
@keyframes marqueeCase { to { transform: translateX(-100%); } }
@keyframes meterCase { from { width: 0; } }

@keyframes laserScan {
  0%, 100% { top: 15%; opacity: 0.2; }
  50% { top: 85%; opacity: 0.9; }
}

@keyframes pulseDot {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.35); opacity: 0.7; }
}

@keyframes pulseCase {
  50% { box-shadow: 0 0 0 16px rgba(189, 111, 112, 0.05); }
}

/* ==========================================================================
   RESPONSIVE DESIGN (Tablets & Mobile)
   ========================================================================== */
@media (max-width: 1080px) {
  .arch-grid {
    grid-template-columns: 1fr;
    gap: 60px;
  }
  .arch-visual-stage {
    min-height: 480px;
  }
  .lineup-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .lineup-trust-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 900px) {
  .case-hero-grid {
    grid-template-columns: 1fr;
    padding-top: 55px;
  }
  .case-hero-art { height: 460px; }
  .case-hero-copy { text-align: center; }
  .case-hero-copy p { margin-left: auto; margin-right: auto; }
  .case-stat-line { justify-content: center; }
  .case-kicker { justify-content: center; }

  .case-process {
    grid-template-columns: 1fr;
  }
  .process-step {
    border-right: 0;
    border-bottom: 1px solid var(--c-line);
    min-height: auto;
  }
  .process-step:last-child { border-bottom: 0; }

  .arch-header {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .case-specs, .case-faq {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .specs-intro { position: relative; top: auto; }
  .case-cta-final { padding: 30px 4vw; }
  .cta-surface { grid-template-columns: 1fr; }
  .cta-image { min-height: 300px; }
  .cta-copy { padding: 42px; }
}

@media (max-width: 650px) {
  .cases-new h1 { font-size: 42px; }
  .cases-new h2 { font-size: 34px; }
  .case-hero-grid { padding: 45px 5vw 30px; }
  .case-hero-art { height: 380px; }
  .hero-device { height: 330px; width: 220px; }

  .case-story, .case-architecture, .case-lineup, .case-specs, .case-faq {
    padding: 65px 5vw;
  }

  .arch-visual-stage {
    min-height: 420px;
  }
  .arch-exploded-stack {
    width: 240px;
    height: 320px;
  }
  .arch-card {
    padding: 22px 20px;
  }

  .lineup-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .lineup-trust-strip {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .story-rail { display: none; }
  .cta-image { min-height: 250px; }
  .cta-copy { padding: 35px 25px; }
  .cta-points { display: block; }
  .cta-points span { display: block; margin: 10px 0; }
}

@media (prefers-reduced-motion: reduce) {
  .cases-new *,
  .cases-new *:before,
  .cases-new *:after {
    animation: none !important;
    transition: none !important;
  }
  .reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}


/* ==========================================================================
   CASES — FINAL RESPONSIVE PATCH
   Keeps the existing visual design but prevents overflow, overlap and
   horizontal scrolling at tablet/mobile widths.
   ========================================================================== */

.shop-page--cases,
.shop-page--cases body {
  max-width: 100%;
  overflow-x: hidden;
}

.shop-page--cases .cases-new,
.shop-page--cases .cases-new section,
.shop-page--cases .case-hero,
.shop-page--cases .case-story,
.shop-page--cases .case-architecture,
.shop-page--cases .case-lineup,
.shop-page--cases .case-specs,
.shop-page--cases .case-faq,
.shop-page--cases .case-cta-final {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

.shop-page--cases img,
.shop-page--cases video,
.shop-page--cases svg {
  max-width: 100%;
}

.shop-page--cases .case-hero-grid,
.shop-page--cases .arch-grid,
.shop-page--cases .case-specs,
.shop-page--cases .case-faq,
.shop-page--cases .cta-surface {
  min-width: 0;
}

.shop-page--cases .case-hero-copy,
.shop-page--cases .case-hero-art,
.shop-page--cases .arch-header > *,
.shop-page--cases .arch-grid > *,
.shop-page--cases .case-specs > *,
.shop-page--cases .case-faq > *,
.shop-page--cases .cta-surface > * {
  min-width: 0;
}

/* Tablet / small laptop */
@media (max-width: 1023px) {
  .shop-page--cases .case-hero-grid {
    grid-template-columns: 1fr;
    min-height: auto;
    padding: 62px 5vw 45px;
    gap: 28px;
  }

  .shop-page--cases .case-hero-copy {
    max-width: 820px;
    margin-inline: auto;
    text-align: center;
  }

  .shop-page--cases .case-hero-copy p {
    margin-inline: auto;
  }

  .shop-page--cases .case-kicker {
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
  }

  .shop-page--cases .case-stat-line {
    justify-content: center;
    margin-inline: auto;
  }

  .shop-page--cases .case-hero-art {
    width: 100%;
    max-width: 620px;
    height: 470px;
    margin-inline: auto;
  }

  .shop-page--cases .arch-grid {
    grid-template-columns: 1fr;
    gap: 38px;
  }

  .shop-page--cases .arch-visual-stage {
    width: 100%;
    min-height: 500px;
  }

  .shop-page--cases .arch-cards-stage {
    width: 100%;
    max-width: 760px;
    margin-inline: auto;
  }

  .shop-page--cases .arch-card:hover,
  .shop-page--cases .arch-card.active {
    transform: translateY(-4px);
  }

  .shop-page--cases .case-specs,
  .shop-page--cases .case-faq {
    grid-template-columns: 1fr;
    gap: 42px;
  }

  .shop-page--cases .specs-intro {
    position: relative;
    top: auto;
  }

  .shop-page--cases .lineup-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-page--cases .lineup-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .shop-page--cases .cta-surface {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .shop-page--cases .cta-image {
    min-height: 330px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .shop-page--cases .case-hero-grid {
    width: calc(100% - 28px);
    padding: 45px 0 32px;
    gap: 18px;
  }

  .shop-page--cases .case-hero-copy {
    width: 100%;
  }

  .shop-page--cases .cases-new h1 {
    font-size: clamp(38px, 11vw, 52px);
    line-height: 1;
    overflow-wrap: anywhere;
  }

  .shop-page--cases .cases-new h2 {
    font-size: clamp(30px, 8.5vw, 42px);
    line-height: 1.08;
  }

  .shop-page--cases .cases-new h3 {
    font-size: 21px !important;
  }

  .shop-page--cases .case-hero-copy p,
  .shop-page--cases .case-story-head p,
  .shop-page--cases .arch-header p,
  .shop-page--cases .lineup-head p,
  .shop-page--cases .specs-intro > p,
  .shop-page--cases .faq-copy p {
    font-size: 15px !important;
    line-height: 1.65;
  }

  .shop-page--cases .case-stat-line {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    text-align: left;
  }

  .shop-page--cases .case-stat-line span {
    width: 100%;
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid var(--c-line);
  }

  .shop-page--cases .case-stat-line span:last-child {
    border-bottom: 0;
  }

  .shop-page--cases .case-cta {
    max-width: 100%;
    padding: 12px 17px;
    font-size: 14px !important;
  }

  .shop-page--cases .case-hero-art {
    height: 355px;
    max-width: 100%;
  }

  .shop-page--cases .hero-device {
    width: min(205px, 62vw);
    height: min(310px, 82vw);
  }

  .shop-page--cases .hero-orbit.orbit-1 {
    width: min(290px, 82vw);
    height: min(290px, 82vw);
  }

  .shop-page--cases .hero-orbit.orbit-2 {
    width: min(230px, 68vw);
    height: min(230px, 68vw);
  }

  .shop-page--cases .hero-note {
    right: 4%;
    bottom: 5%;
    font-size: 12px !important;
  }

  .shop-page--cases .case-marquee {
    white-space: nowrap;
    overflow: hidden;
  }

  .shop-page--cases .case-story,
  .shop-page--cases .case-architecture,
  .shop-page--cases .case-lineup,
  .shop-page--cases .case-specs,
  .shop-page--cases .case-faq {
    padding: 58px 14px 55px;
  }

  .shop-page--cases .case-story-head {
    margin-bottom: 35px;
  }

  .shop-page--cases .case-process {
    grid-template-columns: 1fr;
  }

  .shop-page--cases .process-step {
    min-height: auto;
    padding: 30px 20px 34px;
    border-right: 0;
  }

  .shop-page--cases .process-mark {
    margin-bottom: 28px;
  }

  .shop-page--cases .arch-header {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-bottom: 30px;
  }

  .shop-page--cases .arch-header .case-kicker {
    justify-content: flex-start;
    text-align: left;
    font-size: 13px !important;
    letter-spacing: .09em;
  }

  .shop-page--cases .arch-grid {
    gap: 28px;
  }

  .shop-page--cases .arch-visual-stage {
    min-height: 375px;
    height: auto;
  }

  .shop-page--cases .arch-radar-bg {
    width: min(330px, 88vw);
    height: min(330px, 88vw);
  }

  .shop-page--cases .arch-scanner-line {
    width: min(285px, 78vw);
  }

  .shop-page--cases .arch-exploded-stack {
    width: min(220px, 62vw);
    height: min(285px, 76vw);
    transform: rotateX(48deg) rotateZ(-31deg) scale(.88);
  }

  .shop-page--cases .arch-visual-stage:hover .arch-exploded-stack {
    transform: rotateX(48deg) rotateZ(-31deg) translateY(-6px) scale(.88);
  }

  .shop-page--cases .arch-tier {
    border-radius: 28px;
    padding: 18px;
  }

  .shop-page--cases .tier-content {
    gap: 8px;
  }

  .shop-page--cases .tier-icon {
    width: 40px;
    height: 40px;
    font-size: 17px !important;
  }

  .shop-page--cases .tier-label,
  .shop-page--cases .tier-sub {
    max-width: 150px;
    text-align: center;
    overflow-wrap: anywhere;
  }

  .shop-page--cases .tier-label {
    font-size: 13px !important;
  }

  .shop-page--cases .tier-sub {
    font-size: 12px !important;
  }

  .shop-page--cases .arch-hud {
    width: min(100%, 310px);
    font-size: 12px !important;
  }

  .shop-page--cases .arch-cards-stage {
    gap: 14px;
  }

  .shop-page--cases .arch-card {
    padding: 20px 17px;
    border-radius: 17px;
  }

  .shop-page--cases .arch-card-top {
    gap: 10px;
    align-items: flex-start;
  }

  .shop-page--cases .arch-card-badge-wrap {
    min-width: 0;
    flex-wrap: wrap;
    gap: 8px;
  }

  .shop-page--cases .arch-card-tag {
    font-size: 12px !important;
    letter-spacing: .07em;
  }

  .shop-page--cases .arch-card h3 {
    font-size: 20px !important;
  }

  .shop-page--cases .arch-card p {
    font-size: 14px !important;
    line-height: 1.65;
  }

  .shop-page--cases .arch-card-pills {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 7px;
  }

  .shop-page--cases .arch-pill {
    width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .shop-page--cases .arch-footer-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .shop-page--cases .lineup-filters {
    justify-content: flex-start;
    overflow-x: auto;
    flex-wrap: nowrap;
    max-width: 100%;
    padding-bottom: 7px;
    scrollbar-width: thin;
  }

  .shop-page--cases .filter-btn {
    flex: 0 0 auto;
    padding: 9px 14px;
    font-size: 14px !important;
  }

  .shop-page--cases .lineup-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .shop-page--cases .lineup-card {
    padding: 19px;
    border-radius: 20px;
  }

  .shop-page--cases .lineup-trust-strip {
    grid-template-columns: 1fr;
    gap: 13px;
    margin-top: 35px;
    padding: 18px;
  }

  .shop-page--cases .case-specs,
  .shop-page--cases .case-faq {
    gap: 30px;
  }

  .shop-page--cases .spec-row {
    grid-template-columns: 38px minmax(0, 1fr) 30px;
    gap: 10px;
    padding: 21px 0;
  }

  .shop-page--cases .spec-row h3 {
    font-size: 19px !important;
  }

  .shop-page--cases .spec-row p {
    font-size: 14px !important;
  }

  .shop-page--cases .faq-list summary {
    gap: 12px;
    padding: 20px 0;
    font-size: 15px !important;
  }

  .shop-page--cases .faq-list details p {
    font-size: 14px !important;
  }

  .shop-page--cases .case-cta-final {
    padding: 38px 14px;
  }

  .shop-page--cases .cta-surface {
    border-radius: 22px;
  }

  .shop-page--cases .cta-image {
    min-height: 240px;
  }

  .shop-page--cases .cta-copy {
    padding: 28px 20px;
  }

  .shop-page--cases .cta-copy h2 {
    font-size: 31px !important;
  }

  .shop-page--cases .cta-points {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

/* Very small phones */
@media (max-width: 380px) {
  .shop-page--cases .case-hero-grid {
    width: calc(100% - 20px);
  }

  .shop-page--cases .cases-new h1 {
    font-size: 36px;
  }

  .shop-page--cases .cases-new h2 {
    font-size: 29px;
  }

  .shop-page--cases .case-hero-art {
    height: 320px;
  }

  .shop-page--cases .hero-device {
    width: 175px;
    height: 270px;
  }

  .shop-page--cases .arch-visual-stage {
    min-height: 345px;
  }

  .shop-page--cases .arch-exploded-stack {
    transform: rotateX(46deg) rotateZ(-30deg) scale(.72);
  }

  .shop-page--cases .arch-visual-stage:hover .arch-exploded-stack {
    transform: rotateX(46deg) rotateZ(-30deg) translateY(-4px) scale(.72);
  }

  .shop-page--cases .case-story,
  .shop-page--cases .case-architecture,
  .shop-page--cases .case-lineup,
  .shop-page--cases .case-specs,
  .shop-page--cases .case-faq {
    padding-left: 10px;
    padding-right: 10px;
  }

  .shop-page--cases .arch-card {
    padding: 18px 14px;
  }
}

/* Touch devices: remove hover translations that can cause sideways overflow. */
@media (hover: none) {
  .shop-page--cases .arch-card:hover,
  .shop-page--cases .lineup-card:hover,
  .shop-page--cases .process-step:hover {
    transform: none;
  }
}


/* ==========================================================================
   CASES — MOBILE TEXT + BUTTON STABILITY PATCH
   Final override: prevents clipped copy, broken filter buttons and cramped
   product CTAs on narrow phones without changing the desktop composition.
   ========================================================================== */

.shop-page--cases .cases-new,
.shop-page--cases .cases-new section,
.shop-page--cases .cases-new .arch-header,
.shop-page--cases .cases-new .arch-footer-bar,
.shop-page--cases .cases-new .lineup-head,
.shop-page--cases .cases-new .lineup-filters,
.shop-page--cases .cases-new .lineup-card,
.shop-page--cases .cases-new .arch-card {
  min-width: 0;
  max-width: 100%;
}

.shop-page--cases .cases-new h1,
.shop-page--cases .cases-new h2,
.shop-page--cases .cases-new h3,
.shop-page--cases .cases-new p,
.shop-page--cases .cases-new span,
.shop-page--cases .cases-new strong,
.shop-page--cases .cases-new a,
.shop-page--cases .cases-new button {
  overflow-wrap: break-word;
  word-break: normal;
}

/* Architecture footer: certification text must never force the row wider. */
.shop-page--cases .arch-footer-bar {
  width: 100%;
}

.shop-page--cases .arch-footer-tags,
.shop-page--cases .arch-cert-badge {
  min-width: 0;
  max-width: 100%;
}

.shop-page--cases .arch-cert-badge span {
  min-width: 0;
  overflow-wrap: anywhere;
}

/* Filter controls stay inside the viewport. */
.shop-page--cases .lineup-filters {
  width: min(800px, 100%);
}

@media (max-width: 767px) {
  .shop-page--cases .arch-header h2,
  .shop-page--cases .lineup-head h2 {
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
  }

  .shop-page--cases .arch-header p,
  .shop-page--cases .lineup-head p {
    width: 100%;
    max-width: 100%;
  }

  .shop-page--cases .arch-footer-bar {
    align-items: stretch;
    gap: 16px;
  }

  .shop-page--cases .arch-footer-tags {
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 11px;
  }

  .shop-page--cases .arch-cert-badge {
    width: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    line-height: 1.5;
  }

  .shop-page--cases .arch-cert-badge i {
    flex: 0 0 auto;
    margin-top: 2px;
  }

  /* Replace the overflowing horizontal filter strip with a clean grid. */
  .shop-page--cases .lineup-filters {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 100%;
    gap: 9px;
    margin-bottom: 34px;
    padding: 0;
    overflow: visible;
  }

  .shop-page--cases .filter-btn {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    padding: 9px 10px;
    border-radius: 12px;
    justify-content: center;
    text-align: center;
    white-space: normal;
    line-height: 1.25 !important;
    overflow-wrap: anywhere;
  }

  .shop-page--cases .filter-btn i {
    flex: 0 0 auto;
  }

  /* Product cards: price and cart button get their own stable rows. */
  .shop-page--cases .card-footer {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(0, 1fr);
    align-items: center;
    gap: 10px;
  }

  .shop-page--cases .card-price {
    min-width: 0;
  }

  .shop-page--cases .case-cart-btn {
    width: 100%;
    min-width: 0;
    min-height: 46px;
    justify-content: center;
    padding: 10px 11px;
    border-radius: 12px;
    white-space: normal;
    line-height: 1.25 !important;
    text-align: center;
  }

  .shop-page--cases .case-cart-btn i {
    flex: 0 0 auto;
  }

  .shop-page--cases .lineup-card {
    width: 100%;
    min-width: 0;
    overflow: hidden;
  }

  .shop-page--cases .card-body,
  .shop-page--cases .card-meta-top,
  .shop-page--cases .card-swatches {
    min-width: 0;
    max-width: 100%;
  }

  .shop-page--cases .card-meta-top {
    gap: 8px;
    flex-wrap: wrap;
  }

  .shop-page--cases .lineup-pill,
  .shop-page--cases .card-rating {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .shop-page--cases .card-swatches {
    flex-wrap: wrap;
  }

  .shop-page--cases .arch-card-top {
    width: 100%;
    min-width: 0;
  }

  .shop-page--cases .arch-card-icon {
    flex: 0 0 auto;
  }

  .shop-page--cases .arch-card-tag {
    max-width: 100%;
    overflow-wrap: anywhere;
    line-height: 1.35 !important;
  }
}

/* Very narrow phones: one filter per row and a full-width cart CTA. */
@media (max-width: 380px) {
  .shop-page--cases .lineup-filters {
    grid-template-columns: 1fr;
  }

  .shop-page--cases .card-footer {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .shop-page--cases .card-price {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 10px;
  }

  .shop-page--cases .case-cart-btn {
    min-height: 48px;
  }

  .shop-page--cases .arch-footer-tags {
    justify-content: flex-start;
  }
}


/* ===== MERGED: product-redesign.css ===== */
/* =========================================================================
   VOLTIVA — PRODUCT PAGE REDESIGN (Chargers + Screen Protectors)
   Scoped entirely to body.pr-page so no other page is affected.
   Uses the site's existing CSS variables (--accent,--ink,--muted,--bg,
   --surface,--line,--shadow,--radius) so light/dark mode contrast is
   inherited automatically — nothing here hardcodes a light- or dark-only
   color for text.
   ========================================================================= */

body.pr-page{background:var(--bg)}
.pr-page main{overflow:hidden}
.pr-section{position:relative;padding:96px 0;border-bottom:1px solid var(--line)}
.pr-section:last-of-type{border-bottom:0}
.pr-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto;position:relative}
.pr-kicker{display:inline-flex;align-items:center;gap:10px;font:800 14px/1 "Space Grotesk",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 18px}
.pr-kicker span{width:26px;height:1px;background:currentColor}
.pr-h2{font:700 clamp(30px,4vw,50px)/1.08 "Space Grotesk",sans-serif;letter-spacing:-.03em;margin:0 0 18px;color:var(--ink);max-width:760px}
.pr-h2 em{font-style:normal;color:var(--accent)}
.pr-lead{font-size:16px;line-height:1.75;color:var(--muted);max-width:640px;margin:0 0 6px;font-weight:500}
.pr-text-strong{font-weight:700;color:var(--ink)}

/* generic scroll-reveal --------------------------------------------------- */
.pr-reveal{opacity:0;transform:translateY(38px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}
.pr-reveal.pr-in{opacity:1;transform:none}
.pr-reveal-scale{opacity:0;transform:scale(.92);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.pr-reveal-scale.pr-in{opacity:1;transform:none}
.pr-reveal-left{opacity:0;transform:translateX(-42px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.pr-reveal-left.pr-in{opacity:1;transform:none}
.pr-reveal-right{opacity:0;transform:translateX(42px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}
.pr-reveal-right.pr-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.pr-reveal,.pr-reveal-scale,.pr-reveal-left,.pr-reveal-right{opacity:1!important;transform:none!important;transition:none!important}}

/* =========================================================================
   1. HERO
   ========================================================================= */
.pr-hero{padding:70px 0 90px;background:var(--ink);color:var(--bg);overflow:hidden;border-bottom:0}
.pr-hero .pr-kicker{color:var(--accent)}
.pr-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;min-height:520px}
.pr-hero-copy h1{font:700 clamp(38px,5.2vw,64px)/1.05 "Space Grotesk",sans-serif;letter-spacing:-.03em;color:var(--bg);margin:0 0 20px;max-width:620px}
.pr-hero-copy h1 em{font-style:normal;color:var(--accent)}
.pr-hero-copy p{font-size:16px;line-height:1.75;color:color-mix(in srgb,var(--bg) 68%,transparent);max-width:520px;margin:0 0 30px;font-weight:500}
.pr-hero-stats{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 32px}
.pr-hero-stats>div{border:1px solid color-mix(in srgb,var(--bg) 22%,transparent);border-radius:14px;padding:12px 16px;min-width:118px}
.pr-hero-stats strong{display:block;font:700 22px "Space Grotesk",sans-serif;color:var(--bg)}
.pr-hero-stats small{display:block;font-size:14px;font-weight:600;color:color-mix(in srgb,var(--bg) 62%,transparent);margin-top:2px}
.pr-hero-cta{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--ink);font:800 14px "Space Grotesk",sans-serif;padding:16px 26px;border-radius:14px;transition:transform .25s ease,box-shadow .25s ease}
.pr-hero-cta:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.25)}
.pr-hero-visual{position:relative;height:460px;display:grid;place-items:center}

/* charger hero: charge-meter capsule */
.pr-charge-capsule{position:relative;width:220px;height:420px;border:3px solid color-mix(in srgb,var(--bg) 26%,transparent);border-radius:110px;overflow:hidden;background:color-mix(in srgb,var(--ink) 60%,#000 10%)}
.pr-charge-fill{position:absolute;left:0;right:0;bottom:0;height:18%;background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 60%,#fff 10%));border-radius:0 0 106px 106px;animation:pr-fill 3.6s cubic-bezier(.4,0,.2,1) infinite alternate}
.pr-charge-bolt{position:absolute;inset:0;display:grid;place-items:center;font-size:52px;color:color-mix(in srgb,var(--bg) 92%,transparent);filter:drop-shadow(0 0 18px rgba(0,0,0,.35));animation:pr-pulse 1.8s ease-in-out infinite}
.pr-charge-pct{position:absolute;top:22px;left:0;right:0;text-align:center;font:800 14px "Space Grotesk",sans-serif;letter-spacing:.08em;color:color-mix(in srgb,var(--bg) 85%,transparent)}
@keyframes pr-fill{0%{height:12%}100%{height:88%}}
@keyframes pr-pulse{0%,100%{opacity:.65;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
.pr-energy-line{position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 46px,color-mix(in srgb,var(--accent) 16%,transparent) 46px 48px);animation:pr-slide 6s linear infinite;opacity:.5}
@keyframes pr-slide{to{background-position:220px 0}}

/* screen-protector hero: diamond glass frame */
.pr-glass-frame{position:relative;width:300px;height:420px;clip-path:polygon(50% 0,100% 22%,100% 78%,50% 100%,0 78%,0 22%);overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.35)}
.pr-glass-frame img{width:100%;height:100%;object-fit:cover}
.pr-glass-shine{position:absolute;top:0;bottom:0;width:60px;background:linear-gradient(115deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-18deg);left:-30%;animation:pr-shine 3.4s ease-in-out infinite}
@keyframes pr-shine{0%{left:-30%}55%,100%{left:130%}}
.pr-shard{position:absolute;border:1px solid color-mix(in srgb,var(--bg) 20%,transparent);opacity:.5;animation:pr-spin 22s linear infinite}
.pr-shard.a{width:380px;height:380px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);top:50%;left:50%;transform:translate(-50%,-50%)}
.pr-shard.b{width:300px;height:300px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);top:50%;left:50%;transform:translate(-50%,-50%) rotate(20deg);animation-direction:reverse;animation-duration:28s}
@keyframes pr-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}

@media(max-width:900px){
  .pr-hero-grid{grid-template-columns:1fr;min-height:auto;gap:44px}
  .pr-hero-visual{height:340px;order:-1}
  .pr-charge-capsule{width:160px;height:300px}
  .pr-glass-frame{width:230px;height:320px}
}

/* =========================================================================
   2. STAT TICKER (chargers) — flat single row, no images, text-first
   ========================================================================= */
.pr-stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.pr-stat-cell{padding:34px 22px;text-align:center;border-right:1px solid var(--line);background:var(--surface)}
.pr-stat-cell:last-child{border-right:0}
.pr-stat-cell i{font-size:20px;color:var(--accent);margin-bottom:14px}
.pr-stat-num{display:block;font:800 clamp(28px,3.4vw,42px) "Space Grotesk",sans-serif;color:var(--ink);letter-spacing:-.02em}
.pr-stat-cell small{display:block;margin-top:8px;font-size:14px;font-weight:700;color:var(--muted)}
@media(max-width:760px){.pr-stat-strip{grid-template-columns:1fr 1fr}.pr-stat-cell{border-bottom:1px solid var(--line)}.pr-stat-cell:nth-child(2n){border-right:0}}

/* =========================================================================
   3. VERTICAL TIMELINE (chargers) — alternating offsets along a spine
   ========================================================================= */
.pr-timeline{position:relative;max-width:900px;margin:60px auto 0;padding-left:0}
.pr-timeline-spine{position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--line);transform:translateX(-50%)}
.pr-timeline-spine i{position:absolute;left:50%;top:0;width:10px;height:10px;border-radius:50%;background:var(--accent);transform:translate(-50%,-50%);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 18%,transparent)}
.pr-tl-item{position:relative;display:grid;grid-template-columns:1fr 60px 1fr;gap:0;align-items:center;padding:34px 0}
.pr-tl-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px 24px}
.pr-tl-card i{font-size:18px;color:var(--accent);margin-bottom:10px;display:block}
.pr-tl-card h3{font:700 19px "Space Grotesk",sans-serif;margin:0 0 8px;color:var(--ink)}
.pr-tl-card p{margin:0;font-size:14px;line-height:1.65;color:var(--muted);font-weight:500}
.pr-tl-node{width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font:800 14px "Space Grotesk",sans-serif;justify-self:center;z-index:2}
.pr-tl-item:nth-child(even) .pr-tl-card{grid-column:3}
.pr-tl-item:nth-child(even) .pr-tl-spacer{grid-column:1}
.pr-tl-item:nth-child(odd) .pr-tl-card{grid-column:1}
@media(max-width:760px){
  .pr-timeline-spine{left:22px}
  .pr-tl-item{grid-template-columns:44px 1fr;padding:22px 0}
  .pr-tl-node{grid-column:1}
  .pr-tl-item:nth-child(odd) .pr-tl-card,.pr-tl-item:nth-child(even) .pr-tl-card{grid-column:2}
  .pr-tl-item .pr-tl-spacer{display:none}
}

/* =========================================================================
   4. BENTO SHOWCASE (chargers) — asymmetric grid, not a uniform rail
   ========================================================================= */
.pr-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:16px;margin-top:44px}
.pr-bento-card{position:relative;border-radius:22px;overflow:hidden;background:var(--surface);border:1px solid var(--line)}
.pr-bento-card.span-2{grid-column:span 2}
.pr-bento-card.row-2{grid-row:span 2}
.pr-bento-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.pr-bento-card:hover img{transform:scale(1.08)}
.pr-bento-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,6,6,.82) 100%)}
.pr-bento-info{position:absolute;left:0;right:0;bottom:0;padding:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.pr-bento-info h3{margin:0 0 4px;font:700 17px "Space Grotesk",sans-serif;color:#fff}
.pr-bento-info p{margin:0;font-size:14px;font-weight:600;color:rgba(255,255,255,.85)}
.pr-add-cart{display:inline-flex;align-items:center;gap:7px;background:#fff;color:#1a1010;font:800 14px "Space Grotesk",sans-serif;padding:10px 14px;border-radius:11px;white-space:nowrap;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s ease}
.pr-add-cart:active{transform:scale(.92)}
.pr-add-cart.pr-added{background:#2ECC71;color:#fff}
.pr-add-cart i{font-size:14px}
@media(max-width:900px){.pr-bento{grid-template-columns:1fr 1fr;grid-auto-rows:200px}.pr-bento-card.span-2{grid-column:span 2}}
@media(max-width:560px){.pr-bento{grid-template-columns:1fr;grid-auto-rows:220px}.pr-bento-card.span-2{grid-column:span 1}.pr-bento-card.row-2{grid-row:span 1}}

/* =========================================================================
   5. COMPARISON TABLE (chargers) — text-forward, minimal imagery
   ========================================================================= */
.pr-compare-table{width:100%;border-collapse:collapse;margin-top:40px;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.pr-compare-table th,.pr-compare-table td{padding:18px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.pr-compare-table th:last-child,.pr-compare-table td:last-child{border-right:0}
.pr-compare-table tr:last-child td{border-bottom:0}
.pr-compare-table thead th{background:var(--ink);color:var(--bg);font:800 14px "Space Grotesk",sans-serif;letter-spacing:.04em;text-transform:uppercase}
.pr-compare-table tbody th{background:var(--surface);font:700 14px "Space Grotesk",sans-serif;color:var(--ink);white-space:nowrap}
.pr-compare-table td{color:var(--muted);font-weight:600;background:var(--bg)}
.pr-compare-table td b{color:var(--ink);font-weight:800}
@media(max-width:700px){.pr-compare-table{display:block;overflow-x:auto;white-space:nowrap}}

/* =========================================================================
   6. MARQUEE TESTIMONIALS (chargers)
   ========================================================================= */
.pr-quote-marquee{margin-top:44px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.pr-quote-track{display:flex;gap:20px;width:max-content;animation:pr-marquee 32s linear infinite}
.pr-quote-track:hover{animation-play-state:paused}
.pr-quote-card{width:320px;flex:none;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px}
.pr-quote-card p{margin:0 0 16px;font-size:14.5px;line-height:1.65;color:var(--ink);font-weight:600}
.pr-quote-who{display:flex;align-items:center;gap:10px}
.pr-quote-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--ink);display:grid;place-items:center;font:800 14px "Space Grotesk",sans-serif}
.pr-quote-who strong{display:block;font-size:14px;color:var(--ink)}
.pr-quote-who small{display:block;font-size:14px;color:var(--muted);font-weight:600}
@keyframes pr-marquee{to{transform:translateX(-50%)}}

/* =========================================================================
   3b. TECH GRID (screen protectors) — symmetric icon cards
   ========================================================================= */
.pr-tech-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}
.pr-tech-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:30px 26px;transition:transform .3s ease,box-shadow .3s ease}
.pr-tech-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.pr-tech-icon{width:52px;height:52px;border-radius:15px;background:var(--ink);color:var(--accent);display:grid;place-items:center;font-size:20px;margin-bottom:18px}
.pr-tech-card h3{font:700 19px "Space Grotesk",sans-serif;margin:0 0 10px;color:var(--ink)}
.pr-tech-card p{margin:0;font-size:14px;line-height:1.65;color:var(--muted);font-weight:500}
@media(max-width:860px){.pr-tech-grid{grid-template-columns:1fr}}

/* =========================================================================
   4b. DIAMOND PROCESS (screen protectors) — horizontal steps, diamond nodes
   ========================================================================= */
.pr-process{position:relative;margin-top:56px}
.pr-process-line{position:absolute;top:27px;left:0;right:0;height:2px;background:var(--line)}
.pr-process-line span{display:block;height:100%;width:0;background:var(--accent);transition:width 1.2s cubic-bezier(.2,.7,.2,1)}
.pr-process-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
.pr-process-step{text-align:center;padding-top:0}
.pr-diamond{width:54px;height:54px;background:var(--ink);color:var(--bg);display:grid;place-items:center;margin:0 auto 20px;transform:rotate(45deg);border-radius:8px;position:relative;z-index:2}
.pr-diamond span{transform:rotate(-45deg);font:800 14px "Space Grotesk",sans-serif}
.pr-process-step h3{font:700 16.5px "Space Grotesk",sans-serif;margin:0 0 8px;color:var(--ink)}
.pr-process-step p{margin:0;font-size:14px;line-height:1.6;color:var(--muted);font-weight:500}
@media(max-width:760px){.pr-process-row{grid-template-columns:1fr;gap:34px}.pr-process-line{display:none}}

/* =========================================================================
   5b. DIAMOND GALLERY (screen protectors)
   ========================================================================= */
.pr-diamond-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.pr-dg-item{text-align:center}
.pr-dg-clip{position:relative;aspect-ratio:1/1.08;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);overflow:hidden;background:var(--surface)}
.pr-dg-clip img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.pr-dg-item:hover .pr-dg-clip img{transform:scale(1.12)}
.pr-dg-item h3{font:700 15px "Space Grotesk",sans-serif;margin:16px 0 4px;color:var(--ink)}
.pr-dg-item p{margin:0 0 12px;font-size:14px;color:var(--muted);font-weight:600}
@media(max-width:860px){.pr-diamond-gallery{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.pr-diamond-gallery{grid-template-columns:1fr}}

/* =========================================================================
   6b. DURABILITY RINGS (screen protectors) — conic-gradient gauges
   ========================================================================= */
.pr-ring-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px;text-align:center}
.pr-ring{width:150px;height:150px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;background:conic-gradient(var(--accent) calc(var(--pct,0) * 1%),var(--surface) 0)}
.pr-ring::before{content:"";position:absolute}
.pr-ring-inner{width:118px;height:118px;border-radius:50%;background:var(--bg);display:grid;place-items:center;flex-direction:column}
.pr-ring-inner strong{display:block;font:800 26px "Space Grotesk",sans-serif;color:var(--ink)}
.pr-ring-inner small{display:block;font-size:14px;color:var(--muted);font-weight:700}
.pr-ring-grid h3{font:700 16px "Space Grotesk",sans-serif;margin:0;color:var(--ink)}
.pr-ring-grid p{margin:6px 0 0;font-size:14px;color:var(--muted);font-weight:500}
@media(max-width:760px){.pr-ring-grid{grid-template-columns:1fr}}

/* =========================================================================
   7b. QUOTE ROTATOR (screen protectors)
   ========================================================================= */
.pr-rotator{max-width:680px;margin:44px auto 0;text-align:center;position:relative;min-height:190px}
.pr-rotator-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;display:flex;flex-direction:column;align-items:center;justify-content:center}
.pr-rotator-slide.pr-active{opacity:1;position:relative}
.pr-rotator-slide p{font:600 20px/1.55 "Space Grotesk",sans-serif;color:var(--ink);margin:0 0 18px;max-width:600px}
.pr-rotator-avatar{width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--ink);display:grid;place-items:center;font:800 14px "Space Grotesk",sans-serif;margin:0 auto 10px}
.pr-rotator-slide strong{font-size:14px;color:var(--ink)}
.pr-rotator-slide small{display:block;font-size:14px;color:var(--muted);font-weight:600}
.pr-rotator-dots{display:flex;gap:8px;justify-content:center;margin-top:20px}
.pr-rotator-dots button{width:8px;height:8px;border-radius:50%;background:var(--line);padding:0}
.pr-rotator-dots button.pr-active{background:var(--accent);width:22px;border-radius:5px}

/* =========================================================================
   FAQ variants (shared shell, two visual arrangements)
   ========================================================================= */
.pr-faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}
.pr-faq-list{display:grid;gap:12px}
.pr-faq-item{border:1px solid var(--line);border-radius:16px;background:var(--surface);overflow:hidden}
.pr-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;text-align:left;background:none;font:700 14.5px "Space Grotesk",sans-serif;color:var(--ink)}
.pr-faq-q i{transition:transform .25s ease;color:var(--accent);flex:none}
.pr-faq-item.pr-open .pr-faq-q i{transform:rotate(45deg)}
.pr-faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.pr-faq-item.pr-open .pr-faq-a{max-height:200px}
.pr-faq-a p{margin:0;padding:0 20px 20px;font-size:14px;line-height:1.65;color:var(--muted);font-weight:500}
.pr-faq-single{display:grid;gap:12px}
@media(max-width:860px){.pr-faq-grid{grid-template-columns:1fr}}

/* =========================================================================
   CTA banners — distinct animated backgrounds, no photography
   ========================================================================= */
.pr-cta{border-radius:28px;padding:70px 50px;position:relative;overflow:hidden;background:var(--ink);color:var(--bg);text-align:center}
.pr-cta h2{font:700 clamp(28px,4vw,44px)/1.1 "Space Grotesk",sans-serif;color:var(--bg);margin:0 0 14px;position:relative;z-index:2}
.pr-cta p{font-size:15px;color:color-mix(in srgb,var(--bg) 70%,transparent);max-width:520px;margin:0 auto 28px;position:relative;z-index:2;font-weight:500}
.pr-cta-btn{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:var(--ink);font:800 14px "Space Grotesk",sans-serif;padding:16px 28px;border-radius:14px;transition:transform .25s ease}
.pr-cta-btn:hover{transform:translateY(-3px)}
.pr-cta-streak{position:absolute;inset:-40%;background:repeating-linear-gradient(100deg,transparent 0 60px,color-mix(in srgb,var(--accent) 14%,transparent) 60px 64px);animation:pr-streak 9s linear infinite}
@keyframes pr-streak{to{transform:translateX(120px)}}
.pr-cta-shards{position:absolute;inset:0;background-image:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--accent) 10%,transparent) 0 15deg,transparent 15deg 30deg);opacity:.4;animation:pr-spin 40s linear infinite}

@media(max-width:760px){.pr-cta{padding:50px 26px}}

/* section padding tightened on mobile, never a hard gap */
@media(max-width:760px){.pr-section{padding:64px 0}}

/* cart icon micro-interactions triggered from product-redesign.js */
.cart-btn.pr-bump{animation:pr-cart-bump .45s cubic-bezier(.34,1.56,.64,1)}
@keyframes pr-cart-bump{0%{transform:scale(1)}35%{transform:scale(1.28) rotate(-8deg)}65%{transform:scale(.94) rotate(4deg)}100%{transform:scale(1)}}
.cart-count.pr-pop{animation:pr-count-pop .4s cubic-bezier(.34,1.56,.64,1)}
@keyframes pr-count-pop{0%{transform:scale(1)}50%{transform:scale(1.5)}100%{transform:scale(1)}}


/* ========================================================================
   CHARGERS — FINAL VISIBILITY / MOTION / THEME PASS
   Scoped only to .pr-chargers. Other pages are intentionally untouched.
   ======================================================================== */
body.pr-chargers{
  --charger-light-bg:#F8EAEA;
  --charger-light-surface:#FFF8F8;
  --charger-light-ink:#1A0D0D;
  --charger-light-muted:#5A3333;
  --charger-light-accent:#A95757;
  --charger-light-line:rgba(45,18,18,.18);
  --charger-dark-bg:#090707;
  --charger-dark-surface:#171010;
  --charger-dark-ink:#FAEEEE;
  --charger-dark-muted:#DDBABA;
  --charger-dark-accent:#F08D8D;
  --charger-dark-line:rgba(250,238,238,.18);
}

/* Keep every content string readable; icons are excluded from this rule. */
body.pr-chargers .pr-section,
body.pr-chargers .pr-section *{
  text-rendering:optimizeLegibility;
}
body.pr-chargers .pr-section :where(p,small,td,th,button,a,li,span,strong,h3){
  font-size: max(14px, 1em);
}
body.pr-chargers .pr-section .pr-kicker{font-size:14px!important;}
body.pr-chargers .pr-section .pr-stat-num{font-size:clamp(28px,3.4vw,42px)!important;}
body.pr-chargers .pr-section .pr-hero-copy h1{font-size:clamp(38px,5.2vw,64px)!important;}
body.pr-chargers .pr-section .pr-h2{font-size:clamp(30px,4vw,50px)!important;}
body.pr-chargers .pr-section h3{font-size:max(17px,1em)!important;}

/* -------------------- LIGHT MODE: complete charger palette -------------------- */
html:not(.dark) body.pr-chargers{
  background:var(--charger-light-bg)!important;
  color:var(--charger-light-ink)!important;
}
html:not(.dark) body.pr-chargers .pr-section:not(.pr-hero){
  background:var(--charger-light-bg)!important;
  color:var(--charger-light-ink)!important;
  border-color:var(--charger-light-line)!important;
}
html:not(.dark) body.pr-chargers .pr-section:nth-of-type(odd):not(.pr-hero){
  background:#F4DEDE!important;
}
html:not(.dark) body.pr-chargers .pr-h2,
html:not(.dark) body.pr-chargers .pr-tl-card h3,
html:not(.dark) body.pr-chargers .pr-stat-num,
html:not(.dark) body.pr-chargers .pr-quote-card p,
html:not(.dark) body.pr-chargers .pr-quote-who strong,
html:not(.dark) body.pr-chargers .pr-faq-q,
html:not(.dark) body.pr-chargers .pr-compare-table tbody th,
html:not(.dark) body.pr-chargers .pr-compare-table td b{
  color:var(--charger-light-ink)!important;
}
html:not(.dark) body.pr-chargers .pr-lead,
html:not(.dark) body.pr-chargers .pr-tl-card p,
html:not(.dark) body.pr-chargers .pr-stat-cell small,
html:not(.dark) body.pr-chargers .pr-quote-who small,
html:not(.dark) body.pr-chargers .pr-faq-a p,
html:not(.dark) body.pr-chargers .pr-compare-table td{
  color:var(--charger-light-muted)!important;
}
html:not(.dark) body.pr-chargers .pr-stat-cell,
html:not(.dark) body.pr-chargers .pr-tl-card,
html:not(.dark) body.pr-chargers .pr-quote-card,
html:not(.dark) body.pr-chargers .pr-faq-item{
  background:var(--charger-light-surface)!important;
  border-color:var(--charger-light-line)!important;
  box-shadow:0 18px 45px rgba(65,28,28,.07);
}
html:not(.dark) body.pr-chargers .pr-timeline-spine,
html:not(.dark) body.pr-chargers .pr-compare-table,
html:not(.dark) body.pr-chargers .pr-compare-table th,
html:not(.dark) body.pr-chargers .pr-compare-table td,
html:not(.dark) body.pr-chargers .pr-stat-cell{
  border-color:var(--charger-light-line)!important;
}
html:not(.dark) body.pr-chargers .pr-tl-node{
  background:var(--charger-light-ink)!important;color:#FFF8F8!important;
}
html:not(.dark) body.pr-chargers .pr-stat-cell i,
html:not(.dark) body.pr-chargers .pr-kicker,
html:not(.dark) body.pr-chargers .pr-kicker span,
html:not(.dark) body.pr-chargers .pr-tl-card i,
html:not(.dark) body.pr-chargers .pr-faq-q i{
  color:var(--charger-light-accent)!important;
}
html:not(.dark) body.pr-chargers .pr-compare-table thead th{
  background:var(--charger-light-ink)!important;color:#FFF8F8!important;
}

/* -------------------- DARK MODE: same dark language as existing pages ----- */
html.dark body.pr-chargers{
  background:var(--charger-dark-bg)!important;
  color:var(--charger-dark-ink)!important;
}
html.dark body.pr-chargers .pr-section:not(.pr-hero){
  background:var(--charger-dark-bg)!important;
  color:var(--charger-dark-ink)!important;
  border-color:var(--charger-dark-line)!important;
}
html.dark body.pr-chargers .pr-section:nth-of-type(odd):not(.pr-hero){
  background:#120909!important;
}
html.dark body.pr-chargers .pr-h2,
html.dark body.pr-chargers .pr-tl-card h3,
html.dark body.pr-chargers .pr-stat-num,
html.dark body.pr-chargers .pr-quote-card p,
html.dark body.pr-chargers .pr-quote-who strong,
html.dark body.pr-chargers .pr-faq-q,
html.dark body.pr-chargers .pr-compare-table tbody th,
html.dark body.pr-chargers .pr-compare-table td b{
  color:var(--charger-dark-ink)!important;
}
html.dark body.pr-chargers .pr-lead,
html.dark body.pr-chargers .pr-tl-card p,
html.dark body.pr-chargers .pr-stat-cell small,
html.dark body.pr-chargers .pr-quote-who small,
html.dark body.pr-chargers .pr-faq-a p,
html.dark body.pr-chargers .pr-compare-table td{
  color:var(--charger-dark-muted)!important;
}
html.dark body.pr-chargers .pr-stat-cell,
html.dark body.pr-chargers .pr-tl-card,
html.dark body.pr-chargers .pr-quote-card,
html.dark body.pr-chargers .pr-faq-item{
  background:var(--charger-dark-surface)!important;
  border-color:var(--charger-dark-line)!important;
  box-shadow:0 20px 50px rgba(0,0,0,.24);
}
html.dark body.pr-chargers .pr-timeline-spine,
html.dark body.pr-chargers .pr-compare-table,
html.dark body.pr-chargers .pr-compare-table th,
html.dark body.pr-chargers .pr-compare-table td,
html.dark body.pr-chargers .pr-stat-cell{
  border-color:var(--charger-dark-line)!important;
}
html.dark body.pr-chargers .pr-tl-node{
  background:var(--charger-dark-ink)!important;color:#170909!important;
}
html.dark body.pr-chargers .pr-stat-cell i,
html.dark body.pr-chargers .pr-kicker,
html.dark body.pr-chargers .pr-kicker span,
html.dark body.pr-chargers .pr-tl-card i,
html.dark body.pr-chargers .pr-faq-q i{
  color:var(--charger-dark-accent)!important;
}
html.dark body.pr-chargers .pr-compare-table thead th{
  background:#211212!important;color:var(--charger-dark-ink)!important;
}

/* -------------------- SECTION 1: replace diagonal background completely --- */
body.pr-chargers .pr-hero{
  background:#F1DDDD!important;
  color:var(--charger-light-ink)!important;
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
body.pr-chargers .pr-hero::before{
  content:"";
  position:absolute;
  width:620px;height:620px;
  left:-180px;top:-220px;
  border:1px solid rgba(169,87,87,.22);
  border-radius:50%;
  box-shadow:0 0 0 70px rgba(169,87,87,.035),0 0 0 140px rgba(169,87,87,.025);
  animation:chargerHeroOrbit 15s linear infinite;
  z-index:-1;
}
body.pr-chargers .pr-hero::after{
  content:"";
  position:absolute;
  width:16px;height:16px;
  right:18%;top:23%;
  border-radius:50%;
  background:var(--charger-light-accent);
  box-shadow:0 0 0 9px rgba(169,87,87,.10),0 0 30px rgba(169,87,87,.25);
  animation:chargerHeroDot 2.8s ease-in-out infinite;
  z-index:-1;
}
body.pr-chargers .pr-energy-line{display:none!important;}
body.pr-chargers .pr-hero-copy h1{color:var(--charger-light-ink)!important;}
body.pr-chargers .pr-hero-copy h1 em{color:var(--charger-light-accent)!important;}
body.pr-chargers .pr-hero-copy p{color:#5A3333!important;}
body.pr-chargers .pr-hero-stats>div{
  background:rgba(255,255,255,.28)!important;
  border-color:rgba(45,18,18,.18)!important;
  backdrop-filter:blur(8px);
}
body.pr-chargers .pr-hero-stats strong{color:var(--charger-light-ink)!important;}
body.pr-chargers .pr-hero-stats small{color:#5A3333!important;}
body.pr-chargers .pr-hero-cta{background:var(--charger-light-accent)!important;color:#FFF8F8!important;}
body.pr-chargers .pr-charge-capsule{
  border-color:rgba(45,18,18,.35)!important;
  background:rgba(255,255,255,.24)!important;
  box-shadow:0 28px 70px rgba(65,28,28,.14),inset 0 0 50px rgba(255,255,255,.22);
  animation:chargerCapsuleFloat 4.5s ease-in-out infinite;
}
body.pr-chargers .pr-charge-pct{color:var(--charger-light-accent)!important;}
body.pr-chargers .pr-charge-bolt{color:var(--charger-light-accent)!important;}
body.pr-chargers .pr-charge-fill{background:linear-gradient(180deg,#C97979,#A95757)!important;}

html.dark body.pr-chargers .pr-hero{
  background:#090707!important;
  color:var(--charger-dark-ink)!important;
}
html.dark body.pr-chargers .pr-hero::before{
  border-color:rgba(240,141,141,.18);
  box-shadow:0 0 0 70px rgba(240,141,141,.035),0 0 0 140px rgba(240,141,141,.02);
}
html.dark body.pr-chargers .pr-hero::after{
  background:var(--charger-dark-accent);
  box-shadow:0 0 0 9px rgba(240,141,141,.10),0 0 34px rgba(240,141,141,.28);
}
html.dark body.pr-chargers .pr-hero-copy h1{color:var(--charger-dark-ink)!important;}
html.dark body.pr-chargers .pr-hero-copy h1 em{color:var(--charger-dark-accent)!important;}
html.dark body.pr-chargers .pr-hero-copy p{color:var(--charger-dark-muted)!important;}
html.dark body.pr-chargers .pr-hero-stats>div{background:rgba(255,255,255,.025)!important;border-color:var(--charger-dark-line)!important;}
html.dark body.pr-chargers .pr-hero-stats strong{color:var(--charger-dark-ink)!important;}
html.dark body.pr-chargers .pr-hero-stats small{color:var(--charger-dark-muted)!important;}
html.dark body.pr-chargers .pr-hero-cta{background:var(--charger-dark-accent)!important;color:#210E0E!important;}
html.dark body.pr-chargers .pr-charge-capsule{
  border-color:rgba(250,238,238,.28)!important;
  background:rgba(255,255,255,.025)!important;
  box-shadow:0 28px 70px rgba(0,0,0,.48),inset 0 0 55px rgba(240,141,141,.04);
}
html.dark body.pr-chargers .pr-charge-pct{color:var(--charger-dark-accent)!important;}
html.dark body.pr-chargers .pr-charge-bolt{color:var(--charger-dark-ink)!important;}
html.dark body.pr-chargers .pr-charge-fill{background:linear-gradient(180deg,#F08D8D,#A95757)!important;}

@keyframes chargerHeroOrbit{to{transform:rotate(360deg)}}
@keyframes chargerHeroDot{0%,100%{transform:scale(.8);opacity:.6}50%{transform:scale(1.25);opacity:1}}
@keyframes chargerCapsuleFloat{0%,100%{transform:translateY(0) rotate(.5deg)}50%{transform:translateY(-12px) rotate(-.5deg)}}

/* Hero copy has its own entrance, so section 1 visibly animates on load. */
body.pr-chargers .pr-hero-copy.pr-in{animation:chargerHeroCopy .85s cubic-bezier(.2,.75,.2,1) both;}
body.pr-chargers .pr-hero-visual.pr-in{animation:chargerHeroVisual 1s cubic-bezier(.2,.75,.2,1) .12s both;}
@keyframes chargerHeroCopy{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}
@keyframes chargerHeroVisual{from{opacity:0;transform:scale(.86) rotate(3deg)}to{opacity:1;transform:scale(1) rotate(0)}}

/* -------------------- SECTION 2: stack -> separate animation ------------- */
body.pr-chargers #specs .pr-stat-strip{
  border:0!important;
  overflow:visible!important;
  background:transparent!important;
  position:relative;
  padding:18px 0 12px;
}
body.pr-chargers #specs .pr-stat-cell{
  position:relative;
  transform:translateY(42px) scale(.94);
  opacity:0;
  transition:transform .72s cubic-bezier(.2,.85,.25,1),opacity .55s ease,box-shadow .35s ease;
  border:1px solid var(--line)!important;
  border-radius:18px;
  min-height:160px;
  display:flex;flex-direction:column;justify-content:center;
}
body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell{opacity:1;}
body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell:nth-child(1){transition-delay:0s;transform:translate(-24px,-16px) rotate(-3deg) scale(.97);}
body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell:nth-child(2){transition-delay:.12s;transform:translate(-8px,-6px) rotate(-1deg) scale(.98);}
body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell:nth-child(3){transition-delay:.24s;transform:translate(8px,4px) rotate(1deg) scale(.98);}
body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell:nth-child(4){transition-delay:.36s;transform:translate(24px,14px) rotate(3deg) scale(.97);}
body.pr-chargers #specs .pr-stat-strip.pr-separated .pr-stat-cell{
  transform:translate(0,0) rotate(0) scale(1)!important;
  opacity:1;
}
body.pr-chargers #specs .pr-stat-cell:hover{transform:translateY(-10px) scale(1.025)!important;box-shadow:0 24px 55px rgba(65,28,28,.13);z-index:3;}
@media(max-width:760px){
  body.pr-chargers #specs .pr-stat-strip{grid-template-columns:1fr!important;gap:12px;padding:10px 0;}
  body.pr-chargers #specs .pr-stat-cell{min-height:145px;}
  body.pr-chargers #specs .pr-stat-strip.pr-stack-in .pr-stat-cell:nth-child(n){transform:translateY(18px) scale(.96) rotate(0)!important;}
  body.pr-chargers #specs .pr-stat-strip.pr-separated .pr-stat-cell{transform:none!important;}
}

/* Each following section gets a quiet motion line instead of a new box. */
body.pr-chargers .pr-section:not(.pr-hero)::before{
  content:"";position:absolute;left:0;top:0;width:100%;height:2px;
  transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--accent),transparent);
  opacity:.55;transition:transform 1.1s cubic-bezier(.2,.75,.2,1);
}
body.pr-chargers .pr-section.pr-section-visible:not(.pr-hero)::before{transform:scaleX(1);}

/* Responsive safety */
@media(max-width:900px){
  body.pr-chargers .pr-hero{padding:62px 0 74px!important;}
  body.pr-chargers .pr-hero-grid{gap:30px!important;}
}
@media(max-width:560px){
  body.pr-chargers .pr-wrap{width:min(100% - 28px,1180px);}
  body.pr-chargers .pr-hero-copy h1{font-size:clamp(36px,12vw,52px)!important;}
  body.pr-chargers .pr-h2{font-size:clamp(29px,9vw,42px)!important;}
  body.pr-chargers .pr-hero-copy p{font-size:14px!important;line-height:1.72!important;}
  body.pr-chargers .pr-hero-stats{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;}
  body.pr-chargers .pr-hero-stats>div{min-width:0!important;}
  body.pr-chargers .pr-hero-visual{height:330px!important;}
  body.pr-chargers .pr-charge-capsule{width:150px;height:285px;}
}
@media(prefers-reduced-motion:reduce){
  body.pr-chargers .pr-hero::before,body.pr-chargers .pr-hero::after,body.pr-chargers .pr-charge-capsule{animation:none!important;}
  body.pr-chargers .pr-hero-copy.pr-in,body.pr-chargers .pr-hero-visual.pr-in{animation:none!important;}
  body.pr-chargers #specs .pr-stat-cell{transition:none!important;transform:none!important;opacity:1!important;}
  body.pr-chargers .pr-section:not(.pr-hero)::before{transition:none!important;transform:scaleX(1)!important;}
}

/* ========================================================================
   CHARGERS SECTION 3 — centered spine, image LEFT + content RIGHT
   Scoped only to .pr-chargers so other pages remain unchanged.
   ======================================================================== */
body.pr-chargers .pr-tech-story{position:relative;overflow:hidden;isolation:isolate;padding-bottom:clamp(70px,8vw,110px)!important;}
body.pr-chargers .pr-tech-story .pr-wrap{position:relative;z-index:2;}
body.pr-chargers .pr-tech-story .pr-lead{max-width:760px;}
body.pr-chargers .pr-tech-timeline{position:relative;margin:46px auto 0;max-width:1120px;padding:8px 0 4px;}
body.pr-chargers .pr-tech-spine{position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%);background:linear-gradient(180deg,transparent 0%,var(--charger-light-accent) 5%,var(--charger-light-line) 50%,var(--charger-light-accent) 95%,transparent 100%);opacity:.72;z-index:0;}
body.pr-chargers .pr-tech-spine i{position:absolute;top:0;left:50%;width:14px;height:14px;transform:translate(-50%,-20%);border-radius:50%;background:var(--charger-light-accent);box-shadow:0 0 0 7px rgba(169,87,87,.12),0 0 28px rgba(169,87,87,.35);animation:techPulse 2.2s ease-in-out infinite;}
body.pr-chargers .pr-tech-row{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;min-height:250px;position:relative;}
body.pr-chargers .pr-tech-media{grid-column:1;position:relative;width:100%;height:220px;overflow:hidden;border-radius:24px;border:1px solid var(--charger-light-line);background:var(--charger-light-surface);box-shadow:0 18px 45px rgba(65,28,28,.09);transform:translateX(-50px);opacity:0;transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .75s ease,box-shadow .35s ease;}
body.pr-chargers .pr-tech-media.pr-in{transform:translateX(0);opacity:1;}
body.pr-chargers .pr-tech-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1);}
body.pr-chargers .pr-tech-media:hover img{transform:scale(1.055);}
body.pr-chargers .pr-tech-media::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(20,8,8,.22),transparent 55%,rgba(255,255,255,.08));pointer-events:none;}
body.pr-chargers .pr-tech-media-tag{position:absolute;left:18px;top:18px;z-index:2;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--charger-light-ink);color:#fff;font:800 14px "Space Grotesk",sans-serif;box-shadow:0 8px 22px rgba(0,0,0,.18);}
body.pr-chargers .pr-tech-node{grid-column:2;justify-self:center;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--charger-light-ink);color:#fff;font:800 14px "Space Grotesk",sans-serif;border:6px solid var(--charger-light-bg);z-index:3;box-shadow:0 0 0 1px var(--charger-light-line),0 10px 24px rgba(65,28,28,.16);opacity:0;transform:scale(.65);transition:transform .6s cubic-bezier(.2,.9,.2,1),opacity .5s ease;}
body.pr-chargers .pr-tech-row:has(.pr-tech-media.pr-in) .pr-tech-node{opacity:1;transform:scale(1);}
body.pr-chargers .pr-tech-copy{grid-column:3;min-width:0;padding:30px 0 30px 8px;opacity:0;transform:translateX(50px);transition:transform .9s cubic-bezier(.2,.8,.2,1) .08s,opacity .75s ease .08s;}
body.pr-chargers .pr-tech-copy.pr-in{opacity:1;transform:translateX(0);}
body.pr-chargers .pr-tech-copy .pr-tech-mini{display:block;font:800 13px/1.3 "Space Grotesk",sans-serif;letter-spacing:.13em;color:var(--charger-light-accent);margin-bottom:9px;}
body.pr-chargers .pr-tech-copy>i{display:block;font-size:21px;color:var(--charger-light-accent);margin-bottom:10px;}
body.pr-chargers .pr-tech-copy h3{margin:0 0 10px;font:800 clamp(21px,2.2vw,28px)/1.2 "Space Grotesk",sans-serif;color:var(--charger-light-ink)!important;}
body.pr-chargers .pr-tech-copy p{margin:0;max-width:500px;font:600 15px/1.72 Inter,sans-serif;color:var(--charger-light-muted)!important;}
body.pr-chargers .pr-tech-copy strong{display:block;margin-top:14px;font:800 14px/1.5 Inter,sans-serif;color:var(--charger-light-ink)!important;}
body.pr-chargers .tech-row-1 .pr-tech-media{transition-delay:.02s;}
body.pr-chargers .tech-row-2 .pr-tech-media{transition-delay:.10s;}
body.pr-chargers .tech-row-3 .pr-tech-media{transition-delay:.18s;}
body.pr-chargers .tech-row-4 .pr-tech-media{transition-delay:.26s;}
body.pr-chargers .tech-row-1 .pr-tech-copy{transition-delay:.10s;}
body.pr-chargers .tech-row-2 .pr-tech-copy{transition-delay:.18s;}
body.pr-chargers .tech-row-3 .pr-tech-copy{transition-delay:.26s;}
body.pr-chargers .tech-row-4 .pr-tech-copy{transition-delay:.34s;}

html.dark body.pr-chargers .pr-tech-spine{background:linear-gradient(180deg,transparent 0%,var(--charger-dark-accent) 5%,var(--charger-dark-line) 50%,var(--charger-dark-accent) 95%,transparent 100%);}
html.dark body.pr-chargers .pr-tech-spine i{background:var(--charger-dark-accent);box-shadow:0 0 0 7px rgba(240,141,141,.10),0 0 30px rgba(240,141,141,.30);}
html.dark body.pr-chargers .pr-tech-media{background:var(--charger-dark-surface);border-color:var(--charger-dark-line);box-shadow:0 20px 48px rgba(0,0,0,.28);}
html.dark body.pr-chargers .pr-tech-media-tag{background:var(--charger-dark-ink);color:#160909;}
html.dark body.pr-chargers .pr-tech-node{background:var(--charger-dark-ink);color:#160909;border-color:var(--charger-dark-bg);box-shadow:0 0 0 1px var(--charger-dark-line),0 12px 28px rgba(0,0,0,.32);}
html.dark body.pr-chargers .pr-tech-copy .pr-tech-mini,
html.dark body.pr-chargers .pr-tech-copy>i{color:var(--charger-dark-accent);}
html.dark body.pr-chargers .pr-tech-copy h3,
html.dark body.pr-chargers .pr-tech-copy strong{color:var(--charger-dark-ink)!important;}
html.dark body.pr-chargers .pr-tech-copy p{color:var(--charger-dark-muted)!important;}

@keyframes techPulse{0%,100%{transform:translate(-50%,-20%) scale(.9);opacity:.75}50%{transform:translate(-50%,-20%) scale(1.18);opacity:1}}

@media(max-width:900px){
  body.pr-chargers .pr-tech-timeline{margin-top:34px;}
  body.pr-chargers .pr-tech-row{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);min-height:230px;}
  body.pr-chargers .pr-tech-media{height:195px;border-radius:20px;}
  body.pr-chargers .pr-tech-copy{padding-left:2px;}
  body.pr-chargers .pr-tech-copy p{font-size:14px;line-height:1.65;}
}
@media(max-width:680px){
  body.pr-chargers .pr-tech-timeline{padding-left:28px;margin-top:30px;}
  body.pr-chargers .pr-tech-spine{left:9px;transform:none;}
  body.pr-chargers .pr-tech-spine i{left:0;}
  body.pr-chargers .pr-tech-row{display:grid;grid-template-columns:28px minmax(0,1fr);gap:0;min-height:0;padding:0 0 30px;align-items:start;}
  body.pr-chargers .pr-tech-media{grid-column:2;grid-row:1;height:190px;margin-bottom:14px;transform:translateY(35px);}
  body.pr-chargers .pr-tech-media.pr-in{transform:translateY(0);}
  body.pr-chargers .pr-tech-node{grid-column:1;grid-row:1;width:30px;height:30px;border-width:4px;font-size:11px;transform:scale(.65);margin-top:12px;}
  body.pr-chargers .pr-tech-row:has(.pr-tech-media.pr-in) .pr-tech-node{transform:scale(1);}
  body.pr-chargers .pr-tech-copy{grid-column:2;grid-row:2;padding:0;transform:translateY(25px);}
  body.pr-chargers .pr-tech-copy.pr-in{transform:translateY(0);}
  body.pr-chargers .pr-tech-copy h3{font-size:21px!important;}
  body.pr-chargers .pr-tech-copy p{font-size:14px!important;line-height:1.7!important;}
  body.pr-chargers .pr-tech-copy strong{font-size:14px!important;}
}
@media(prefers-reduced-motion:reduce){
  body.pr-chargers .pr-tech-spine i{animation:none!important;}
  body.pr-chargers .pr-tech-media,body.pr-chargers .pr-tech-copy,body.pr-chargers .pr-tech-node{transition:none!important;transform:none!important;opacity:1!important;}
}


/* =========================================================================
   CHARGERS — SECTION 4 HANGING FOUR-IN-A-LINE REDESIGN
   Open rail composition: four different images suspended from one line.
   ========================================================================= */
body.pr-chargers #showcase.pr-hanging-lineup{
  position:relative;
  overflow:hidden;
}
body.pr-chargers #showcase.pr-hanging-lineup .pr-lead{
  max-width:760px;
}
body.pr-chargers .pr-hanging-rail{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  margin-top:54px;
  padding:26px 0 8px;
}
body.pr-chargers .pr-rail-line{
  position:absolute;
  left:2%;
  right:2%;
  top:26px;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--charger-light-accent) 8%,var(--charger-light-accent) 92%,transparent);
  opacity:.45;
}
body.pr-chargers .pr-rail-glow{
  position:absolute;
  left:10%;
  top:20px;
  width:18%;
  height:14px;
  border-radius:50%;
  background:var(--charger-light-accent);
  filter:blur(14px);
  opacity:.22;
  animation:chargerRailGlow 4s ease-in-out infinite alternate;
}
body.pr-chargers .pr-hanging-item{
  position:relative;
  padding-top:42px;
  min-width:0;
  transform-origin:50% 20px;
}
body.pr-chargers .pr-hanger{
  position:absolute;
  top:25px;
  left:50%;
  width:2px;
  height:34px;
  transform:translateX(-50%);
  background:linear-gradient(var(--charger-light-accent),transparent);
  z-index:1;
}
body.pr-chargers .pr-hanger::before{
  content:"";
  position:absolute;
  top:-5px;
  left:50%;
  width:10px;
  height:10px;
  transform:translateX(-50%);
  border:2px solid var(--charger-light-accent);
  border-radius:50%;
  background:var(--charger-light-bg);
}
body.pr-chargers .pr-hanging-image{
  position:relative;
  height:220px;
  overflow:hidden;
  border-radius:24px 24px 16px 16px;
  border:1px solid var(--charger-light-line);
  background:var(--charger-light-surface);
  box-shadow:0 18px 45px rgba(50,20,20,.10);
}
body.pr-chargers .pr-hanging-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s ease;
}
body.pr-chargers .pr-hanging-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(125deg,transparent 35%,rgba(255,255,255,.34) 48%,transparent 61%);
  transform:translateX(-120%);
  animation:chargerImageSweep 5s ease-in-out infinite;
  pointer-events:none;
}
body.pr-chargers .pr-hanging-item:hover .pr-hanging-image img{
  transform:scale(1.07) translateY(-4px);
  filter:saturate(1.08);
}
body.pr-chargers .pr-hanging-info{
  padding:14px 4px 0;
}
body.pr-chargers .pr-hanging-index{
  display:block;
  margin-bottom:7px;
  color:var(--charger-light-accent);
  font:800 13px/1.2 "Space Grotesk",sans-serif;
  letter-spacing:.12em;
}
body.pr-chargers .pr-hanging-info h3{
  margin:0 0 7px;
  color:var(--charger-light-ink)!important;
  font:800 18px/1.25 "Space Grotesk",sans-serif;
}
body.pr-chargers .pr-hanging-info p{
  margin:0 0 14px;
  color:var(--charger-light-muted)!important;
  font-size:14px!important;
  line-height:1.6;
  font-weight:650;
}
body.pr-chargers .pr-hanging-info .pr-add-cart{
  background:var(--charger-light-ink);
  color:#fff!important;
  box-shadow:none;
}
body.pr-chargers .pr-hanging-info .pr-add-cart:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 25px rgba(30,10,10,.18);
}
body.pr-chargers .pr-hanging-a{animation:chargerHangA 5s ease-in-out infinite}
body.pr-chargers .pr-hanging-b{animation:chargerHangB 5.7s ease-in-out .2s infinite}
body.pr-chargers .pr-hanging-c{animation:chargerHangC 5.3s ease-in-out .4s infinite}
body.pr-chargers .pr-hanging-d{animation:chargerHangD 5.9s ease-in-out .1s infinite}

@keyframes chargerHangA{0%,100%{transform:rotate(-.8deg)}50%{transform:rotate(1.1deg) translateY(4px)}}
@keyframes chargerHangB{0%,100%{transform:rotate(.9deg)}50%{transform:rotate(-1.2deg) translateY(5px)}}
@keyframes chargerHangC{0%,100%{transform:rotate(-.6deg)}50%{transform:rotate(1.3deg) translateY(4px)}}
@keyframes chargerHangD{0%,100%{transform:rotate(.7deg)}50%{transform:rotate(-1deg) translateY(5px)}}
@keyframes chargerRailGlow{from{transform:translateX(0);opacity:.15}to{transform:translateX(280%);opacity:.4}}
@keyframes chargerImageSweep{0%,58%,100%{transform:translateX(-120%)}75%{transform:translateX(120%)}}

html.dark body.pr-chargers .pr-rail-line{
  background:linear-gradient(90deg,transparent,var(--charger-dark-accent) 8%,var(--charger-dark-accent) 92%,transparent);
}
html.dark body.pr-chargers .pr-rail-glow{
  background:var(--charger-dark-accent);
}
html.dark body.pr-chargers .pr-hanger{
  background:linear-gradient(var(--charger-dark-accent),transparent);
}
html.dark body.pr-chargers .pr-hanger::before{
  border-color:var(--charger-dark-accent);
  background:var(--charger-dark-bg);
}
html.dark body.pr-chargers .pr-hanging-image{
  border-color:var(--charger-dark-line);
  background:var(--charger-dark-surface);
  box-shadow:0 20px 50px rgba(0,0,0,.35);
}
html.dark body.pr-chargers .pr-hanging-index{
  color:var(--charger-dark-accent);
}
html.dark body.pr-chargers .pr-hanging-info h3{
  color:var(--charger-dark-ink)!important;
}
html.dark body.pr-chargers .pr-hanging-info p{
  color:var(--charger-dark-muted)!important;
}
html.dark body.pr-chargers .pr-hanging-info .pr-add-cart{
  background:var(--charger-dark-accent);
  color:#210E0E!important;
}

@media(max-width:900px){
  body.pr-chargers .pr-hanging-rail{
    grid-template-columns:repeat(2,minmax(0,1fr));
    row-gap:34px;
  }
}
@media(max-width:560px){
  body.pr-chargers .pr-hanging-rail{
    grid-template-columns:1fr;
    gap:30px;
    margin-top:38px;
    padding-top:16px;
  }
  body.pr-chargers .pr-rail-line{display:none}
  body.pr-chargers .pr-hanging-item{
    padding-top:24px;
    animation:none;
  }
  body.pr-chargers .pr-hanging-image{height:230px}
  body.pr-chargers .pr-hanger{top:7px}
  body.pr-chargers .pr-hanging-info{padding-top:12px}
}

/* =========================================================================
   CHARGERS — SECTION 5 TABLE: stronger dark/light contrast + motion
   ========================================================================= */
body.pr-chargers #compare .pr-compare-table{
  background:var(--charger-light-surface)!important;
  border:1px solid var(--charger-light-line)!important;
  box-shadow:0 20px 55px rgba(55,20,20,.08);
  transform:translateY(28px);
  opacity:0;
  transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1);
}
body.pr-chargers #compare .pr-compare-table.pr-section-visible,
body.pr-chargers #compare .pr-compare-table.pr-reveal{
  opacity:1;
  transform:none;
}
body.pr-chargers #compare .pr-compare-table thead th{
  background:#241313!important;
  color:#FFF8F8!important;
  border-color:rgba(255,255,255,.14)!important;
}
body.pr-chargers #compare .pr-compare-table tbody tr{
  transition:transform .3s ease,background .3s ease;
}
body.pr-chargers #compare .pr-compare-table tbody tr:hover{
  transform:translateX(5px);
  background:#F5E5E5;
}
body.pr-chargers #compare .pr-compare-table tbody th{
  background:#FFF9F9!important;
  color:var(--charger-light-ink)!important;
  border-color:var(--charger-light-line)!important;
}
body.pr-chargers #compare .pr-compare-table td{
  background:#FFFDFD!important;
  color:var(--charger-light-muted)!important;
  border-color:var(--charger-light-line)!important;
  font-size:14px!important;
  font-weight:650;
}
body.pr-chargers #compare .pr-compare-table td b{
  color:var(--charger-light-ink)!important;
}
html.dark body.pr-chargers #compare .pr-compare-table{
  background:#100B0B!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:0 25px 60px rgba(0,0,0,.42);
}
html.dark body.pr-chargers #compare .pr-compare-table thead th{
  background:#2A1717!important;
  color:#FFF4F4!important;
  border-color:rgba(255,255,255,.16)!important;
}
html.dark body.pr-chargers #compare .pr-compare-table tbody tr{
  background:#151010;
}
html.dark body.pr-chargers #compare .pr-compare-table tbody tr:hover{
  background:#241717;
}
html.dark body.pr-chargers #compare .pr-compare-table tbody th{
  background:#1B1212!important;
  color:#FFF0F0!important;
  border-color:rgba(255,255,255,.14)!important;
}
html.dark body.pr-chargers #compare .pr-compare-table td{
  background:#120D0D!important;
  color:#E7CACA!important;
  border-color:rgba(255,255,255,.12)!important;
}
html.dark body.pr-chargers #compare .pr-compare-table td b{
  color:#FFFFFF!important;
}

/* =========================================================================
   SECOND SCREENSHOT / CTA — add an image background without sacrificing text
   ========================================================================= */
body.pr-chargers .pr-cta-section .pr-cta{
  background-image:
    linear-gradient(90deg,rgba(10,5,5,.94),rgba(20,8,8,.82)),
    url("../images/minimal-phone-charger-pink.jpg")!important;
  background-size:cover;
  background-position:center;
  border:1px solid rgba(255,255,255,.08);
}
body.pr-chargers .pr-cta-section .pr-cta::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 42%,rgba(240,141,141,.22),transparent 45%);
  animation:chargerCtaPulse 4.5s ease-in-out infinite alternate;
  pointer-events:none;
}
body.pr-chargers .pr-cta-section .pr-cta h2{
  color:#FFFFFF!important;
  text-shadow:0 3px 22px rgba(0,0,0,.65);
}
body.pr-chargers .pr-cta-section .pr-cta p{
  color:#F4DCDC!important;
  font-size:15px!important;
  font-weight:650;
  text-shadow:0 2px 12px rgba(0,0,0,.7);
}
body.pr-chargers .pr-cta-section .pr-cta-btn{
  background:#F08D8D!important;
  color:#210E0E!important;
}
@keyframes chargerCtaPulse{from{opacity:.35;transform:scale(.96)}to{opacity:.8;transform:scale(1.04)}}

@media(prefers-reduced-motion:reduce){
  body.pr-chargers .pr-hanging-item,
  body.pr-chargers .pr-hanging-image::after,
  body.pr-chargers .pr-rail-glow,
  body.pr-chargers .pr-cta-section .pr-cta::before{animation:none!important}
}


/* ================================================================
   SCREEN PROTECTORS — FINAL SECTION 1 + 2 CONTRAST / MOTION
   Scoped to .pr-screen so Chargers and all other pages stay intact.
   ================================================================ */

/* Stable, high-contrast screen-protector palette */
body.pr-screen{
  --bg:#FFF7F7;
  --surface:#FFFFFF;
  --ink:#160D0D;
  --muted:#4B2929;
  --accent:#B95F66;
  --line:rgba(42,20,20,.16);
  --shadow:0 22px 55px rgba(46,20,20,.14);
  background:#FFF7F7 !important;
  color:#160D0D;
}
body.pr-screen .pr-section{
  color:#160D0D;
}
body.pr-screen .pr-kicker{
  color:#9D4D54 !important;
}
body.pr-screen .pr-h2{
  color:#160D0D !important;
}
body.pr-screen .pr-h2 em{
  color:#9D4D54 !important;
}
body.pr-screen .pr-lead{
  color:#4B2929 !important;
}

/* Section 1: remove the old shard/striped background completely */
body.pr-screen .pr-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 35%,rgba(185,95,102,.13),transparent 24%),
    radial-gradient(circle at 65% 75%,rgba(255,255,255,.08),transparent 28%),
    #160D0D !important;
}
body.pr-screen .pr-hero::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  right:-150px;
  top:50%;
  transform:translateY(-50%);
  animation:screenHeroOrbit 18s linear infinite;
  pointer-events:none;
}
body.pr-screen .pr-hero::after{
  content:"";
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#F29191;
  right:25%;
  top:22%;
  box-shadow:0 0 0 9px rgba(242,145,145,.10),0 0 28px rgba(242,145,145,.55);
  animation:screenHeroDot 3s ease-in-out infinite;
  pointer-events:none;
}
@keyframes screenHeroOrbit{
  from{transform:translateY(-50%) rotate(0deg)}
  to{transform:translateY(-50%) rotate(360deg)}
}
@keyframes screenHeroDot{
  0%,100%{transform:translate(0,0);opacity:.65}
  50%{transform:translate(-25px,18px);opacity:1}
}

/* Hide old diamond/shard background elements */
body.pr-screen .pr-shard{
  display:none !important;
}

/* New orbit treatment around the protector visual */
body.pr-screen .pr-hero-visual{
  z-index:1;
}
body.pr-screen .pr-hero-orbit{
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(242,145,145,.30);
  border-radius:50%;
  pointer-events:none;
  transform:translate(-50%,-50%);
}
body.pr-screen .pr-hero-orbit.orbit-a{
  width:410px;
  height:410px;
  animation:screenOrbitA 12s linear infinite;
}
body.pr-screen .pr-hero-orbit.orbit-b{
  width:330px;
  height:330px;
  border-style:dashed;
  border-color:rgba(255,255,255,.20);
  animation:screenOrbitB 9s linear infinite reverse;
}
body.pr-screen .pr-hero-glow{
  position:absolute;
  width:170px;
  height:170px;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(242,145,145,.14);
  filter:blur(28px);
  animation:screenGlow 2.8s ease-in-out infinite;
}
@keyframes screenOrbitA{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(360deg)}
}
@keyframes screenOrbitB{
  from{transform:translate(-50%,-50%) rotate(0deg)}
  to{transform:translate(-50%,-50%) rotate(-360deg)}
}
@keyframes screenGlow{
  0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(.9)}
  50%{opacity:.9;transform:translate(-50%,-50%) scale(1.18)}
}

/* Hero text is always above decorative layers */
body.pr-screen .pr-hero-copy{
  position:relative;
  z-index:5;
}
body.pr-screen .pr-hero-copy h1{
  color:#FFF8F8 !important;
  text-shadow:0 2px 18px rgba(0,0,0,.24);
}
body.pr-screen .pr-hero-copy h1 em{
  color:#F29191 !important;
}
body.pr-screen .pr-hero-copy p{
  color:#F1DCDC !important;
  opacity:1 !important;
}
body.pr-screen .pr-hero-stats>div{
  border-color:rgba(255,255,255,.24) !important;
  background:rgba(255,255,255,.035);
}
body.pr-screen .pr-hero-stats strong{
  color:#FFF8F8 !important;
}
body.pr-screen .pr-hero-stats small{
  color:#E6CACA !important;
}

/* Section 2 — stack first, then each card separates into its grid slot */
body.pr-screen #technology .pr-tech-grid{
  perspective:1100px;
}
body.pr-screen #technology .pr-tech-card{
  position:relative;
  opacity:0;
  z-index:1;
  transform-origin:50% 50%;
  transition:
    opacity .72s cubic-bezier(.2,.75,.2,1),
    transform .9s cubic-bezier(.16,1,.3,1),
    box-shadow .3s ease,
    border-color .3s ease;
  box-shadow:0 10px 30px rgba(35,15,15,.08);
}
body.pr-screen #technology .pr-tech-card:nth-child(1){
  transform:translate(72px,35px) rotate(5deg) scale(.94);
  z-index:3;
}
body.pr-screen #technology .pr-tech-card:nth-child(2){
  transform:translate(0,0) rotate(0deg) scale(.97);
  z-index:2;
}
body.pr-screen #technology .pr-tech-card:nth-child(3){
  transform:translate(-72px,35px) rotate(-5deg) scale(.94);
  z-index:1;
}
body.pr-screen #technology .pr-tech-card.pr-in{
  opacity:1;
  transform:translate(0,0) rotate(0deg) scale(1);
}
body.pr-screen #technology .pr-tech-card:hover{
  transform:translateY(-9px) scale(1.015);
  border-color:rgba(185,95,102,.35);
  box-shadow:0 18px 40px rgba(45,20,20,.15);
}
body.pr-screen #technology .pr-tech-icon{
  background:#160D0D;
  color:#F29191;
}
body.pr-screen #technology .pr-tech-card h3{
  color:#160D0D !important;
}
body.pr-screen #technology .pr-tech-card p{
  color:#4B2929 !important;
}
@media(max-width:860px){
  body.pr-screen #technology .pr-tech-card:nth-child(1),
  body.pr-screen #technology .pr-tech-card:nth-child(2),
  body.pr-screen #technology .pr-tech-card:nth-child(3){
    transform:translateY(42px) rotate(0deg) scale(.96);
  }
  body.pr-screen #technology .pr-tech-card.pr-in{
    transform:translateY(0) rotate(0deg) scale(1);
  }
}

/* Dark mode — screen protector page gets the same dark visual language
   used by the established Voltiva dark pages, not the global pink body. */
html.dark body.pr-screen{
  --bg:#090707;
  --surface:#211212;
  --ink:#F8EEEE;
  --muted:#D6BABA;
  --accent:#F29191;
  --line:rgba(248,238,238,.16);
  --shadow:0 22px 60px rgba(0,0,0,.38);
  background:#090707 !important;
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-section{
  background:#090707;
  color:#F8EEEE;
  border-color:rgba(248,238,238,.12);
}
html.dark body.pr-screen #technology{
  background:#120909;
}
html.dark body.pr-screen .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-h2,
html.dark body.pr-screen .pr-tech-card h3,
html.dark body.pr-screen .pr-process-step h3,
html.dark body.pr-screen .pr-dg-item h3,
html.dark body.pr-screen .pr-ring-grid h3{
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-h2 em{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-lead,
html.dark body.pr-screen .pr-tech-card p,
html.dark body.pr-screen .pr-process-step p,
html.dark body.pr-screen .pr-dg-item p,
html.dark body.pr-screen .pr-ring-grid p{
  color:#D6BABA !important;
}
html.dark body.pr-screen .pr-tech-card{
  background:#211212 !important;
  border-color:rgba(248,238,238,.16) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.24);
}
html.dark body.pr-screen .pr-tech-icon{
  background:#090707 !important;
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-hero{
  background:
    radial-gradient(circle at 76% 38%,rgba(242,145,145,.12),transparent 25%),
    #090707 !important;
}
html.dark body.pr-screen .pr-hero-copy h1{
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-hero-copy p{
  color:#DDBABA !important;
}
html.dark body.pr-screen .pr-hero-stats>div{
  background:rgba(255,255,255,.025) !important;
  border-color:rgba(248,238,238,.20) !important;
}
html.dark body.pr-screen .pr-hero-stats strong{
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-hero-stats small{
  color:#D6BABA !important;
}
html.dark body.pr-screen .pr-glass-frame{
  box-shadow:0 30px 70px rgba(0,0,0,.52);
}
html.dark body.pr-screen .pr-ring{
  background:conic-gradient(#F29191 calc(var(--pct,0) * 1%),#211212 0);
}
html.dark body.pr-screen .pr-ring-inner{
  background:#090707;
}
html.dark body.pr-screen .pr-ring-inner strong{
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-ring-inner small{
  color:#D6BABA !important;
}
html.dark body.pr-screen .pr-diamond{
  background:#F8EEEE;
  color:#190E0E;
}
html.dark body.pr-screen .pr-process-line{
  background:rgba(248,238,238,.14);
}
html.dark body.pr-screen .pr-process-line span{
  background:#F29191;
}

/* Screen page's remaining surfaces */
html.dark body.pr-screen .pr-dg-clip{
  background:#211212;
}
html.dark body.pr-screen .pr-rotator-slide p,
html.dark body.pr-screen .pr-rotator-slide strong{
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-rotator-slide small{
  color:#D6BABA !important;
}
html.dark body.pr-screen .pr-rotator-avatar{
  background:#F29191;
  color:#190E0E;
}
html.dark body.pr-screen .pr-faq-item{
  background:#211212;
  border-color:rgba(248,238,238,.16);
}
html.dark body.pr-screen .pr-faq-q{
  color:#F8EEEE;
}

/* Light-mode remaining screen-page surfaces */
html:not(.dark) body.pr-screen .pr-dg-item h3{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-dg-item p,
html:not(.dark) body.pr-screen .pr-process-step p,
html:not(.dark) body.pr-screen .pr-ring-grid p{
  color:#4B2929 !important;
}
html:not(.dark) body.pr-screen .pr-rotator-slide p,
html:not(.dark) body.pr-screen .pr-rotator-slide strong{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-rotator-slide small{
  color:#4B2929 !important;
}
html:not(.dark) body.pr-screen .pr-ring{
  background:conic-gradient(#B95F66 calc(var(--pct,0) * 1%),#E9D8D8 0);
}
html:not(.dark) body.pr-screen .pr-ring-inner{
  background:#FFF7F7;
}
html:not(.dark) body.pr-screen .pr-ring-inner strong{
  color:#160D0D !important;
}

/* ===== SCREEN PROTECTORS: sections 4-6 reconstruction ===== */
.pr-screen-sec4,.pr-screen-sec5,.pr-screen-sec6{overflow:hidden}
.pr-screen-sec4{background:var(--bg)}
.sp-collection-rail{position:relative;margin-top:42px;padding:12px 0 22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sp-collection-rail::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line);opacity:.8}
.sp-collection-card{position:relative;z-index:1;min-height:270px;border:1px solid var(--line);background:var(--surface);display:grid;grid-template-columns:54px 1fr 190px;align-items:stretch;border-radius:22px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.06);transition:transform .45s ease,box-shadow .45s ease,border-color .45s ease}
.sp-collection-card:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(0,0,0,.14);border-color:var(--accent)}
.sp-card-number{display:grid;place-items:start center;padding-top:22px;font:800 13px "Space Grotesk";color:var(--accent);border-right:1px solid var(--line)}
.sp-card-copy{padding:26px 20px;display:flex;flex-direction:column;justify-content:center}
.sp-card-tag{font:800 12px "Space Grotesk";letter-spacing:.16em;color:var(--accent)}
.sp-card-copy h3{font:800 21px/1.15 "Space Grotesk";color:var(--ink);margin:8px 0}
.sp-card-copy p{font-size:15px;line-height:1.6;font-weight:600;color:var(--muted);margin:0 0 16px}
.sp-card-copy .pr-add-cart{align-self:flex-start}
.sp-card-visual{min-height:270px;overflow:hidden;background:var(--surface)}
.sp-card-visual img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.sp-collection-card:hover .sp-card-visual img{transform:scale(1.08)}
.sp-screen-sec5{background:var(--surface)}
.sp-proof-head{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:end}
.sp-proof-head .pr-lead{margin:0 0 8px}
.sp-proof-grid{margin-top:55px}
.sp-proof{position:relative;padding:24px 18px 28px;border-top:1px solid var(--line);transition:transform .45s ease}
.sp-proof:hover{transform:translateY(-8px)}
.sp-proof .pr-ring{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.sp-proof:hover .pr-ring{transform:scale(1.05) rotate(8deg)}
.sp-proof h3{font-size:18px!important;font-weight:800!important;color:var(--ink)!important}
.sp-proof p{font-size:15px!important;color:var(--muted)!important;font-weight:600!important}
.sp-proof-line{display:block;height:4px;margin:18px auto 0;max-width:180px;background:var(--line);overflow:hidden;border-radius:4px}
.sp-proof-line i{display:block;width:var(--w);height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1.2s .25s cubic-bezier(.2,.7,.2,1)}
.sp-proof.pr-in .sp-proof-line i{transform:scaleX(1)}
.pr-screen-sec6{background:var(--ink);color:var(--bg)}
.pr-screen-sec6 .pr-kicker{color:var(--accent)}
.pr-screen-sec6 .pr-h2{color:var(--bg)}
.pr-screen-sec6 .pr-h2 em{color:var(--accent)}
.pr-screen-sec6 .pr-lead,.pr-screen-sec6 .pr-rotator-slide p,.pr-screen-sec6 .pr-rotator-slide strong,.pr-screen-sec6 .pr-rotator-slide small{color:var(--bg)}
.sp-voice{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;min-height:560px}
.sp-voice-art{min-height:470px;position:relative;display:grid;place-items:center}
.sp-art-phone{width:min(280px,70%);aspect-ratio:.62;overflow:hidden;border:8px solid rgba(255,255,255,.16);border-radius:38px;transform:rotate(-7deg);box-shadow:0 30px 90px rgba(0,0,0,.45);animation:spPhoneFloat 5s ease-in-out infinite}
.sp-art-phone img{width:100%;height:100%;object-fit:cover}
.sp-art-orbit{position:absolute;width:390px;height:390px;border:1px solid rgba(255,255,255,.2);border-radius:50%;animation:spOrbit 12s linear infinite}
.sp-art-orbit::after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:var(--accent);top:4%;left:50%;box-shadow:0 0 25px var(--accent)}
.sp-art-label{position:absolute;bottom:18px;left:8%;font:800 12px "Space Grotesk";letter-spacing:.14em;color:var(--accent)}
.sp-voice-content{position:relative}
.sp-quote-mark{font:800 80px/0.6 "Space Grotesk";color:var(--accent);opacity:.75;margin:22px 0 8px}
.sp-rotator-new{margin:0;min-height:210px;max-width:720px;text-align:left}
.sp-rotator-new .pr-rotator-slide{align-items:flex-start;justify-content:center}
.sp-rotator-new .pr-rotator-slide p{font-size:21px;line-height:1.55;margin-bottom:20px}
.sp-rotator-new .pr-rotator-slide strong{font-size:15px}
.sp-rotator-new .pr-rotator-slide small{font-size:14px;margin-top:5px}
.sp-voice-content .pr-rotator-dots{justify-content:flex-start}
.sp-voice-content .pr-rotator-dots button{background:rgba(255,255,255,.25)}
.sp-voice-content .pr-rotator-dots button.pr-active{background:var(--accent)}
.sp-voice-foot{display:flex;align-items:center;gap:12px;margin-top:28px;font:800 12px "Space Grotesk";color:var(--accent)}
.sp-voice-foot i{width:70px;height:1px;background:currentColor}.sp-voice-foot b{margin-left:auto;font-size:13px;color:rgba(255,255,255,.7)}
@keyframes spPhoneFloat{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-4deg) translateY(-14px)}}
@keyframes spOrbit{to{transform:rotate(360deg)}}
@media(max-width:900px){.sp-collection-rail{grid-template-columns:1fr}.sp-collection-rail::before{display:none}.sp-proof-head{grid-template-columns:1fr;gap:12px}.sp-voice{grid-template-columns:1fr;gap:30px}.sp-voice-art{min-height:360px}.sp-art-orbit{width:300px;height:300px}}
@media(max-width:600px){.sp-collection-card{grid-template-columns:38px 1fr;min-height:0}.sp-card-visual{grid-column:1/-1;grid-row:2;height:210px}.sp-card-number{padding-top:18px}.sp-card-copy{padding:22px 14px}.sp-card-copy h3{font-size:19px}.sp-card-copy p{font-size:14px}.sp-card-copy .pr-add-cart{margin-top:4px}.sp-proof-grid{margin-top:32px}.sp-voice-art{min-height:300px}.sp-art-phone{width:190px}.sp-art-orbit{width:260px;height:260px}.sp-rotator-new .pr-rotator-slide p{font-size:18px}.sp-voice-foot b{display:none}}
@media(prefers-reduced-motion:reduce){.sp-art-phone,.sp-art-orbit{animation:none}.sp-collection-card,.sp-proof{transition:none}}


/* ================================================================
   SCREEN PROTECTORS — SECTIONS 4/5/6 FINAL CONTRAST FIX
   Fixes light + dark mode text visibility without touching other pages.
   ================================================================ */

/* LIGHT MODE: explicit high-contrast palette */
html:not(.dark) body.pr-screen .pr-screen-sec4,
html:not(.dark) body.pr-screen .pr-screen-sec5{
  background:#FFF7F7 !important;
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6{
  background:#190E0E !important;
  color:#FFF7F7 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec4 .pr-kicker,
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-kicker,
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-kicker{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec4 .pr-h2,
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-h2{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec4 .pr-h2 em,
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-h2 em{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec4 .pr-lead,
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-lead{
  color:#4B2929 !important;
}
html:not(.dark) body.pr-screen .sp-card-number,
html:not(.dark) body.pr-screen .sp-card-tag{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .sp-card-copy h3,
html:not(.dark) body.pr-screen .sp-card-copy p{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .sp-card-copy p{
  color:#4B2929 !important;
}
html:not(.dark) body.pr-screen .sp-proof h3{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .sp-proof p{
  color:#4B2929 !important;
}
html:not(.dark) body.pr-screen .sp-proof-line{
  background:#E2CFCF !important;
}
html:not(.dark) body.pr-screen .sp-screen-sec6 .pr-kicker{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .sp-screen-sec6 .pr-h2{
  color:#FFF7F7 !important;
}
html:not(.dark) body.pr-screen .sp-screen-sec6 .pr-h2 em{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .sp-screen-sec6 .sp-quote-mark{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .sp-rotator-new .pr-rotator-slide p{
  color:#FFF7F7 !important;
}
html:not(.dark) body.pr-screen .sp-rotator-new .pr-rotator-slide p,
html:not(.dark) body.pr-screen .sp-rotator-new .pr-rotator-slide strong{
  color:#FFF7F7 !important;
}
html:not(.dark) body.pr-screen .sp-rotator-new .pr-rotator-slide small{
  color:#E5CACA !important;
}
html:not(.dark) body.pr-screen .sp-voice-foot,
html:not(.dark) body.pr-screen .sp-voice-foot b{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .sp-voice-foot i{
  background:#F29191 !important;
}

/* DARK MODE: force every text layer to readable values */
html.dark body.pr-screen .pr-screen-sec4,
html.dark body.pr-screen .pr-screen-sec5{
  background:#090707 !important;
  color:#F8EEEE !important;
}
html.dark body.pr-screen .pr-screen-sec6{
  background:#050404 !important;
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .pr-screen-sec4 .pr-kicker,
html.dark body.pr-screen .pr-screen-sec5 .pr-kicker,
html.dark body.pr-screen .pr-screen-sec6 .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec4 .pr-h2,
html.dark body.pr-screen .pr-screen-sec5 .pr-h2{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .pr-screen-sec4 .pr-h2 em,
html.dark body.pr-screen .pr-screen-sec5 .pr-h2 em{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec4 .pr-lead,
html.dark body.pr-screen .pr-screen-sec5 .pr-lead{
  color:#E8D0D0 !important;
}
html.dark body.pr-screen .sp-collection-card{
  background:#211212 !important;
  border-color:rgba(248,238,238,.20) !important;
}
html.dark body.pr-screen .sp-card-number,
html.dark body.pr-screen .sp-card-tag{
  color:#F29191 !important;
}
html.dark body.pr-screen .sp-card-copy h3{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .sp-card-copy p{
  color:#E8D0D0 !important;
}
html.dark body.pr-screen .sp-card-number{
  border-color:rgba(248,238,238,.16) !important;
}
html.dark body.pr-screen .sp-card-visual{
  background:#120909 !important;
}
html.dark body.pr-screen .sp-proof{
  border-color:rgba(248,238,238,.18) !important;
}
html.dark body.pr-screen .sp-proof h3{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .sp-proof p{
  color:#E8D0D0 !important;
}
html.dark body.pr-screen .sp-proof-line{
  background:#3A2424 !important;
}
html.dark body.pr-screen .sp-proof-line i{
  background:#F29191 !important;
}
html.dark body.pr-screen .sp-screen-sec6 .pr-h2{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .sp-screen-sec6 .pr-h2 em,
html.dark body.pr-screen .sp-screen-sec6 .sp-quote-mark{
  color:#F29191 !important;
}
html.dark body.pr-screen .sp-screen-sec6 .sp-rotator-new .pr-rotator-slide p,
html.dark body.pr-screen .sp-screen-sec6 .sp-rotator-new .pr-rotator-slide strong{
  color:#FFF7F7 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .sp-screen-sec6 .sp-rotator-new .pr-rotator-slide small{
  color:#E8D0D0 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .sp-screen-sec6 .pr-rotator-dots button{
  background:rgba(255,255,255,.30) !important;
}
html.dark body.pr-screen .sp-screen-sec6 .pr-rotator-dots button.pr-active{
  background:#F29191 !important;
}
html.dark body.pr-screen .sp-voice-foot,
html.dark body.pr-screen .sp-voice-foot b{
  color:#F29191 !important;
}
html.dark body.pr-screen .sp-voice-foot i{
  background:#F29191 !important;
}

/* Never allow inherited low opacity/filter to hide the section copy */
body.pr-screen .pr-screen-sec4 *,
body.pr-screen .pr-screen-sec5 *,
body.pr-screen .pr-screen-sec6 *{
  text-shadow:none;
}
body.pr-screen .sp-card-copy h3,
body.pr-screen .sp-card-copy p,
body.pr-screen .sp-proof h3,
body.pr-screen .sp-proof p,
body.pr-screen .sp-rotator-new .pr-rotator-slide p,
body.pr-screen .sp-rotator-new .pr-rotator-slide strong,
body.pr-screen .sp-rotator-new .pr-rotator-slide small{
  opacity:1 !important;
  visibility:visible !important;
}

/* Keep text readable while preserving the existing reveal animations */
@media(max-width:760px){
  body.pr-screen .sp-card-copy h3{font-size:19px !important}
  body.pr-screen .sp-card-copy p,
  body.pr-screen .sp-proof p,
  body.pr-screen .sp-rotator-new .pr-rotator-slide small{font-size:14px !important}
}


/* =========================================================================
   SCREEN PROTECTORS — FINAL SHOWCASE / SECTION 8 VISIBILITY PASS
   Scoped to .pr-screen only. Replaces the old plain CTA with image + copy.
   ========================================================================= */
body.pr-screen .pr-screen-sec8{
  background:#FFF7F7 !important;
  color:#160D0D !important;
  padding:0 0 78px;
}
body.pr-screen .sp-final-showcase{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  min-height:520px;
  overflow:hidden;
  border-radius:30px;
  background:#160D0D;
  box-shadow:0 28px 70px rgba(38,14,14,.18);
  isolation:isolate;
}
body.pr-screen .sp-final-image{
  position:relative;
  min-height:520px;
  overflow:hidden;
  background:#251313;
}
body.pr-screen .sp-final-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(22,13,13,.02) 20%,rgba(22,13,13,.18) 100%);
  pointer-events:none;
}
body.pr-screen .sp-final-image img{
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  display:block;
  filter:saturate(.92) contrast(1.04);
  transform:scale(1.04);
  transition:transform 1.1s cubic-bezier(.2,.75,.2,1),filter .7s ease;
}
body.pr-screen .sp-final-showcase:hover .sp-final-image img{
  transform:scale(1.10);
  filter:saturate(1.05) contrast(1.08);
}
body.pr-screen .sp-final-badge{
  position:absolute;
  left:28px;
  bottom:28px;
  z-index:3;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  background:rgba(10,5,5,.55);
  backdrop-filter:blur(10px);
  color:#FFF8F8;
  font:800 13px/1 "Space Grotesk",sans-serif;
  letter-spacing:.1em;
}
body.pr-screen .sp-final-orbit{
  position:absolute;
  width:190px;
  height:190px;
  right:-55px;
  top:55px;
  border:1px solid rgba(242,145,145,.45);
  border-radius:50%;
  z-index:2;
  animation:spFinalOrbit 12s linear infinite;
}
body.pr-screen .sp-final-orbit::after{
  content:"";
  position:absolute;
  width:9px;
  height:9px;
  top:18px;
  left:50%;
  border-radius:50%;
  background:#F29191;
  box-shadow:0 0 22px rgba(242,145,145,.8);
}
body.pr-screen .sp-final-copy{
  position:relative;
  z-index:4;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:68px 64px;
  background:
    radial-gradient(circle at 80% 20%,rgba(242,145,145,.14),transparent 30%),
    #160D0D;
}
body.pr-screen .sp-final-copy .pr-kicker{
  color:#F29191 !important;
}
body.pr-screen .sp-final-copy .pr-h2{
  color:#FFF8F8 !important;
  margin:16px 0 18px;
}
body.pr-screen .sp-final-copy .pr-h2 em{
  color:#F29191 !important;
}
body.pr-screen .sp-final-copy .pr-lead{
  max-width:580px;
  color:#F0D9D9 !important;
  font-size:16px !important;
  line-height:1.75;
  font-weight:600;
  opacity:1 !important;
  margin-bottom:25px;
}
body.pr-screen .sp-final-points{
  display:flex;
  flex-wrap:wrap;
  gap:10px 18px;
  margin:0 0 30px;
}
body.pr-screen .sp-final-points span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#FFF8F8 !important;
  font-size:14px;
  line-height:1.4;
  font-weight:800;
}
body.pr-screen .sp-final-points i{
  color:#F29191;
}
body.pr-screen .sp-final-copy .pr-cta-btn{
  align-self:flex-start;
  background:#F29191 !important;
  color:#160D0D !important;
  font-size:15px;
  font-weight:800;
  box-shadow:0 12px 28px rgba(242,145,145,.18);
}
@keyframes spFinalOrbit{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

/* Light-mode explicit visibility */
html:not(.dark) body.pr-screen .pr-screen-sec8{
  background:#FFF7F7 !important;
}
html:not(.dark) body.pr-screen .sp-final-showcase{
  background:#160D0D !important;
}
html:not(.dark) body.pr-screen .sp-final-copy{
  background:#160D0D !important;
}
html:not(.dark) body.pr-screen .sp-final-copy .pr-h2,
html:not(.dark) body.pr-screen .sp-final-points span{
  color:#FFF8F8 !important;
}
html:not(.dark) body.pr-screen .sp-final-copy .pr-lead{
  color:#F0D9D9 !important;
}

/* Dark-mode explicit visibility */
html.dark body.pr-screen .pr-screen-sec8{
  background:#090707 !important;
  color:#F8EEEE !important;
}
html.dark body.pr-screen .sp-final-showcase{
  background:#120909 !important;
  box-shadow:0 30px 75px rgba(0,0,0,.42);
}
html.dark body.pr-screen .sp-final-copy{
  background:
    radial-gradient(circle at 80% 20%,rgba(242,145,145,.12),transparent 30%),
    #120909 !important;
}
html.dark body.pr-screen .sp-final-copy .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .sp-final-copy .pr-h2{
  color:#FFF8F8 !important;
}
html.dark body.pr-screen .sp-final-copy .pr-h2 em{
  color:#F29191 !important;
}
html.dark body.pr-screen .sp-final-copy .pr-lead{
  color:#E6CCCC !important;
}
html.dark body.pr-screen .sp-final-points span{
  color:#FFF8F8 !important;
}
html.dark body.pr-screen .sp-final-badge{
  color:#FFF8F8 !important;
  background:rgba(0,0,0,.62);
  border-color:rgba(255,255,255,.22);
}
html.dark body.pr-screen .sp-final-copy .pr-cta-btn{
  background:#F29191 !important;
  color:#120909 !important;
}

/* Reveal helpers for this section */
body.pr-screen .sp-final-image.sp-reveal-left,
body.pr-screen .sp-final-copy.sp-reveal-right{
  transition:opacity .85s ease,transform 1s cubic-bezier(.2,.8,.2,1);
}
body.pr-screen .sp-final-image.sp-reveal-left{transform:translateX(-42px);opacity:0}
body.pr-screen .sp-final-copy.sp-reveal-right{transform:translateX(42px);opacity:0}
body.pr-screen .sp-final-image.sp-reveal-left.pr-in,
body.pr-screen .sp-final-copy.sp-reveal-right.pr-in{
  transform:none;
  opacity:1;
}

@media(max-width:900px){
  body.pr-screen .sp-final-showcase{grid-template-columns:1fr;min-height:0}
  body.pr-screen .sp-final-image,
  body.pr-screen .sp-final-image img{min-height:330px;height:330px}
  body.pr-screen .sp-final-copy{padding:48px 34px}
}
@media(max-width:600px){
  body.pr-screen .pr-screen-sec8{padding-bottom:48px}
  body.pr-screen .sp-final-showcase{border-radius:22px}
  body.pr-screen .sp-final-image,
  body.pr-screen .sp-final-image img{min-height:270px;height:270px}
  body.pr-screen .sp-final-copy{padding:38px 22px}
  body.pr-screen .sp-final-copy .pr-h2{font-size:32px!important}
  body.pr-screen .sp-final-copy .pr-lead{font-size:15px!important}
  body.pr-screen .sp-final-points{display:grid;grid-template-columns:1fr;gap:11px}
  body.pr-screen .sp-final-copy .pr-cta-btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  body.pr-screen .sp-final-orbit,
  body.pr-screen .sp-final-image img{animation:none!important;transition:none!important}
}


/* ================================================================
   SCREEN PROTECTORS — FINAL VISIBILITY + CTA SAFETY PASS
   Scoped ONLY to body.pr-screen. Does not affect other pages.
   ================================================================ */

/* ---------- SECTION 4: Add-to-cart buttons ---------- */
body.pr-screen .sp-collection-card .pr-add-cart{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:44px !important;
  padding:11px 16px !important;
  border:1px solid currentColor !important;
  border-radius:11px !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
  font:800 14px/1.1 "Space Grotesk",sans-serif !important;
}

/* light */
html:not(.dark) body.pr-screen .sp-collection-card .pr-add-cart{
  background:#160D0D !important;
  color:#FFF8F8 !important;
  border-color:#160D0D !important;
}
html:not(.dark) body.pr-screen .sp-collection-card .pr-add-cart i,
html:not(.dark) body.pr-screen .sp-collection-card .pr-add-cart span{
  color:#FFF8F8 !important;
}

/* dark */
html.dark body.pr-screen .sp-collection-card .pr-add-cart{
  background:#F29191 !important;
  color:#160D0D !important;
  border-color:#F29191 !important;
  box-shadow:0 8px 22px rgba(242,145,145,.16) !important;
}
html.dark body.pr-screen .sp-collection-card .pr-add-cart i,
html.dark body.pr-screen .sp-collection-card .pr-add-cart span{
  color:#160D0D !important;
}
body.pr-screen .sp-collection-card .pr-add-cart:hover{
  transform:translateY(-3px) scale(1.02) !important;
}

/* ---------- SECTION 5: force readable copy in both themes ---------- */
html:not(.dark) body.pr-screen .pr-screen-sec5,
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-wrap{
  background:#FFF7F7 !important;
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-kicker{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-h2{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-h2 em{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-lead,
html:not(.dark) body.pr-screen .pr-screen-sec5 .sp-proof p{
  color:#432525 !important;
  opacity:1 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .sp-proof h3{
  color:#160D0D !important;
  opacity:1 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-ring-inner strong{
  color:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec5 .pr-ring-inner small{
  color:#6B3A3A !important;
  opacity:1 !important;
}
html.dark body.pr-screen .pr-screen-sec5,
html.dark body.pr-screen .pr-screen-sec5 .pr-wrap{
  background:#090707 !important;
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-h2{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-h2 em{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-lead,
html.dark body.pr-screen .pr-screen-sec5 .sp-proof p{
  color:#EBD6D6 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .sp-proof h3{
  color:#FFF7F7 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-ring-inner strong{
  color:#FFF7F7 !important;
}
html.dark body.pr-screen .pr-screen-sec5 .pr-ring-inner small{
  color:#E8CACA !important;
  opacity:1 !important;
}
body.pr-screen .pr-screen-sec5 .sp-proof,
body.pr-screen .pr-screen-sec5 .sp-proof *{
  text-shadow:none !important;
  visibility:visible !important;
}

/* ---------- SECTION 8: prevent reveal system from hiding the CTA ---------- */
body.pr-screen .pr-screen-sec8{
  position:relative !important;
  overflow:hidden !important;
  opacity:1 !important;
  visibility:visible !important;
}
body.pr-screen .pr-screen-sec8 .sp-final-showcase{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  animation:spFinalShowcaseIn .9s cubic-bezier(.2,.75,.2,1) both !important;
}
body.pr-screen .pr-screen-sec8 .sp-final-image,
body.pr-screen .pr-screen-sec8 .sp-final-copy{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
}
body.pr-screen .pr-screen-sec8 .sp-final-image{
  animation:spFinalImageIn .95s .08s cubic-bezier(.2,.75,.2,1) both !important;
}
body.pr-screen .pr-screen-sec8 .sp-final-copy{
  animation:spFinalCopyIn .95s .18s cubic-bezier(.2,.75,.2,1) both !important;
}
@keyframes spFinalShowcaseIn{
  from{opacity:0;transform:translateY(35px) scale(.98)}
  to{opacity:1;transform:none}
}
@keyframes spFinalImageIn{
  from{opacity:0;transform:translateX(-35px)}
  to{opacity:1;transform:none}
}
@keyframes spFinalCopyIn{
  from{opacity:0;transform:translateX(35px)}
  to{opacity:1;transform:none}
}

/* Section 8 guaranteed text contrast */
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-copy{
  background:#160D0D !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-kicker{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-h2{
  color:#FFF8F8 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-h2 em{
  color:#F29191 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-lead{
  color:#F0D9D9 !important;
  opacity:1 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec8 .sp-final-points span{
  color:#FFF8F8 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-copy{
  background:#120909 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-h2{
  color:#FFF8F8 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-h2 em{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-copy .pr-lead{
  color:#EFD7D7 !important;
  opacity:1 !important;
}
html.dark body.pr-screen .pr-screen-sec8 .sp-final-points span{
  color:#FFF8F8 !important;
  opacity:1 !important;
}
body.pr-screen .pr-screen-sec8 .pr-cta-btn{
  opacity:1 !important;
  visibility:visible !important;
}

@media(max-width:700px){
  body.pr-screen .sp-collection-card .pr-add-cart{
    min-height:42px !important;
    font-size:14px !important;
  }
  body.pr-screen .pr-screen-sec8 .sp-final-copy{
    padding:38px 22px !important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.pr-screen .pr-screen-sec8 .sp-final-showcase,
  body.pr-screen .pr-screen-sec8 .sp-final-image,
  body.pr-screen .pr-screen-sec8 .sp-final-copy{
    animation:none !important;
  }
}

/* ============================================================
   SCREEN PROTECTORS — SECTION 2 FINAL TEXT VISIBILITY FIX
   Scoped only to body.pr-screen so other pages remain unchanged.
   ============================================================ */
body.pr-screen #technology,
body.pr-screen #technology .pr-wrap{
  position:relative;
  isolation:isolate;
}

body.pr-screen #technology .pr-kicker{
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.pr-screen #technology .pr-h2{
  font-size:clamp(32px,4vw,52px) !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  opacity:1 !important;
  visibility:visible !important;
}

body.pr-screen #technology .pr-lead{
  font-size:16px !important;
  line-height:1.7 !important;
  font-weight:600 !important;
  opacity:1 !important;
  visibility:visible !important;
  max-width:760px;
}

body.pr-screen #technology .pr-tech-grid{
  position:relative;
  z-index:2;
}

body.pr-screen #technology .pr-tech-card,
body.pr-screen #technology .pr-tech-card *{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  text-shadow:none !important;
}

body.pr-screen #technology .pr-tech-card{
  min-height:250px;
}

body.pr-screen #technology .pr-tech-card h3{
  font-size:19px !important;
  line-height:1.3 !important;
  font-weight:800 !important;
}

body.pr-screen #technology .pr-tech-card p{
  font-size:15px !important;
  line-height:1.7 !important;
  font-weight:600 !important;
}

body.pr-screen #technology .pr-tech-icon{
  opacity:1 !important;
  visibility:visible !important;
}

/* Light mode */
html:not(.dark) body.pr-screen #technology{
  background:#f8eded !important;
  color:#160d0d !important;
}
html:not(.dark) body.pr-screen #technology .pr-kicker{
  color:#9a5050 !important;
}
html:not(.dark) body.pr-screen #technology .pr-h2{
  color:#160d0d !important;
}
html:not(.dark) body.pr-screen #technology .pr-h2 em{
  color:#b65f5f !important;
}
html:not(.dark) body.pr-screen #technology .pr-lead{
  color:#452727 !important;
}
html:not(.dark) body.pr-screen #technology .pr-tech-card{
  background:#fff8f8 !important;
  border-color:rgba(62,28,28,.18) !important;
  box-shadow:0 16px 38px rgba(72,32,32,.08) !important;
}
html:not(.dark) body.pr-screen #technology .pr-tech-card h3{
  color:#160d0d !important;
}
html:not(.dark) body.pr-screen #technology .pr-tech-card p{
  color:#4b2b2b !important;
}
html:not(.dark) body.pr-screen #technology .pr-tech-icon{
  background:#160d0d !important;
  color:#ff9090 !important;
}

/* Dark mode */
html.dark body.pr-screen #technology{
  background:#090707 !important;
  color:#fff7f7 !important;
}
html.dark body.pr-screen #technology .pr-kicker{
  color:#ff9696 !important;
}
html.dark body.pr-screen #technology .pr-h2{
  color:#fffafa !important;
}
html.dark body.pr-screen #technology .pr-h2 em{
  color:#ff9696 !important;
}
html.dark body.pr-screen #technology .pr-lead{
  color:#f0dada !important;
}
html.dark body.pr-screen #technology .pr-tech-card{
  background:#241313 !important;
  border-color:rgba(255,235,235,.24) !important;
  box-shadow:0 18px 42px rgba(0,0,0,.35) !important;
}
html.dark body.pr-screen #technology .pr-tech-card h3{
  color:#fffafa !important;
}
html.dark body.pr-screen #technology .pr-tech-card p{
  color:#f0dada !important;
}
html.dark body.pr-screen #technology .pr-tech-icon{
  background:#050303 !important;
  color:#ff9292 !important;
}

/* Keep the three cards individually readable while preserving reveal motion. */
body.pr-screen #technology .pr-tech-card.pr-reveal,
body.pr-screen #technology .pr-tech-card.pr-reveal.pr-in{
  will-change:transform,opacity;
}

@media (max-width:760px){
  body.pr-screen #technology .pr-h2{font-size:32px !important}
  body.pr-screen #technology .pr-lead{font-size:15px !important}
  body.pr-screen #technology .pr-tech-card h3{font-size:18px !important}
  body.pr-screen #technology .pr-tech-card p{font-size:15px !important}
}


/* ================================================================
   SCREEN PROTECTORS — SECTION 6 FINAL LIGHT/DARK VISIBILITY FIX
   ================================================================ */

/* LIGHT MODE: section must use the shared light palette */
html:not(.dark) body.pr-screen .pr-screen-sec6{
  background:#FBEFEF !important;
  color:#190E0E !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-kicker{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-h2{
  color:#190E0E !important;
  opacity:1 !important;
  visibility:visible !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-h2 em{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .sp-quote-mark{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-rotator-slide p{
  color:#3F2525 !important;
  opacity:1 !important;
  visibility:visible !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-rotator-slide strong{
  color:#190E0E !important;
  opacity:1 !important;
  visibility:visible !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-rotator-slide small{
  color:#6B4242 !important;
  opacity:1 !important;
  visibility:visible !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-rotator-dots button{
  background:rgba(25,14,14,.28) !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .pr-rotator-dots button.pr-active{
  background:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .sp-voice-foot{
  color:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .sp-voice-foot b{
  color:#6B4242 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .sp-voice-foot i{
  background:#9D4D54 !important;
}
html:not(.dark) body.pr-screen .pr-screen-sec6 .sp-art-label{
  color:#9D4D54 !important;
  opacity:1 !important;
}

/* DARK MODE: shared dark palette */
html.dark body.pr-screen .pr-screen-sec6{
  background:#090707 !important;
  color:#F6EDED !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-kicker{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-h2{
  color:#F6EDED !important;
  opacity:1 !important;
  visibility:visible !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-h2 em,
html.dark body.pr-screen .pr-screen-sec6 .sp-quote-mark{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-rotator-slide p{
  color:#F6EDED !important;
  opacity:1 !important;
  visibility:visible !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-rotator-slide strong{
  color:#FFFFFF !important;
  opacity:1 !important;
  visibility:visible !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-rotator-slide small{
  color:#D6B2B2 !important;
  opacity:1 !important;
  visibility:visible !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-rotator-dots button{
  background:rgba(255,255,255,.28) !important;
}
html.dark body.pr-screen .pr-screen-sec6 .pr-rotator-dots button.pr-active{
  background:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .sp-voice-foot{
  color:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .sp-voice-foot b{
  color:#D6B2B2 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .sp-voice-foot i{
  background:#F29191 !important;
}
html.dark body.pr-screen .pr-screen-sec6 .sp-art-label{
  color:#F29191 !important;
  opacity:1 !important;
}

/* Prevent animation/reveal state from hiding section-6 copy */
body.pr-screen .pr-screen-sec6 .sp-voice-content,
body.pr-screen .pr-screen-sec6 .pr-h2,
body.pr-screen .pr-screen-sec6 .pr-rotator,
body.pr-screen .pr-screen-sec6 .pr-rotator-slide{
  visibility:visible !important;
}
body.pr-screen .pr-screen-sec6 .pr-rotator-slide{
  transition:opacity .45s ease, transform .45s ease !important;
}




/* =========================================================
   BRANDS — SECTION 05 VISUAL REWORK
   Replace the old circular/orbit shape with a structured
   hexagonal "brand prism". Labels have dedicated zones so
   nothing can sit on top of the center text.
   ========================================================= */
.brands-page #brandMotion .motion-v3-core{
  min-height:460px;
  isolation:isolate;
  overflow:visible;
}
.brands-page #brandMotion .motion-v3-ring{
  width:300px!important;
  height:300px!important;
  border-radius:34px!important;
  clip-path:polygon(50% 0%,88% 12%,100% 50%,88% 88%,50% 100%,12% 88%,0% 50%,12% 12%)!important;
  background:linear-gradient(145deg,#2A1111 0%,#170909 55%,#3A1717 100%)!important;
  border:1px solid rgba(235,112,112,.72)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.24),inset 0 0 55px rgba(235,112,112,.10)!important;
  animation:brandPrismFloat 5.5s ease-in-out infinite!important;
  z-index:5!important;
}
.brands-page #brandMotion .motion-v3-ring:before,
.brands-page #brandMotion .motion-v3-ring:after{
  border-radius:28px!important;
  clip-path:polygon(50% 0%,88% 12%,100% 50%,88% 88%,50% 100%,12% 88%,0% 50%,12% 12%)!important;
  pointer-events:none!important;
}
.brands-page #brandMotion .motion-v3-ring:before{
  inset:-18px!important;
  border-color:rgba(235,112,112,.30)!important;
  animation:brandPrismPulse 4s ease-in-out infinite!important;
}
.brands-page #brandMotion .motion-v3-ring:after{
  inset:-38px!important;
  border-color:rgba(235,112,112,.16)!important;
  animation:brandPrismPulse 5s ease-in-out infinite reverse!important;
}
.brands-page #brandMotion .motion-v3-icon{
  width:88px!important;
  height:88px!important;
  border-radius:24px!important;
  background:rgba(235,112,112,.13)!important;
  border:1px solid rgba(235,112,112,.42)!important;
  color:#F18A8A!important;
  font-size:34px!important;
  box-shadow:0 15px 35px rgba(0,0,0,.16)!important;
}
.brands-page #brandMotion .motion-v3-core-label{
  bottom:47px!important;
  z-index:8!important;
  color:#F3DADA!important;
  font-size:14px!important;
  line-height:1.45!important;
  letter-spacing:.20em!important;
}
.brands-page #brandMotion .motion-v3-core-label b{
  color:#EB7070!important;
  font-size:21px!important;
}
.brands-page #brandMotion .motion-chip{
  min-height:40px!important;
  padding:9px 14px!important;
  border-radius:10px!important;
  z-index:15!important;
  background:#211010!important;
  border:1px solid rgba(235,112,112,.48)!important;
  color:#F7E5E5!important;
  box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
  animation:motionV3Chip 4.8s ease-in-out infinite!important;
}
.brands-page #brandMotion .chip-one{top:3%!important;left:0!important}
.brands-page #brandMotion .chip-two{top:27%!important;right:0!important;animation-delay:.6s!important}
.brands-page #brandMotion .chip-three{bottom:12%!important;left:2%!important;animation-delay:1.1s!important}
.brands-page #brandMotion .chip-four{bottom:2%!important;right:8%!important;animation-delay:1.6s!important}

/* Keep the decorative orbit behind the new prism instead of crossing text. */
.brands-page #brandMotion .orbit-a{
  width:520px!important;height:300px!important;
  opacity:.55!important;
}
.brands-page #brandMotion .orbit-b{
  width:360px!important;height:360px!important;
  opacity:.40!important;
}

html:not(.dark) .brands-page #brandMotion .motion-v3-ring{
  background:linear-gradient(145deg,#FFF9F9 0%,#F2DDDD 55%,#EBCACA 100%)!important;
  border-color:rgba(122,32,32,.55)!important;
  box-shadow:0 24px 65px rgba(70,35,35,.13),inset 0 0 55px rgba(122,32,32,.08)!important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-ring:before{
  border-color:rgba(122,32,32,.28)!important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-ring:after{
  border-color:rgba(122,32,32,.15)!important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-icon{
  background:rgba(122,32,32,.09)!important;
  border-color:rgba(122,32,32,.30)!important;
  color:#7A2020!important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-core-label{
  color:#3B2020!important;
}
html:not(.dark) .brands-page #brandMotion .motion-v3-core-label b{
  color:#7A2020!important;
}
html:not(.dark) .brands-page #brandMotion .motion-chip{
  background:#FFF9F9!important;
  color:#2B1515!important;
  border-color:rgba(122,32,32,.38)!important;
  box-shadow:0 12px 30px rgba(67,32,32,.13)!important;
}

@keyframes brandPrismFloat{
  0%,100%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-10px) rotate(.7deg)}
}
@keyframes brandPrismPulse{
  0%,100%{transform:scale(.96);opacity:.35}
  50%{transform:scale(1.035);opacity:.85}
}

@media(max-width:1050px){
  .brands-page #brandMotion .motion-v3-core{
    min-height:430px!important;
  }
  .brands-page #brandMotion .motion-v3-ring{
    width:270px!important;height:270px!important;
  }
  .brands-page #brandMotion .chip-one{left:4%!important;top:5%!important}
  .brands-page #brandMotion .chip-two{right:4%!important;top:25%!important}
  .brands-page #brandMotion .chip-three{left:5%!important;bottom:13%!important}
  .brands-page #brandMotion .chip-four{right:8%!important;bottom:4%!important}
}
@media(max-width:767px){
  .brands-page #brandMotion .motion-v3-core{
    min-height:420px!important;
    margin:18px 0 8px!important;
  }
  .brands-page #brandMotion .motion-v3-ring{
    width:235px!important;height:235px!important;
  }
  .brands-page #brandMotion .motion-v3-icon{
    width:70px!important;height:70px!important;
    border-radius:20px!important;font-size:27px!important;
  }
  .brands-page #brandMotion .motion-v3-core-label{
    bottom:35px!important;font-size:13px!important;
  }
  .brands-page #brandMotion .motion-chip{
    min-height:36px!important;
    padding:8px 11px!important;
    font-size:13px!important;
  }
  .brands-page #brandMotion .chip-one{left:0!important;top:7%!important}
  .brands-page #brandMotion .chip-two{right:0!important;top:25%!important}
  .brands-page #brandMotion .chip-three{left:0!important;bottom:15%!important}
  .brands-page #brandMotion .chip-four{right:3%!important;bottom:5%!important}
}
@media(prefers-reduced-motion:reduce){
  .brands-page #brandMotion .motion-v3-ring,
  .brands-page #brandMotion .motion-v3-ring:before,
  .brands-page #brandMotion .motion-v3-ring:after{animation:none!important}
}


/* BRANDS — Section 05 clean image replacement */
.brands-page #brandMotion .motion-v3-core{
  position:relative!important; min-height:520px!important; height:520px!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  overflow:visible!important;
}
.brands-page #brandMotion .motion-image-frame{
  position:relative!important; width:min(100%,520px)!important; height:420px!important;
  overflow:hidden!important; border-radius:34px 34px 80px 34px!important;
  border:1px solid rgba(122,32,32,.28)!important;
  box-shadow:0 24px 60px rgba(60,25,25,.18), 0 0 0 10px rgba(122,32,32,.045)!important;
  isolation:isolate!important; background:#171717!important;
  transform:rotate(-2deg)!important; transition:transform .6s ease, box-shadow .6s ease!important;
}
.brands-page #brandMotion .motion-image-frame:hover{
  transform:rotate(0deg) translateY(-8px)!important;
  box-shadow:0 32px 75px rgba(60,25,25,.24),0 0 0 12px rgba(122,32,32,.06)!important;
}
.brands-page #brandMotion .motion-image-frame img{
  position:absolute!important; inset:0!important; width:100%!important; height:100%!important;
  object-fit:cover!important; object-position:center!important; display:block!important;
  filter:saturate(.92) contrast(1.02)!important; z-index:0!important;
}
.brands-page #brandMotion .motion-image-shade{
  position:absolute!important; inset:0!important; z-index:1!important; pointer-events:none!important;
  background:linear-gradient(180deg,rgba(15,8,8,.04) 35%,rgba(15,8,8,.72) 100%)!important;
}
.brands-page #brandMotion .motion-image-caption{
  position:absolute!important; left:28px!important; right:28px!important; bottom:25px!important; z-index:2!important;
  display:flex!important; align-items:flex-end!important; justify-content:space-between!important; gap:20px!important;
  color:#fff!important; text-shadow:0 2px 14px rgba(0,0,0,.4)!important;
}
.brands-page #brandMotion .motion-image-caption span{
  font-size:12px!important; letter-spacing:.14em!important; font-weight:800!important;
  padding:9px 12px!important; border:1px solid rgba(255,255,255,.45)!important;
  border-radius:999px!important; background:rgba(20,10,10,.42)!important; backdrop-filter:blur(8px)!important;
}
.brands-page #brandMotion .motion-image-caption strong{
  font-size:24px!important; line-height:.98!important; letter-spacing:.04em!important; text-align:right!important; color:#fff!important;
}
html:not(.dark) .brands-page #brandMotion .motion-image-frame{
  border-color:rgba(122,32,32,.32)!important; box-shadow:0 24px 60px rgba(70,35,35,.18),0 0 0 10px rgba(122,32,32,.05)!important;
}
html.dark .brands-page #brandMotion .motion-image-frame{
  border-color:rgba(255,220,220,.22)!important; box-shadow:0 26px 70px rgba(0,0,0,.48),0 0 0 10px rgba(255,255,255,.035)!important;
}
@media(max-width:1050px){
  .brands-page #brandMotion .motion-v3-core{min-height:470px!important;height:470px!important}
  .brands-page #brandMotion .motion-image-frame{width:min(100%,500px)!important;height:380px!important}
}
@media(max-width:767px){
  .brands-page #brandMotion .motion-v3-core{min-height:390px!important;height:390px!important;margin:20px 0 25px!important}
  .brands-page #brandMotion .motion-image-frame{width:100%!important;height:330px!important;border-radius:25px 25px 55px 25px!important;transform:none!important}
  .brands-page #brandMotion .motion-image-caption{left:18px!important;right:18px!important;bottom:18px!important;gap:12px!important}
  .brands-page #brandMotion .motion-image-caption span{font-size:11px!important;padding:7px 9px!important}
  .brands-page #brandMotion .motion-image-caption strong{font-size:18px!important}
}
@media(max-width:420px){
  .brands-page #brandMotion .motion-v3-core{min-height:350px!important;height:350px!important}
  .brands-page #brandMotion .motion-image-frame{height:290px!important}
  .brands-page #brandMotion .motion-image-caption{display:block!important}
  .brands-page #brandMotion .motion-image-caption strong{display:block!important;margin-top:9px!important;text-align:left!important}
}


/* =========================================================
   VOLTIVA — FINAL LIGHT MOBILE NAV + LABEL VISIBILITY PATCH
   Requested: cleaner light-mode responsive navbar, Home 1 STYLE
   visibility, Home 2 EVERYDAY READY visibility.
   ========================================================= */

/* Light-mode navigation: warm neutral surface instead of the
   overly pink/salmon responsive treatment. */
html:not(.dark) .site-header{
  background:rgba(248,244,241,.97) !important;
  color:#190E0E !important;
  border-bottom:1px solid rgba(25,14,14,.14) !important;
  box-shadow:0 8px 24px rgba(25,14,14,.06);
}
html:not(.dark) .site-header .brand,
html:not(.dark) .site-header .nav-link,
html:not(.dark) .site-header .has-dropdown > button,
html:not(.dark) .site-header .login-link,
html:not(.dark) .site-header .icon-btn,
html:not(.dark) .site-header .pill-btn{
  color:#190E0E !important;
}
html:not(.dark) .site-header .brand-mark{
  background:#190E0E !important;
  color:#F8F4F1 !important;
}
html:not(.dark) .site-header .icon-btn,
html:not(.dark) .site-header .pill-btn,
html:not(.dark) .site-header .menu-btn{
  background:#EFE8E5 !important;
  color:#190E0E !important;
  border:1px solid rgba(25,14,14,.10) !important;
}
html:not(.dark) .site-header .nav-link:hover,
html:not(.dark) .site-header .nav-link.active,
html:not(.dark) .site-header .has-dropdown:hover > button{
  color:#8A4A4A !important;
}

/* Dropdown + responsive drawer use the same neutral light surface. */
html:not(.dark) .dropdown,
html:not(.dark) .mobile-drawer{
  background:#F8F4F1 !important;
  color:#190E0E !important;
  border-color:rgba(25,14,14,.14) !important;
}
html:not(.dark) .mobile-drawer .drawer-top{
  border-bottom-color:rgba(25,14,14,.14) !important;
}
html:not(.dark) .mobile-drawer .drawer-close{
  background:#190E0E !important;
  color:#F8F4F1 !important;
}
html:not(.dark) .mobile-drawer .mobile-nav > a,
html:not(.dark) .mobile-drawer .mobile-group > button{
  color:#190E0E !important;
  border-bottom-color:rgba(25,14,14,.12) !important;
}
html:not(.dark) .mobile-drawer .mobile-group > div a{
  color:#4F3030 !important;
  border-bottom-color:rgba(25,14,14,.09) !important;
}
html:not(.dark) .mobile-drawer .mobile-nav > a:hover,
html:not(.dark) .mobile-drawer .mobile-group > button:hover,
html:not(.dark) .mobile-drawer .mobile-group > div a:hover{
  background:#EFE8E5 !important;
  color:#190E0E !important;
}
html:not(.dark) .mobile-drawer .drawer-cart-btn{
  background:#EFE8E5 !important;
  color:#190E0E !important;
  border-color:rgba(25,14,14,.16) !important;
}
html:not(.dark) .mobile-drawer .drawer-login{
  background:#190E0E !important;
  color:#F8F4F1 !important;
  border-color:#190E0E !important;
}

/* Home 1 — never clip POWER / PROTECTION / STYLE on phones. */
@media (max-width:767px){
  .home-page .experience-visual .experience-tag{
    left:10px !important;
    right:10px !important;
    bottom:2px !important;
    width:auto !important;
    max-width:none !important;
    min-height:38px !important;
    padding:8px 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box !important;
    white-space:normal !important;
    overflow:visible !important;
    text-align:center !important;
    font-size:14px !important;
    line-height:1.2 !important;
    letter-spacing:.09em !important;
    word-break:normal !important;
  }
  .home-page .experience-visual .experience-tag{
    transform:none !important;
  }
}

/* Home 2 — keep the complete EVERYDAY / READY stamp inside
   the image bounds on narrow screens. */
.h2-restructured-s2 .h2r-s2-stamp{
  box-sizing:border-box !important;
  min-width:128px !important;
  max-width:150px !important;
  overflow:visible !important;
  z-index:8 !important;
}
.h2-restructured-s2 .h2r-s2-stamp span{
  display:block !important;
  white-space:nowrap !important;
  font-size:14px !important;
  line-height:1.12 !important;
  letter-spacing:.08em !important;
}
@media (max-width:767px){
  .h2-restructured-s2 .h2r-s2-stamp{
    right:4px !important;
    bottom:8px !important;
    min-width:126px !important;
    width:126px !important;
    padding:10px 9px !important;
  }
  .h2-restructured-s2 .h2r-s2-stamp strong{
    font-size:22px !important;
  }
  .h2-restructured-s2 .h2r-s2-stamp span{
    font-size:14px !important;
    letter-spacing:.06em !important;
  }
}


/* =========================================================
   VOLTIVA — FINAL RESPONSIVE POLISH PATCH
   1) Unified light/dark responsive navbar
   2) About page metric pills never overlap on phones
   3) Cases architecture heading/visual separation on phones
   4) Footer social icons always visible
   5) Home 1 / Home 2 labels stay inside their visual bounds
   ========================================================= */

/* ---------- GLOBAL NAVBAR: LIGHT ---------- */
html:not(.dark) .site-header{
  background:rgba(248,244,241,.98)!important;
  color:#190E0E!important;
  border-bottom:1px solid rgba(25,14,14,.14)!important;
  box-shadow:0 8px 26px rgba(25,14,14,.08)!important;
}
html:not(.dark) .site-header .brand,
html:not(.dark) .site-header .nav-link,
html:not(.dark) .site-header .has-dropdown>button,
html:not(.dark) .site-header .login-link{
  color:#190E0E!important;
}
html:not(.dark) .site-header .brand-mark{
  background:#190E0E!important;
  color:#F8F4F1!important;
}
html:not(.dark) .site-header .icon-btn,
html:not(.dark) .site-header .pill-btn,
html:not(.dark) .site-header .menu-btn{
  background:#EFE8E5!important;
  color:#190E0E!important;
  border:1px solid rgba(25,14,14,.12)!important;
}
html:not(.dark) .site-header .nav-link:hover,
html:not(.dark) .site-header .nav-link.active,
html:not(.dark) .site-header .has-dropdown:hover>button{
  color:#9A5050!important;
}
html:not(.dark) .site-header .cart-count{
  background:#EF4444!important;
  color:#fff!important;
}

/* ---------- GLOBAL NAVBAR: DARK ---------- */
html.dark .site-header{
  background:rgba(23,13,13,.97)!important;
  color:#F8EEEE!important;
  border-bottom:1px solid rgba(255,142,146,.20)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.30)!important;
}
html.dark .site-header .brand,
html.dark .site-header .nav-link,
html.dark .site-header .has-dropdown>button,
html.dark .site-header .login-link{
  color:#F8EEEE!important;
}
html.dark .site-header .brand-mark{
  background:#F29191!important;
  color:#190E0E!important;
}
html.dark .site-header .icon-btn,
html.dark .site-header .pill-btn,
html.dark .site-header .menu-btn{
  background:#2A1718!important;
  color:#F8EEEE!important;
  border:1px solid rgba(255,142,146,.18)!important;
}
html.dark .site-header .nav-link:hover,
html.dark .site-header .nav-link.active,
html.dark .site-header .has-dropdown:hover>button{
  color:#FF9B9F!important;
}

/* Responsive drawer — use the same theme instead of the old salmon panel. */
@media(max-width:1023px){
  html:not(.dark) .mobile-drawer{
    background:#F8F4F1!important;
    color:#190E0E!important;
    border-color:rgba(25,14,14,.14)!important;
  }
  html:not(.dark) .mobile-drawer .drawer-top{
    border-bottom-color:rgba(25,14,14,.14)!important;
  }
  html:not(.dark) .mobile-drawer .brand{
    color:#190E0E!important;
  }
  html:not(.dark) .mobile-drawer .brand-mark{
    background:#190E0E!important;
    color:#F8F4F1!important;
  }
  html:not(.dark) .mobile-drawer .drawer-close{
    background:#190E0E!important;
    color:#F8F4F1!important;
  }
  html:not(.dark) .mobile-drawer .mobile-nav>a,
  html:not(.dark) .mobile-drawer .mobile-group>button{
    color:#190E0E!important;
    border-bottom-color:rgba(25,14,14,.12)!important;
  }
  html:not(.dark) .mobile-drawer .mobile-group>div a{
    color:#4F3030!important;
    border-bottom-color:rgba(25,14,14,.08)!important;
  }
  html:not(.dark) .mobile-drawer .mobile-nav>a:hover,
  html:not(.dark) .mobile-drawer .mobile-group>button:hover,
  html:not(.dark) .mobile-drawer .mobile-group>div a:hover{
    background:#EFE8E5!important;
    color:#190E0E!important;
  }
  html:not(.dark) .mobile-drawer .drawer-cart-btn{
    background:#EFE8E5!important;
    color:#190E0E!important;
    border-color:rgba(25,14,14,.15)!important;
  }
  html:not(.dark) .mobile-drawer .drawer-login{
    background:#190E0E!important;
    color:#F8F4F1!important;
    border-color:#190E0E!important;
  }

  html.dark .mobile-drawer{
    background:#170D0D!important;
    color:#F8EEEE!important;
    border-color:rgba(255,142,146,.20)!important;
  }
  html.dark .mobile-drawer .drawer-top{
    border-bottom-color:rgba(255,142,146,.18)!important;
  }
  html.dark .mobile-drawer .brand,
  html.dark .mobile-drawer .mobile-nav>a,
  html.dark .mobile-drawer .mobile-group>button{
    color:#F8EEEE!important;
  }
  html.dark .mobile-drawer .brand-mark{
    background:#F29191!important;
    color:#190E0E!important;
  }
  html.dark .mobile-drawer .drawer-close{
    background:#F8EEEE!important;
    color:#190E0E!important;
  }
  html.dark .mobile-drawer .mobile-group>div a{
    color:#E2CACA!important;
    border-bottom-color:rgba(255,142,146,.12)!important;
  }
  html.dark .mobile-drawer .mobile-nav>a,
  html.dark .mobile-drawer .mobile-group>button{
    border-bottom-color:rgba(255,142,146,.14)!important;
  }
  html.dark .mobile-drawer .mobile-nav>a:hover,
  html.dark .mobile-drawer .mobile-group>button:hover,
  html.dark .mobile-drawer .mobile-group>div a:hover{
    background:#2A1718!important;
    color:#fff!important;
  }
  html.dark .mobile-drawer .drawer-cart-btn{
    background:#2A1718!important;
    color:#F8EEEE!important;
    border-color:rgba(255,142,146,.20)!important;
  }
  html.dark .mobile-drawer .drawer-login{
    background:#F8EEEE!important;
    color:#8F4949!important;
    border-color:#F8EEEE!important;
  }
}

/* ---------- ABOUT: METRIC PILL OVERLAP FIX ---------- */
@media(max-width:767px){
  .about-page .difference{
    padding:72px 0 82px!important;
    overflow:hidden!important;
  }
  .about-page .difference-grid{
    grid-template-columns:1fr!important;
    gap:38px!important;
  }
  .about-page .difference-copy{
    width:100%!important;
    max-width:none!important;
  }
  .about-page .difference-copy h2{
    font-size:38px!important;
    line-height:1.02!important;
  }
  .about-page .difference-copy p{
    font-size:14px!important;
    line-height:1.65!important;
  }
  .about-page .metric-stage{
    width:100%!important;
    height:535px!important;
    min-height:535px!important;
    margin:0!important;
    isolation:isolate;
  }
  .about-page .metric-core{
    width:220px!important;
    height:220px!important;
    border-width:8px!important;
  }
  .about-page .metric-ring{
    inset:78px 24px!important;
  }
  .about-page .metric-pill{
    width:calc(50% - 12px)!important;
    min-width:0!important;
    max-width:145px!important;
    min-height:62px!important;
    padding:10px 10px!important;
    gap:4px!important;
    border-radius:15px!important;
    align-items:center!important;
    box-sizing:border-box!important;
  }
  .about-page .metric-pill strong{
    font-size:25px!important;
    line-height:1!important;
    flex:0 0 auto!important;
  }
  .about-page .metric-pill>span{
    font-size:14px!important;
    line-height:1.05!important;
    min-width:0!important;
  }
  .about-page .metric-pill small{
    font-size:11px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
  .about-page .metric-stage .pill-a{
    left:0!important;
    right:auto!important;
    top:12px!important;
  }
  .about-page .metric-stage .pill-c{
    right:0!important;
    left:auto!important;
    top:12px!important;
  }
  .about-page .metric-stage .pill-b{
    left:0!important;
    right:auto!important;
    bottom:12px!important;
  }
  .about-page .metric-stage .pill-d{
    right:0!important;
    left:auto!important;
    bottom:12px!important;
  }
}
@media(max-width:360px){
  .about-page .metric-stage{
    height:555px!important;
    min-height:555px!important;
  }
  .about-page .metric-pill{
    max-width:137px!important;
    padding:9px 8px!important;
  }
  .about-page .metric-pill strong{font-size:23px!important}
  .about-page .metric-pill>span{font-size:13px!important}
  .about-page .metric-pill small{font-size:10px!important}
}

/* ---------- CASES SECTION 3: TEXT NEVER SITS ON TOP OF VISUAL ---------- */
@media(max-width:767px){
  .shop-page--cases .case-architecture{
    padding-top:58px!important;
    padding-bottom:58px!important;
  }
  .shop-page--cases .arch-header{
    display:block!important;
    margin-bottom:26px!important;
  }
  .shop-page--cases .arch-header>div{
    width:100%!important;
    margin-bottom:18px!important;
  }
  .shop-page--cases .arch-header h2{
    font-size:30px!important;
    line-height:1.08!important;
    margin-top:12px!important;
  }
  .shop-page--cases .arch-header h2 br{
    display:none!important;
  }
  .shop-page--cases .arch-header p{
    width:100%!important;
    font-size:14px!important;
    line-height:1.6!important;
    margin:0!important;
  }
  .shop-page--cases .arch-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:30px!important;
    align-items:stretch!important;
  }
  .shop-page--cases .arch-visual-stage{
    order:1!important;
    width:100%!important;
    min-height:390px!important;
    height:390px!important;
    margin:0!important;
  }
  .shop-page--cases .arch-cards-stage{
    order:2!important;
    width:100%!important;
  }
  .shop-page--cases .arch-hud{
    width:min(100%,310px)!important;
    margin-top:18px!important;
    padding:12px 14px!important;
  }
}

/* ---------- FOOTER SOCIAL ICON VISIBILITY ---------- */
.cv-footer .footer-socials{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  opacity:1!important;
  visibility:visible!important;
}
.cv-footer .footer-socials a{
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 38px!important;
  border-radius:11px!important;
  opacity:1!important;
  visibility:visible!important;
  color:#F58989!important;
  background:rgba(245,137,137,.10)!important;
  border:1px solid rgba(245,137,137,.34)!important;
}
.cv-footer .footer-socials a i{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:#F58989!important;
  font-size:15px!important;
  line-height:1!important;
}
.cv-footer .footer-socials a:hover{
  background:rgba(245,137,137,.20)!important;
  color:#FFDADA!important;
  border-color:#F58989!important;
}
html:not(.dark) .cv-footer .footer-socials a i{
  color:#A84E57!important;
}
html:not(.dark) .cv-footer .footer-socials a{
  color:#A84E57!important;
  background:rgba(168,78,87,.08)!important;
  border-color:rgba(168,78,87,.28)!important;
}

/* ---------- HOME 1 LABEL ---------- */
@media(max-width:767px){
  .home-page .experience-visual{
    overflow:visible!important;
  }
  .home-page .experience-visual .experience-tag{
    left:8px!important;
    right:8px!important;
    bottom:0!important;
    width:auto!important;
    max-width:none!important;
    min-height:40px!important;
    padding:8px 9px!important;
    white-space:normal!important;
    overflow:visible!important;
    text-align:center!important;
    font-size:13px!important;
    line-height:1.2!important;
    letter-spacing:.06em!important;
  }
}

/* ---------- HOME 2 EVERYDAY READY STAMP ---------- */
.h2-restructured-s2 .h2r-s2-stamp{
  overflow:visible!important;
  z-index:20!important;
}
.h2-restructured-s2 .h2r-s2-stamp span{
  display:block!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.12!important;
}
@media(max-width:767px){
  .h2-restructured-s2 .h2r-s2-stamp{
    width:138px!important;
    min-width:138px!important;
    max-width:138px!important;
    right:5px!important;
    bottom:7px!important;
    padding:9px 8px!important;
  }
  .h2-restructured-s2 .h2r-s2-stamp strong{
    font-size:20px!important;
    line-height:1!important;
  }
  .h2-restructured-s2 .h2r-s2-stamp span{
    font-size:13px!important;
    letter-spacing:.04em!important;
  }
}


/* =========================================================
   BRANDS — MOBILE LIST ROW SPACING / TEXT PADDING FIX
   Prevent section-05 list text from sitting against the row edges.
   ========================================================= */
@media(max-width:767px){
  .brands-page #brandMotion .motion-v3-list{
    padding:22px 0 8px !important;
  }
  .brands-page #brandMotion .motion-v3-item{
    grid-template-columns:38px minmax(0,1fr) 24px !important;
    gap:10px !important;
    min-height:84px !important;
    padding:12px 12px !important;
    box-sizing:border-box !important;
    border-radius:10px !important;
  }
  .brands-page #brandMotion .motion-v3-item > span{
    min-width:0 !important;
    padding:0 2px !important;
  }
  .brands-page #brandMotion .motion-v3-item strong{
    font-size:15px !important;
    line-height:1.35 !important;
    margin:0 !important;
  }
  .brands-page #brandMotion .motion-v3-item small{
    font-size:14px !important;
    line-height:1.45 !important;
    margin-top:5px !important;
    display:block !important;
  }
  .brands-page #brandMotion .motion-v3-item > i{
    width:24px !important;
    min-width:24px !important;
    text-align:center !important;
    justify-self:end !important;
  }
}
@media(max-width:420px){
  .brands-page #brandMotion .motion-v3-item{
    grid-template-columns:32px minmax(0,1fr) 22px !important;
    gap:8px !important;
    min-height:86px !important;
    padding:12px 10px !important;
  }
  .brands-page #brandMotion .motion-v3-item > i{
    width:22px !important;
    min-width:22px !important;
  }
}


/* =========================================================
   BRANDS — SECTION 04 MOBILE IMAGE LABEL OVERLAP FIX
   Small responsive correction only — structure/design unchanged.
   ========================================================= */
@media (max-width: 767px){
  .brands-page #brandEcosystem .brand-four-visual{
    position:relative!important;
    overflow:visible!important;
    isolation:isolate!important;
    padding-bottom:6px!important;
  }

  .brands-page #brandEcosystem .brand-four-image{
    position:relative!important;
    overflow:hidden!important;
    z-index:3!important;
  }

  .brands-page #brandEcosystem .brand-four-image-tag{
    left:22px!important;
    right:18px!important;
    bottom:34px!important;
    width:auto!important;
    max-width:calc(100% - 40px)!important;
    padding:7px 9px!important;
    box-sizing:border-box!important;
    display:block!important;
    white-space:normal!important;
    text-align:left!important;
    font-size:12px!important;
    line-height:1.25!important;
    letter-spacing:.11em!important;
    color:#F7EFEF!important;
    background:rgba(20,8,8,.56)!important;
    border-left:2px solid rgba(242,145,145,.85)!important;
    z-index:8!important;
    transform:none!important;
  }
}

@media (max-width: 520px){
  .brands-page #brandEcosystem .brand-four-visual{
    min-height:370px!important;
    margin-top:22px!important;
  }

  .brands-page #brandEcosystem .brand-four-image{
    width:94%!important;
    height:310px!important;
    margin:0 auto!important;
  }

  .brands-page #brandEcosystem .brand-four-image-tag{
    left:16px!important;
    right:14px!important;
    bottom:31px!important;
    max-width:calc(100% - 30px)!important;
    padding:6px 8px!important;
    font-size:11px!important;
    line-height:1.25!important;
    letter-spacing:.08em!important;
  }
}

@media (max-width: 360px){
  .brands-page #brandEcosystem .brand-four-image-tag{
    left:12px!important;
    right:10px!important;
    bottom:29px!important;
    max-width:calc(100% - 22px)!important;
    font-size:10px!important;
    letter-spacing:.06em!important;
    padding:6px 7px!important;
  }
}


/* =========================================================
   VOLTIVA — GLOBAL NAVBAR + FOOTER LOGO COLOR
   Small visual correction only. Keeps existing structure.
   ========================================================= */

:root{
  --voltiva-logo-accent:#E07A7A;
  --voltiva-logo-dark:#190E0E;
  --voltiva-logo-light:#F8F4F1;
}

/* Navbar logo — all pages, both themes */
.site-header .brand-mark{
  background:var(--voltiva-logo-accent)!important;
  color:var(--voltiva-logo-dark)!important;
  border-color:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:0 5px 16px rgba(224,122,122,.16)!important;
}

.site-header .brand-mark i{
  color:var(--voltiva-logo-dark)!important;
  opacity:1!important;
  visibility:visible!important;
}

.site-header .brand,
.site-header .brand > span:last-child{
  opacity:1!important;
  visibility:visible!important;
}

/* Responsive/mobile drawer logo */
.mobile-drawer .brand-mark{
  background:var(--voltiva-logo-accent)!important;
  color:var(--voltiva-logo-dark)!important;
}

.mobile-drawer .brand-mark i{
  color:var(--voltiva-logo-dark)!important;
}

/* Footer logo — same accent treatment on every page */
.cv-footer .footer-brand .brand-mark,
.footer .footer-brand .brand-mark{
  background:var(--voltiva-logo-accent)!important;
  color:var(--voltiva-logo-dark)!important;
  border-color:transparent!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:0 5px 16px rgba(224,122,122,.14)!important;
}

.cv-footer .footer-brand .brand-mark i,
.footer .footer-brand .brand-mark i{
  color:var(--voltiva-logo-dark)!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Footer brand wording */
.cv-footer .footer-brand .brand-text strong,
.footer .footer-brand .brand-text strong{
  color:#F8F4F1!important;
  opacity:1!important;
  visibility:visible!important;
}

.cv-footer .footer-brand .brand-text small,
.footer .footer-brand .brand-text small{
  color:var(--voltiva-logo-accent)!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Light theme footer remains readable */
html:not(.dark) .cv-footer .footer-brand .brand-text strong,
html:not(.dark) .footer .footer-brand .brand-text strong{
  color:#190E0E!important;
}

html:not(.dark) .cv-footer .footer-brand .brand-text small,
html:not(.dark) .footer .footer-brand .brand-text small{
  color:#B6535A!important;
}

/* Never let theme overrides hide the logo symbol */
html.dark .site-header .brand-mark,
html.dark .footer .footer-brand .brand-mark,
html.dark .cv-footer .footer-brand .brand-mark,
html:not(.dark) .site-header .brand-mark,
html:not(.dark) .footer .footer-brand .brand-mark,
html:not(.dark) .cv-footer .footer-brand .brand-mark{
  background:var(--voltiva-logo-accent)!important;
  color:var(--voltiva-logo-dark)!important;
}



/* =========================================================
   VOLTIVA LOGIN + SIGNUP — FINAL LIGHT MODE VISIBILITY FIX
   Small override only. No layout/design structure changes.
   ========================================================= */

/* Light-mode auth logo: the mark must never blend into the
   light background. */
html:not(.dark) body.auth-page .auth-brand .brand-mark,
html.light body.auth-page .auth-brand .brand-mark {
  background:#E07A7A !important;
  color:#190E0E !important;
  border:1px solid rgba(25,14,14,.10) !important;
  box-shadow:0 8px 22px rgba(109,59,59,.16) !important;
}

html:not(.dark) body.auth-page .auth-brand .brand-mark i,
html.light body.auth-page .auth-brand .brand-mark i {
  color:#190E0E !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* Keep VOLTIVA itself clearly visible in light mode. */
html:not(.dark) body.auth-page .auth-brand,
html:not(.dark) body.auth-page .auth-brand > span:last-child,
html.light body.auth-page .auth-brand,
html.light body.auth-page .auth-brand > span:last-child {
  color:#190E0E !important;
  opacity:1 !important;
  visibility:visible !important;
}

/* The visual panel is intentionally dark, so every piece of
   copy inside it must stay light in LIGHT MODE too. */
html:not(.dark) body.auth-page .auth-visual,
html.light body.auth-page .auth-visual {
  color:#FFF7F7 !important;
}

html:not(.dark) body.auth-page .auth-visual .auth-visual-content,
html:not(.dark) body.auth-page .auth-visual .auth-kicker,
html:not(.dark) body.auth-page .auth-visual h2,
html:not(.dark) body.auth-page .auth-visual p,
html:not(.dark) body.auth-page .auth-visual .auth-feature,
html:not(.dark) body.auth-page .auth-visual .auth-feature span,
html.light body.auth-page .auth-visual .auth-visual-content,
html.light body.auth-page .auth-visual .auth-kicker,
html.light body.auth-page .auth-visual h2,
html.light body.auth-page .auth-visual p,
html.light body.auth-page .auth-visual .auth-feature,
html.light body.auth-page .auth-visual .auth-feature span {
  color:#FFF7F7 !important;
  -webkit-text-fill-color:#FFF7F7 !important;
  opacity:1 !important;
  visibility:visible !important;
}

html:not(.dark) body.auth-page .auth-visual .auth-kicker,
html.light body.auth-page .auth-visual .auth-kicker {
  color:#FFC0C0 !important;
  -webkit-text-fill-color:#FFC0C0 !important;
}

html:not(.dark) body.auth-page .auth-visual .auth-feature i,
html.light body.auth-page .auth-visual .auth-feature i {
  color:#FFD0D0 !important;
  visibility:visible !important;
}

/* Form-side text remains dark and readable in light mode. */
html:not(.dark) body.auth-page .auth-form-panel,
html.light body.auth-page .auth-form-panel {
  color:#190E0E !important;
}

html:not(.dark) body.auth-page .auth-form-panel h1,
html:not(.dark) body.auth-page .auth-form-panel .auth-subtitle,
html:not(.dark) body.auth-page .auth-form-panel .auth-field label,
html:not(.dark) body.auth-page .auth-form-panel .auth-check,
html:not(.dark) body.auth-page .auth-form-panel .auth-switch,
html.light body.auth-page .auth-form-panel h1,
html.light body.auth-page .auth-form-panel .auth-subtitle,
html.light body.auth-page .auth-form-panel .auth-field label,
html.light body.auth-page .auth-form-panel .auth-check,
html.light body.auth-page .auth-form-panel .auth-switch {
  opacity:1 !important;
  visibility:visible !important;
}



/* ==========================================================================
   CASES — SECTION 3 RIGHT-SIDE CARD SCROLL
   Small layout-only fix:
   - keeps the existing design/visuals
   - reduces the large vertical gap
   - keeps the exploded visual on the left
   - makes the 4 architecture cards scroll one-by-one on the right
   ========================================================================== */

@media (min-width: 1081px) {
  .shop-page--cases .case-architecture {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .shop-page--cases .case-architecture .arch-header {
    margin-bottom: 34px;
  }

  .shop-page--cases .case-architecture .arch-grid {
    align-items: start;
    gap: 38px;
  }

  .shop-page--cases .case-architecture .arch-visual-stage {
    position: sticky;
    top: 96px;
    min-height: calc(100vh - 130px);
    height: calc(100vh - 130px);
    justify-content: center;
  }

  .shop-page--cases .case-architecture .arch-cards-stage {
    max-height: calc(100vh - 145px);
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    scroll-snap-type: y mandatory;
    scroll-behavior: smooth;
    gap: 14px;
    padding: 2px 10px 14px 2px;
    scrollbar-width: thin;
  }

  .shop-page--cases .case-architecture .arch-card {
    scroll-snap-align: start;
    scroll-snap-stop: always;
    margin: 0;
  }

  /* Keep the scrollbar inside the right-hand card rail. */
  .shop-page--cases .case-architecture .arch-cards-stage::-webkit-scrollbar {
    width: 7px;
  }

  .shop-page--cases .case-architecture .arch-cards-stage::-webkit-scrollbar-track {
    background: transparent;
  }

  .shop-page--cases .case-architecture .arch-cards-stage::-webkit-scrollbar-thumb {
    background: var(--c-accent);
    border-radius: 20px;
  }
}

/* At tablet/mobile widths, return to the normal full-page flow. */
@media (max-width: 1080px) {
  .shop-page--cases .case-architecture .arch-cards-stage {
    max-height: none;
    overflow: visible;
    scroll-snap-type: none;
    padding: 0;
  }

  .shop-page--cases .case-architecture .arch-visual-stage {
    position: relative;
    top: auto;
    height: auto;
  }
}

/* Narrow mobile: reduce the section spacing slightly without redesigning it. */
@media (max-width: 767px) {
  .shop-page--cases .case-architecture {
    padding-top: 45px;
    padding-bottom: 45px;
  }

  .shop-page--cases .case-architecture .arch-header {
    margin-bottom: 24px;
  }

  .shop-page--cases .case-architecture .arch-grid {
    gap: 20px;
  }
}


/* =========================================================
   VOLTIVA — VISIBLE FORM VALIDATION FEEDBACK
   ========================================================= */

.voltiva-field-error {
  display: block !important;
  min-height: 18px;
  margin-top: 6px !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #b44f56 !important;
  -webkit-text-fill-color: #b44f56 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.dark-mode .voltiva-field-error {
  color: #ffaaa8 !important;
  -webkit-text-fill-color: #ffaaa8 !important;
}

.voltiva-invalid {
  border-color: #b44f56 !important;
  outline: 2px solid rgba(180, 79, 86, .12) !important;
  outline-offset: 1px;
}

body.dark-mode .voltiva-invalid {
  border-color: #ffaaa8 !important;
  outline-color: rgba(255, 170, 168, .14) !important;
}

#newsletterForm .voltiva-field-error {
  margin-top: 5px !important;
}

.auth-field .voltiva-field-error,
.ct-field .voltiva-field-error,
.rs-form-row > div .voltiva-field-error {
  width: 100%;
}

@media (max-width: 600px) {
  .voltiva-field-error {
    font-size: 13px !important;
  }
}
