:root{--navy:#061248;--blue:#012ADE;--blue-d:#0022b8;--soft:#eef1fd;--ink:#0d1433;--muted:#566080;--line:#e2e4e8;--paper:#f6f7f8;--wa:#0f7d41;--r:10px;--max:1200px;--sans:'Space Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;font:400 16.5px/1.65 var(--sans);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto;display:block}a{color:inherit}button,input,select,textarea{font:inherit}
h1,h2,h3,h4{font-family:var(--sans);font-weight:600;line-height:1.14;margin:0;letter-spacing:-.022em;color:var(--navy)}
h1{font-size:clamp(34px,4.2vw,54px)}h2{font-size:clamp(27px,3vw,38px)}h3{font-size:20px;letter-spacing:-.012em}h4{font-size:17px;letter-spacing:-.005em}
p{margin:12px 0 0}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
section{padding:clamp(52px,6.5vw,88px) 0}.alt{background:var(--paper)}
.eyebrow{font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin:0 0 12px}
.err-404{min-height:50vh}
.lead{font-size:clamp(16.5px,1.4vw,18px);color:var(--muted);max-width:64ch}
.center{text-align:center}.center .lead{margin-left:auto;margin-right:auto}
.preview{background:#fff8e1;color:#5b4700;font-size:12.5px;text-align:center;padding:5px 16px}.preview a{font-weight:600}
header.top{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:24px;height:72px}
.logo img{height:42px;width:auto}
.menu{display:flex;align-items:center;gap:2px;margin-left:auto;list-style:none;padding:0;margin-top:0;margin-bottom:0}
.menu>li{position:relative}
.menu a,.menu button{display:block;padding:9px 11px;border:0;background:none;color:var(--navy);font-size:14.5px;font-weight:500;text-decoration:none;cursor:pointer;border-radius:6px;white-space:nowrap}
.menu>li>a:hover,.menu>li>button:hover,.menu a[aria-current=page]{color:var(--blue)}
.sub{display:none;position:absolute;top:100%;left:0;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 12px 32px #06124822;list-style:none;margin:0}
.has-sub:hover .sub,.has-sub:focus-within .sub{display:block}.sub a:hover{background:var(--soft);color:var(--blue)}
.caret:after{content:"";display:inline-block;margin-left:6px;width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:translateY(-2px) rotate(45deg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:8px;border:0;background:var(--blue);color:#fff;font-weight:600;font-size:15.5px;text-decoration:none;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--blue-d)}.btn.wa{background:var(--wa)}.btn.wa:hover{background:#0c6a37}
.btn.ghost{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 1.5px #06124844}.btn.ghost:hover{background:var(--navy);color:#fff}
.btn.sm{padding:9px 15px;font-size:14px}.dark .btn.ghost{color:#fff;box-shadow:inset 0 0 0 1.5px #ffffff77}.dark .btn.ghost:hover{background:#fff;color:var(--navy)}
.burger{display:none;margin-left:auto;background:none;border:0;color:var(--navy);font-size:26px;cursor:pointer;line-height:1}
.hero{padding:clamp(36px,5vw,64px) 0 clamp(36px,5vw,64px);background:linear-gradient(180deg,#fff,var(--paper));overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4.5vw,64px);align-items:center}
.hero h1{font-size:clamp(34px,3.5vw,46px)}
.hero .sub-t{font-size:clamp(16.5px,1.45vw,18.5px);color:var(--muted);margin:18px 0 26px;max-width:50ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px}
.hero-facts{list-style:none;display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:12px 26px;padding:24px 0 0;margin:28px 0 0;border-top:1px solid var(--line)}
.hero-facts b{display:block;white-space:nowrap;font-size:18px;color:var(--navy);letter-spacing:-.015em;line-height:1.2}.hero-facts span{font-size:13px;color:var(--muted)}
.hero-vids{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}
.hv{position:relative;margin:0;border-radius:12px;overflow:hidden;background:var(--navy);aspect-ratio:9/16}
.hv:nth-child(2){margin-top:26px}.hv:nth-child(3){margin-top:-10px}
.hv video{width:100%;height:100%;object-fit:cover}
.hv figcaption{position:absolute;left:9px;bottom:9px;background:#061248e0;color:#fff;font-size:12px;font-weight:500;padding:3px 9px;border-radius:5px}
.marquee{overflow:hidden;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}
.marquee .lbl{font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;margin:0 0 12px}
.track{display:flex;gap:44px;width:max-content;animation:slide 44s linear infinite;align-items:center}
.marquee:hover .track{animation-play-state:paused}
.track img{height:44px;width:auto;max-width:130px;object-fit:contain;filter:grayscale(1);opacity:.78}.track img:hover{filter:none;opacity:1}
@keyframes slide{to{transform:translateX(-50%)}}
.band{background:var(--navy);color:#fff}.band ul{list-style:none;margin:0 auto;padding:22px 24px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.band b{display:block;font-size:20px;letter-spacing:-.015em}.band span{font-size:13.5px;color:#c7d0f3}
.doors{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}
.door{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:#fff;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.door:hover{border-color:var(--blue);box-shadow:0 8px 24px #06124814}.door p{color:var(--muted);flex:1;margin:8px 0 14px;font-size:15.5px}.door strong{color:var(--blue);font-weight:600;font-size:15px}
.lines{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:32px}
.line{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s}
a.line:hover{border-color:var(--blue);box-shadow:0 8px 24px #06124814}
.line img{aspect-ratio:4/3;width:100%;object-fit:cover}.line div{padding:15px 17px 18px}.line p{margin:6px 0 0;font-size:14.5px;color:var(--muted);line-height:1.5}
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px}
.why>div{padding:22px;border-top:2px solid var(--blue);background:#fff}.why p{font-size:15px;color:var(--muted);margin-top:8px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4.5vw,56px);align-items:start}.split.mid{align-items:center}
.check{list-style:none;padding:0;margin:20px 0 0}.check li{padding:10px 0 10px 28px;border-top:1px solid var(--line);position:relative;font-size:15.5px}
.check li:before{content:"";position:absolute;left:3px;top:18px;width:14px;height:7px;background:repeating-linear-gradient(var(--blue) 0 1.6px,transparent 1.6px 3px)}
.dark{background:var(--navy);color:#fff}.dark h1,.dark h2,.dark h3{color:#fff}.dark .eyebrow{color:#a8b7ff}.dark .lead{color:#ced6f5}.dark .check li{border-color:#ffffff22}
.dark .check li:before{background:repeating-linear-gradient(#a8b7ff 0 1.6px,transparent 1.6px 3px)}
form.card{background:#fff;color:var(--ink);padding:24px;border-radius:var(--r);border:1px solid var(--line)}form.card h3{margin-bottom:14px}
.field{margin-bottom:12px}.field label,.lbl-sm{display:block;font-size:13.5px;font-weight:500;margin-bottom:4px;color:var(--navy)}
input[type=text],input[type=tel],input[type=number],select,textarea{width:100%;padding:10px 12px;border:1px solid #c6cad3;border-radius:7px;background:#fff;color:var(--ink);font-size:16px}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--blue);outline-offset:1px}
.dark :focus-visible,footer :focus-visible{outline-color:#fff}form.card :focus,form.card :focus-visible{outline-color:var(--blue)}
[aria-invalid=true]{border-color:#b3261e!important}button[disabled]{opacity:.65;cursor:wait}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.consent{display:flex;gap:9px;font-size:13px;color:var(--muted);margin:6px 0 14px;align-items:flex-start}.consent input{margin-top:4px}
.hp{position:absolute;left:-9999px}.msg{font-size:14px;margin:10px 0 0}.msg.ok{color:#0a6b37}.msg.err{color:#b3261e}.full{width:100%}
.item{border:1px solid var(--line);border-radius:9px;padding:13px;margin-bottom:11px;background:var(--paper)}
.item .g4{display:grid;grid-template-columns:1fr 1fr;gap:10px}.item .g3{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:10px;align-items:end}
.link{background:none;border:0;color:var(--blue);cursor:pointer;font-weight:600;padding:6px 0;font-size:15px}.rm{background:none;border:0;color:var(--muted);cursor:pointer;font-size:14px;padding:10px 0}
.total{font-size:14.5px;color:var(--muted);margin:2px 0 13px}.total b{color:var(--ink)}
.sim{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.scene{position:relative;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;background:#2b3148;--o:.5;--drop:60%}
.window{position:absolute;left:14%;right:14%;top:9%;bottom:24%;background:linear-gradient(#8ec9f2 0 58%,#3e87b4 58% 66%,#c9b98e 66%);box-shadow:0 0 0 7px #f4f4f2;overflow:hidden}
.sun{position:absolute;width:64px;height:64px;border-radius:50%;background:#fff3c4;box-shadow:0 0 60px 30px #fff0b3cc;top:12%;right:20%}
.blind{position:absolute;left:0;right:0;top:0;height:var(--drop);transition:height .2s,background .3s;border-bottom:5px solid #e7e7e4}
.blind[data-f=solar]{background:rgba(70,74,84,.42);backdrop-filter:blur(.5px)}.blind[data-f=translucido]{background:rgba(244,240,230,.84);backdrop-filter:blur(5px)}.blind[data-f=blackout]{background:#2a2d38}
.blind[data-f=double]{background:repeating-linear-gradient(#f2efe7 0 18px,rgba(242,239,231,.26) 18px 36px)}
.floor{position:absolute;left:0;right:0;bottom:0;height:17%;background:#8d7458}.sofa{position:absolute;left:30%;right:30%;bottom:11%;height:15%;background:#39415f;border-radius:10px 10px 4px 4px}
.shade{position:absolute;inset:0;background:#050818;opacity:var(--o);pointer-events:none;transition:opacity .25s}
.ctl .lbl-sm{margin-bottom:8px;font-size:14.5px;font-weight:600}.fabrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
.fabrics button{padding:10px;border:1.5px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:14.5px}.fabrics button[aria-pressed=true]{border-color:var(--blue);background:var(--soft);color:var(--blue);font-weight:600}
input[type=range]{width:100%;accent-color:var(--blue)}.ctl small{display:block;color:var(--muted);margin-top:10px;font-size:12.5px}#fabric-note{min-height:3em;color:var(--muted);font-size:15px;margin:12px 0 0}
.car-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.car-nav button{width:44px;height:44px;border-radius:50%;border:1.5px solid #ffffff66;background:none;color:#fff;font-size:19px;cursor:pointer}.car-nav button:hover{background:#fff;color:var(--navy)}
.reels{display:flex;align-items:flex-start;gap:14px;overflow-x:auto;margin-top:30px;padding-bottom:6px;scrollbar-width:none}.reels::-webkit-scrollbar{display:none}
.reel{flex:0 0 228px;background:none;border:0;padding:0;color:#fff;text-align:left;cursor:pointer}
.reel .th{display:block;position:relative;border-radius:11px;overflow:hidden;aspect-ratio:9/16;background:#111b52}
.reel video{width:100%;height:100%;object-fit:cover}
.reel .pl{position:absolute;right:9px;bottom:9px;padding:3px 10px;border-radius:99px;background:#ffffffee;color:var(--navy);font-size:12.5px;font-weight:600}
.reel em{display:block;font-style:normal;font-size:13.5px;line-height:1.35;margin-top:8px;color:#dfe5ff}
dialog{border:0;padding:44px 0 0;border-radius:12px;background:var(--navy);width:min(400px,94vw);height:min(800px,92vh);overflow:hidden}
dialog.wide{width:min(960px,94vw);height:auto;aspect-ratio:auto}dialog.wide iframe{aspect-ratio:16/9;height:auto}
dialog::backdrop{background:#000c}dialog iframe{width:100%;height:100%;border:0;background:#111b52;display:block}
dialog .x{position:absolute;right:6px;top:4px;width:36px;height:36px;border:0;background:none;color:#fff;font-size:18px;cursor:pointer}
dialog.lb{width:auto;max-width:94vw;height:auto;background:#000}dialog.lb img{max-height:84vh;width:auto;margin:auto}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:30px}
.gal button{padding:0;border:0;background:none;cursor:zoom-in;border-radius:9px;overflow:hidden}.gal img{aspect-ratio:3/4;width:100%;object-fit:cover;transition:transform .25s}.gal button:hover img{transform:scale(1.03)}
.yt{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px;margin-top:30px}
.yt button{padding:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;text-align:left;cursor:pointer;color:var(--navy);display:flex;flex-direction:column}
.yt button:hover{border-color:var(--blue)}.yt .thumb{position:relative;display:block;aspect-ratio:16/9;background:#111b52}.yt img{width:100%;height:100%;object-fit:cover}
.yt .pl{position:absolute;inset:0;margin:auto;width:56px;height:40px;border-radius:9px;background:#e4002bdd;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px}
.yt b{display:block;padding:12px 14px;font-weight:500;font-size:15px;line-height:1.35}
.video-embed{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;margin-top:22px}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.crumb{background:var(--paper);border-bottom:1px solid var(--line);font-size:13.5px;color:var(--muted);padding:11px 0}.crumb a{color:var(--blue);text-decoration:none}.crumb span{margin:0 7px}
.page-h{padding:clamp(34px,4.5vw,56px) 0 clamp(26px,3.5vw,38px)}
.prose{max-width:74ch}.prose h3{margin-top:30px}.prose h4{margin-top:22px;color:var(--blue)}.prose p{color:#2c3454}
.media{display:grid;gap:14px}.media img{border-radius:var(--r);width:100%;object-fit:cover}
.cta-band{background:var(--soft);border-radius:var(--r);padding:26px;margin-top:32px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}
.cta-band p{margin:4px 0 0;color:var(--muted);font-size:15px}
.about{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(24px,4vw,48px);align-items:center}.about img{border-radius:var(--r)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.cards3>div{padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}.cards3 p{color:var(--muted);font-size:15.5px}
.certs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.certs figure{margin:0;padding:18px;border:1px solid var(--line);border-radius:var(--r);background:#fff}.certs img{height:70px;width:auto;margin:0 auto}.certs figcaption{font-size:12.5px;color:var(--muted);text-align:center;margin-top:10px;line-height:1.4}
.blog-post{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(22px,4vw,44px);align-items:start;padding:34px 0;border-top:1px solid var(--line)}.blog-post img{border-radius:var(--r)}
.logos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.logos div{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px;display:flex;align-items:center;justify-content:center;aspect-ratio:3/2}.logos img{max-height:100%;object-fit:contain}
.fabs{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}.fabs img{border-radius:var(--r)}
details{border-top:1px solid var(--line);padding:15px 0}details:last-child{border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none;display:flex;justify-content:space-between;gap:16px;color:var(--navy)}summary::-webkit-details-marker{display:none}summary:after{content:"+";color:var(--blue);font-size:21px;line-height:1}details[open] summary:after{content:"–"}details p{color:var(--muted)}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.quotes blockquote{margin:0;padding:22px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}.quotes .st{color:#c58a00;letter-spacing:2px}.quotes p{color:#2c3454;font-size:15.5px}.quotes cite{display:block;font-style:normal;font-weight:600;margin-top:10px;font-size:14.5px;color:var(--navy)}
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px}.contact iframe{width:100%;height:100%;min-height:360px;border:0;border-radius:var(--r)}
.info{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.info h4{color:var(--blue);margin-bottom:2px}.info p{margin:0;font-size:15.5px}
footer{background:#040c31;color:#b9c3ea;padding:46px 0 96px;font-size:14px}
.foot{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px}.foot img{height:38px;width:auto;margin-bottom:12px}.foot h4{color:#fff;font-size:14px;margin-bottom:10px}.foot ul{list-style:none;padding:0;margin:0}.foot li{margin:6px 0}.foot a{color:#dfe5ff;text-decoration:none}.foot a:hover{text-decoration:underline}
.copy{margin-top:28px;padding-top:18px;border-top:1px solid #ffffff1f;font-size:13px}
.float{position:fixed;right:18px;bottom:18px;z-index:40;width:56px;height:56px;border-radius:50%;background:var(--wa);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #0005}.float svg{width:28px;height:28px;fill:#fff}
@media (max-width:1060px){
.menu{display:none;position:absolute;left:0;right:0;top:72px;background:#fff;flex-direction:column;align-items:stretch;padding:10px 20px 18px;border-bottom:1px solid var(--line);max-height:calc(100vh - 72px);overflow:auto}.menu.open{display:flex}
.sub{display:block;position:static;border:0;box-shadow:none;padding:0 0 0 12px}.burger{display:block}.nav>.btn{display:none}.caret:after{display:none}
.hero-grid,.sim,.split,.fabs,.contact,.about,.blog-post{grid-template-columns:1fr}.why{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}
.band ul{grid-template-columns:1fr 1fr}.doors,.cards3,.quotes{grid-template-columns:1fr}.reel{flex-basis:190px}.contact iframe{height:300px}
.hv:nth-child(2),.hv:nth-child(3){margin-top:0}
}
@media (max-width:520px){.hero-facts{grid-template-columns:1fr 1fr}.why,.foot,.info{grid-template-columns:1fr}.g2{grid-template-columns:1fr}.item .g3{grid-template-columns:1fr 1fr}.item .g3 .rm{grid-column:1/-1;text-align:left;padding:0}.certs{grid-template-columns:1fr}.btn.full-m{width:100%}.gal{grid-template-columns:1fr 1fr}.hero-actions .btn{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.track{animation:none;flex-wrap:wrap;width:auto;justify-content:center}}
