:root{
  --orange:#f28c28;
  --orange-dark:#df6f10;
  --orange-light:#fff1e4;
  --blue:#173f68;
  --blue-2:#225a8f;
  --blue-light:#e9f3fb;
  --ink:#142536;
  --muted:#66788a;
  --line:#dfe8ef;
  --white:#fff;
  --shadow:0 22px 55px rgba(23,63,104,.13);
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Manrope,Arial,sans-serif;line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:auto}
.announcement{background:var(--blue);color:#fff;text-align:center;padding:8px 18px;font-size:13px;font-weight:700}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(15px);border-bottom:1px solid rgba(223,232,239,.8)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:11px;font-family:Nunito,sans-serif;font-weight:900}
.brand-mark{width:45px;height:45px}
.brand-text{font-size:25px;color:var(--blue);line-height:.85}
.brand-text span{color:var(--orange)}
.brand-text small{display:block;letter-spacing:3.5px;font-family:Manrope,sans-serif;font-size:8px;margin-top:8px}
.nav-links{display:flex;align-items:center;gap:27px;font-weight:700;font-size:14px}
.nav-links a:not(.button):hover{color:var(--orange)}
.menu-button{display:none;border:0;background:none;padding:8px}
.menu-button span{display:block;width:25px;height:2px;background:var(--blue);margin:5px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:14px;background:var(--orange);color:#fff;font-weight:800;box-shadow:0 12px 25px rgba(242,140,40,.23);transition:.22s}
.button:hover{transform:translateY(-2px);background:var(--orange-dark)}
.button-small{min-height:42px;padding:0 19px}
.button-secondary{background:#fff;color:var(--blue);border:1px solid var(--line);box-shadow:none}
.hero{min-height:720px;position:relative;overflow:hidden;background:linear-gradient(135deg,#fbfdff 0%,#f0f7fc 55%,#fff4e9 100%)}
.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;min-height:650px;gap:50px;padding:65px 0}
.hero-copy{position:relative;z-index:2}
.eyebrow{display:block;color:var(--orange-dark);font-weight:900;letter-spacing:2.5px;font-size:12px;margin-bottom:15px}
.hero h1,.section h2{font-family:Nunito,sans-serif;letter-spacing:-1.6px;line-height:1.05}
.hero h1{font-size:clamp(46px,6vw,74px);margin:0 0 24px;color:var(--blue)}
.hero h1 strong{color:var(--orange)}
.hero-copy>p{font-size:18px;color:var(--muted);max-width:665px}
.hero-actions{display:flex;gap:12px;margin:32px 0}
.trust-row{display:flex;gap:28px;margin-top:38px}
.trust-row div{display:flex;flex-direction:column}
.trust-row b{font-size:14px;color:var(--blue)}
.trust-row span{font-size:12px;color:var(--muted)}
.mascot-card{position:relative;max-width:510px;margin:auto;filter:drop-shadow(0 35px 35px rgba(23,63,104,.16))}
.mascot-card>img{width:100%}
.floating-card{position:absolute;background:#fff;border:1px solid #edf2f6;border-radius:15px;padding:12px 16px;box-shadow:var(--shadow);font-weight:800;color:var(--blue);font-size:13px}
.floating-card span{margin-right:7px}
.card-one{top:11%;left:-7%}.card-two{top:55%;right:-4%}.card-three{bottom:7%;left:5%}
.hero-blob{position:absolute;border-radius:50%;filter:blur(2px)}
.blob-one{width:430px;height:430px;background:rgba(242,140,40,.12);right:-120px;top:-130px}
.blob-two{width:380px;height:380px;background:rgba(34,90,143,.12);left:-180px;bottom:-180px}
.quick-strip{margin-top:-54px;position:relative;z-index:5}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-radius:22px;box-shadow:var(--shadow);padding:26px 30px}
.quick-grid>div{display:flex;align-items:center;gap:15px;padding:0 25px;border-right:1px solid var(--line)}
.quick-grid>div:last-child{border:0}
.quick-grid span{font-size:25px}.quick-grid p{margin:0;line-height:1.35}.quick-grid small{display:block;color:var(--muted)}.quick-grid b{font-size:13px;color:var(--blue)}
.section{padding:110px 0}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:70px;margin-bottom:50px}
.section-heading h2,.about-copy h2,.size-copy h2{font-size:clamp(34px,4vw,52px);margin:0;color:var(--blue)}
.section-heading>p{max-width:460px;color:var(--muted)}
.section-heading.centered{display:block;text-align:center;max-width:750px;margin:0 auto 50px}
.section-heading.centered p{max-width:700px;margin:17px auto}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.service-card{padding:28px;background:#fff;border:1px solid var(--line);border-radius:22px;transition:.25s;min-height:280px}
.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}
.service-icon{width:55px;height:55px;border-radius:16px;background:var(--orange-light);display:grid;place-items:center;color:var(--orange-dark);margin-bottom:22px}
.service-icon svg{width:28px;height:28px}
.service-card h3{font-size:19px;color:var(--blue);margin:0 0 10px}
.service-card p{color:var(--muted);font-size:14px;margin-bottom:20px}
.tags{display:flex;flex-wrap:wrap;gap:7px}.tags span{font-size:10px;font-weight:800;background:var(--blue-light);color:var(--blue);padding:5px 9px;border-radius:20px}
.finishes-section{background:var(--blue);color:#fff;position:relative;overflow:hidden}
.finishes-section h2{color:#fff}.finishes-section .section-heading p{color:#c7d8e7}.finishes-section .eyebrow{color:#ffbd7b}
.finishes-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.finish-card{background:#fff;border-radius:18px;overflow:hidden;color:var(--ink)}
.finish-swatch{height:165px;position:relative;background:linear-gradient(135deg,#eaf6ff,#ffc78f)}
.finish-swatch:after{content:"";position:absolute;inset:18px;background:url("assets/sample-photo.svg") center/cover;border-radius:10px}
.finish-card div:last-child{padding:17px}.finish-card h3{margin:0;color:var(--blue);font-size:14px}.finish-card p{margin:4px 0 0;color:var(--muted);font-size:11px}
.finish-matte .finish-swatch{filter:saturate(.8)}
.finish-leather .finish-swatch{background-color:#dfb17f;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.15) 0 2px,transparent 2px 5px)}
.finish-canvas .finish-swatch{background-color:#d5c4aa;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.2) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(0,0,0,.04) 0 1px,transparent 1px 4px)}
.finish-glitter .finish-swatch{background:radial-gradient(circle at 20% 30%,#fff 0 2px,transparent 3px),radial-gradient(circle at 70% 55%,#fff 0 3px,transparent 4px),linear-gradient(135deg,#ffd2df,#ffc266,#cbeaff)}
.finish-3d .finish-swatch:after{box-shadow:8px 9px 0 rgba(23,63,104,.18)}
.finish-holo .finish-swatch{background:conic-gradient(from 45deg,#80e7ff,#ffd188,#f8a6e8,#a3f6bd,#80e7ff)}
.fine-print{text-align:center;font-size:11px;color:#afc5d7;margin-top:25px}
.split-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.size-copy p{color:var(--muted);font-size:17px}
.tip-card{display:flex;align-items:center;gap:17px;background:var(--orange-light);border-radius:20px;padding:20px;margin-top:30px}
.tip-card img{width:55px}.tip-card p{margin:0;font-size:13px}.tip-card b{color:var(--blue)}
.size-table-wrap{background:#fff;box-shadow:var(--shadow);border-radius:25px;padding:16px}
table{border-collapse:collapse;width:100%;overflow:hidden;border-radius:15px}
th,td{text-align:left;padding:18px 23px;border-bottom:1px solid var(--line)}
th{background:var(--blue);color:#fff;font-size:13px}td{font-weight:700;font-size:14px}td:last-child{color:var(--muted)}
tbody tr:last-child td{border:0}tbody tr:hover{background:#f7fafc}
.gallery-section{background:#f5f9fc}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gallery-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 12px 30px rgba(23,63,104,.08);transition:.25s}
.gallery-card:hover{transform:translateY(-5px)}
.gallery-card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.gallery-card div{padding:18px 21px}.gallery-card small{color:var(--orange-dark);font-weight:900}.gallery-card h3{margin:4px 0;color:var(--blue)}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}
.about-visual{position:relative}.about-photo{background:linear-gradient(145deg,var(--blue-light),var(--orange-light));border-radius:35px;padding:35px}.about-photo img{max-height:570px;margin:auto}
.about-badge{position:absolute;right:-20px;bottom:35px;background:var(--orange);color:#fff;border-radius:50%;width:130px;height:130px;display:grid;place-content:center;text-align:center;line-height:1.25;box-shadow:var(--shadow);transform:rotate(-7deg)}
.about-copy>p{color:var(--muted)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:30px}
.values-grid div{background:#f7fafc;padding:18px;border-radius:17px}.values-grid span{color:var(--orange);font-weight:900}.values-grid b{display:block;color:var(--blue);font-size:13px}.values-grid p{font-size:11px;color:var(--muted);margin:5px 0}
.steps-section{background:#fff8f1}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}
.step{position:relative;background:#fff;border-radius:22px;padding:32px 25px;border:1px solid #f3dfcc}
.step>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--orange);color:#fff;font-weight:900}
.step h3{color:var(--blue);font-size:16px;margin:20px 0 8px}.step p{font-size:13px;color:var(--muted)}
.cta-section{padding-top:90px}
.cta-card{background:linear-gradient(135deg,var(--blue),#24679d);border-radius:35px;color:#fff;padding:55px 60px;display:grid;grid-template-columns:1fr 320px;align-items:center;overflow:hidden;min-height:390px}
.cta-card h2{color:#fff;font-size:48px;margin:0 0 15px}.cta-card p{color:#c8dbea;max-width:650px}
.cta-card img{max-height:310px;margin:auto}
.eyebrow.light{color:#ffbd7b}.cta-buttons{display:flex;gap:12px;margin-top:25px}.button-light{background:#fff;color:var(--blue);box-shadow:none}.button-outline-light{background:transparent;border:1px solid rgba(255,255,255,.45);box-shadow:none}
.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:55px 0}
.contact-grid div{display:flex;flex-direction:column}.contact-grid small{color:var(--orange-dark);font-weight:900;letter-spacing:1.5px}.contact-grid b{color:var(--blue)}.contact-grid span,.contact-grid a{font-size:12px;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:25px 0}.footer-wrap{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.footer-brand{transform:scale(.82);transform-origin:left}
.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}
.reveal.visible{opacity:1;transform:none}
@media(max-width:1000px){
  .nav-links{position:absolute;top:78px;left:0;right:0;background:#fff;display:none;flex-direction:column;padding:25px;box-shadow:var(--shadow)}
  .nav-links.open{display:flex}.menu-button{display:block}
  .hero-grid,.about-grid,.split-layout{grid-template-columns:1fr}
  .hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.trust-row{justify-content:center}
  .hero-visual{max-width:530px;margin:auto}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .finishes-grid{grid-template-columns:repeat(4,1fr)}
  .section-heading{display:block}.section-heading>p{max-width:700px}
  .cta-card{grid-template-columns:1fr 240px}
}
@media(max-width:700px){
  .container{width:min(100% - 24px,1180px)}
  .hero{min-height:auto}.hero-grid{padding:60px 0 100px}.hero h1{font-size:45px}
  .hero-actions,.trust-row,.cta-buttons{flex-direction:column}.trust-row{gap:13px}
  .floating-card{font-size:10px;padding:8px 10px}
  .quick-grid{grid-template-columns:1fr;padding:12px 22px}.quick-grid>div{padding:14px 0;border-right:0;border-bottom:1px solid var(--line)}
  .services-grid,.gallery-grid,.steps-grid,.values-grid{grid-template-columns:1fr}
  .finishes-grid{grid-template-columns:repeat(2,1fr)}
  .section{padding:75px 0}.section-heading{margin-bottom:35px}
  .split-layout,.about-grid{gap:45px}
  .cta-card{grid-template-columns:1fr;padding:40px 25px}.cta-card h2{font-size:37px}.cta-card img{max-height:220px}
  .contact-grid{grid-template-columns:1fr 1fr}
  .footer-wrap{flex-direction:column;gap:15px;text-align:center}
}
