:root{--brand:#1d4a63;--brand-dark:#133549;--brand-tint:#e9f1f5;--accent:#d9693a;--accent-dark:#bf5528;--ink:#1f2a33;--muted:#5b6770;--line:#e3e8ec;--bg-soft:#f5f7f9;--white:#fff;--radius:14px;--shadow:0 10px 30px #14233214;--head:"Montserrat", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--body:system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font:16px/1.6 var(--body);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;display:block}a{color:var(--brand-dark)}h1,h2,h3,h4{font-family:var(--head);color:var(--ink);margin:0 0 .5em;line-height:1.2}h1{color:var(--brand);letter-spacing:-.01em;font-size:clamp(2rem,4.6vw,3.1rem);font-weight:600}h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600}h3{font-size:1.15rem;font-weight:600}p{margin:0 0 1em}.container{width:min(1160px,100% - 32px);margin:0 auto}.section{padding:clamp(48px,7vw,88px) 0}.section.soft{background:var(--bg-soft)}.center{text-align:center}.lead{color:var(--muted);font-size:1.15rem}.kicker{font-family:var(--head);color:var(--accent-dark);letter-spacing:.02em;font-size:.95rem;font-weight:600}.muted{color:var(--muted)}.small{font-size:.9rem}.btn{font-family:var(--head);cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 26px;font-size:.98rem;font-weight:600;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn-brand{background:var(--brand);color:#fff}.btn-brand:hover{background:var(--brand-dark)}.btn-ghost{color:var(--brand-dark);border-color:var(--brand);background:0 0}.btn-ghost:hover{background:var(--brand-tint)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-block{width:100%}.header{z-index:50;background:var(--brand);border-bottom:1px solid var(--brand-dark);position:sticky;top:0}.header-in{align-items:center;gap:20px;min-height:72px;display:flex}.logo{font-family:var(--head);color:#fff;align-items:center;gap:10px;font-size:1.35rem;font-weight:700;text-decoration:none;display:flex}.logo small{letter-spacing:.14em;color:#b9cbd6;text-transform:uppercase;margin-top:-4px;font-size:.62rem;font-weight:600;display:block}.nav{gap:22px;margin-left:12px;display:flex}.nav a{font-family:var(--head);color:#e7eef2;font-size:.95rem;font-weight:500;text-decoration:none}.nav a:hover,.nav a.active{color:#f4b48e}.header-right{align-items:center;gap:16px;margin-left:auto;display:flex}.phone-link{font-family:var(--head);color:#fff;white-space:nowrap;font-weight:600;text-decoration:none}.menu-btn{cursor:pointer;color:#fff;background:0 0;border:0;font-size:1.6rem;display:none}.mobile-nav{display:none}@media (width<=960px){.nav,.header-right .btn{display:none}.menu-btn{display:block}.mobile-nav.open{flex-direction:column;gap:4px;padding:8px 0 16px;display:flex}.mobile-nav a{font-family:var(--head);color:#e7eef2;border-bottom:1px solid #ffffff1f;padding:10px 4px;font-weight:500;text-decoration:none}}@media (width<=420px){.phone-link{font-size:.9rem}}.hero{background:linear-gradient(180deg, #fff 0%, var(--brand-tint) 100%);padding:clamp(40px,7vw,90px) 0 clamp(40px,6vw,70px);overflow:hidden}.hero-grid{grid-template-columns:1.25fr 1fr;align-items:center;gap:40px;display:grid}@media (width<=900px){.hero-grid{grid-template-columns:1fr}.hero-art{display:none}}.hero .sub{font-family:var(--head);color:var(--brand-dark);margin-bottom:26px;font-size:1.1rem}.addr-label{font-family:var(--head);color:var(--accent-dark);margin:0 0 8px 18px;font-size:.95rem;font-weight:600;display:block}.addr{border:2px solid var(--accent);box-shadow:var(--shadow);background:#fff;border-radius:999px;max-width:640px;padding:5px;display:flex}.addr input,.addr select{font:inherit;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:12px 18px;font-size:1.02rem}.addr .ac{flex:1;min-width:0}.addr input,.addr .addr-input{width:100%}.addr select{border-left:1px solid var(--line);cursor:pointer;max-width:190px}.addr .btn{flex:none}@media (width<=640px){.addr{border-radius:22px;flex-direction:column;gap:6px;padding:8px}.addr select{border-left:0;border-top:1px solid var(--line);max-width:none}}.secure{color:var(--muted);margin:12px 0 0 18px;font-size:.88rem}.promise-row{flex-wrap:wrap;gap:10px 22px;margin-top:22px;display:flex}.promise{color:var(--brand-dark);align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.grid{gap:22px;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:24px}.tile{color:inherit;border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;text-decoration:none;transition:box-shadow .2s,transform .2s;display:flex;overflow:hidden}.tile:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.tile-body{padding:18px 20px 22px}.tile-body h3{color:var(--brand-dark);margin-bottom:4px}.tile-body p{color:var(--muted);margin:0 0 10px;font-size:.95rem}.tile-cta{font-family:var(--head);color:var(--accent-dark);font-size:.9rem;font-weight:600}.ph{aspect-ratio:4/3;background:linear-gradient(135deg,#dfe8ee,#c3d4df 45%,#a7bfcf);align-items:flex-end;display:flex;position:relative}.ph span{font-size:.72rem;font-family:var(--head);letter-spacing:.08em;text-transform:uppercase;color:#142d41a6;background:#fff9;border-radius:6px;margin:10px;padding:4px 8px;font-weight:600}.ph.wide{aspect-ratio:16/9}.ph img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery figure{margin:0}.gallery figcaption{color:var(--muted);margin-top:8px;font-size:.88rem}.ph.round{border-radius:var(--radius);overflow:hidden}.steps{counter-reset:s;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px;display:grid}.step{border-radius:var(--radius);border:1px solid var(--line);background:#fff;padding:26px 22px;position:relative}.step:before{counter-increment:s;content:counter(s);background:var(--brand);color:#fff;width:42px;height:42px;font-family:var(--head);border-radius:50%;place-items:center;margin-bottom:14px;font-weight:700;display:grid}.checks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.checks li{padding-left:30px;position:relative}.checks li:before{content:"";background:var(--brand-tint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d4a63' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;border-radius:50%;width:18px;height:18px;position:absolute;top:4px;left:0}.chips{flex-wrap:wrap;gap:10px;display:flex}.chip{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;padding:8px 16px;font-size:.93rem;text-decoration:none;display:inline-block}a.chip:hover{border-color:var(--brand);color:var(--brand-dark)}.faq details{border-bottom:1px solid var(--line);padding:16px 4px}.faq summary{cursor:pointer;font-family:var(--head);justify-content:space-between;gap:16px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--brand);font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:"–"}.faq .a{color:var(--muted);margin-top:10px}.faq-group+.faq-group{margin-top:40px}.quote-wrap{grid-template-columns:1.3fr 1fr;align-items:start;gap:28px;display:grid}@media (width<=900px){.quote-wrap{grid-template-columns:1fr}}.qcard{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:18px;padding:clamp(20px,3vw,32px)}.qsteps{gap:8px;margin-bottom:22px;display:flex}.qsteps span{background:var(--line);border-radius:3px;flex:1;height:5px}.qsteps span.on{background:var(--brand)}.field{margin-bottom:18px}.field>label,.field>.lbl{font-family:var(--head);margin-bottom:8px;font-size:.95rem;font-weight:600;display:block}.field .help{color:var(--muted);margin-top:6px;font-size:.85rem}.input,textarea.input,select.input{width:100%;font:inherit;border:1.5px solid var(--line);color:var(--ink);background:#fff;border-radius:12px;padding:12px 14px}.input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint);outline:none}.opts{flex-wrap:wrap;gap:8px;display:flex}.opt{border:1.5px solid var(--line);cursor:pointer;font:inherit;color:var(--ink);background:#fff;border-radius:999px;padding:10px 16px;font-size:.93rem}.opt.on{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-dark);font-weight:600}.switch{cursor:pointer;align-items:center;gap:12px;font-weight:500;display:flex}.switch input{width:20px;height:20px;accent-color:var(--brand)}.counts{gap:8px;display:grid}.count-row{border:1.5px solid var(--line);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.count-row.on{border-color:var(--brand);background:var(--brand-tint)}.count-row .nm{font-size:.95rem}.count-row .pr{color:var(--muted);font-size:.82rem}.stepper{flex:none;align-items:center;gap:8px;display:flex}.stepper button{border:1.5px solid var(--line);cursor:pointer;width:32px;height:32px;color:var(--brand-dark);background:#fff;border-radius:50%;font-size:1.1rem}.stepper b{text-align:center;min-width:18px}.price-card{background:var(--ink);color:#fff;border-radius:18px;padding:26px;position:sticky;top:92px}.price-card h3{color:#fff;opacity:.8;margin-bottom:6px;font-size:1rem}.price{font-family:var(--head);color:#f4b48e;font-size:clamp(2.2rem,5vw,2.9rem);font-weight:700;line-height:1.1}.badge{letter-spacing:.06em;text-transform:uppercase;color:#f4b48e;background:#f4b48e26;border-radius:999px;margin:10px 0 14px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-block}.price-card ul{opacity:.92;margin:0 0 14px;padding-left:18px;font-size:.93rem}.price-card .note{opacity:.75;font-size:.85rem}.price-card .promises{border-top:1px solid #ffffff26;gap:6px;margin-top:16px;padding-top:14px;font-size:.9rem;display:grid}.dates{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.date{border:1.5px solid var(--line);cursor:pointer;text-align:center;font:inherit;color:var(--ink);background:#fff;border-radius:12px;padding:10px 6px;line-height:1.25}.date small{color:var(--muted);font-size:.75rem;display:block}.date.on{border-color:var(--brand);background:var(--brand-tint)}.row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=560px){.row-2{grid-template-columns:1fr}}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.link-btn{color:var(--brand-dark);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.err{color:#b42318;margin-top:8px;font-size:.92rem}.done{text-align:center;padding:20px 0}.done .big{font-size:3rem}.banner{color:#7a4a06;background:#fff5e8;border:1px solid #ffd9a8;border-radius:12px;padding:14px 18px;font-weight:500}.warn{color:#7a4a06;background:#fff5e8;border-radius:10px;padding:10px 14px;font-size:.9rem}.svc-hero{background:linear-gradient(180deg, #fff, var(--brand-tint));padding:clamp(36px,6vw,70px) 0}.two{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}@media (width<=860px){.two{grid-template-columns:1fr}}.gallery{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}.crumbs{color:var(--muted);margin-bottom:14px;font-size:.88rem}.crumbs a{color:var(--muted)}.footer{background:var(--brand);color:#c9d8e0;margin-top:0;padding:56px 0 28px}.footer a{color:#e7eef2;text-decoration:none}.footer a:hover{color:#f4b48e}.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px;display:grid}@media (width<=820px){.footer-grid{grid-template-columns:1fr 1fr}}.footer h4{color:#fff;margin-bottom:12px;font-size:.95rem}.footer ul{gap:8px;margin:0;padding:0;font-size:.93rem;list-style:none;display:grid}.footer .legal{border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:36px;padding-top:20px;font-size:.85rem;display:flex}.sticky-cta{display:none}@media (width<=760px){.sticky-cta{z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #0000000f}.sticky-cta .btn{flex:1;padding:12px 10px}body{padding-bottom:76px}}.chat-fab{z-index:70;background:var(--brand);color:#fff;width:58px;height:58px;box-shadow:var(--shadow);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:20px;right:20px}@media (width<=760px){.chat-fab{bottom:88px;right:16px}}.chat-panel{z-index:71;border:1px solid var(--line);background:#fff;border-radius:18px;flex-direction:column;width:min(380px,100vw - 32px);height:min(560px,100vh - 140px);display:flex;position:fixed;bottom:90px;right:20px;overflow:hidden;box-shadow:0 20px 50px #0003}@media (width<=760px){.chat-panel{height:min(520px,100vh - 190px);bottom:156px;right:16px}}.chat-head{background:var(--brand);color:#fff;font-family:var(--head);justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;display:flex}.chat-head button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:1.4rem}.chat-log{background:var(--bg-soft);flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.msg{white-space:pre-wrap;border-radius:14px;max-width:85%;padding:10px 13px;font-size:.94rem;line-height:1.45}.msg.bot{border:1px solid var(--line);background:#fff;border-bottom-left-radius:4px;align-self:flex-start}.msg.me{background:var(--brand);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.chat-form{border-top:1px solid var(--line);gap:8px;padding:10px;display:flex}.chat-form input{font:inherit;border:1.5px solid var(--line);border-radius:999px;flex:1;padding:10px 14px}.chat-form button{background:var(--accent);color:#fff;font-family:var(--head);cursor:pointer;border:0;border-radius:999px;padding:0 16px;font-weight:600}.chat-foot{color:var(--muted);padding:0 14px 8px;font-size:.72rem}.mobile-price{display:none}@media (width<=900px){.mobile-price{z-index:5;background:var(--ink);color:#fff;border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:10px;margin:-6px -6px 18px;padding:12px 14px;display:flex;position:sticky;top:72px}.mobile-price span{opacity:.8;flex:100%;font-size:.85rem}.mobile-price b{font-family:var(--head);color:#f4b48e;font-size:1.6rem}.mobile-price small{opacity:.75}}.ac{position:relative}.ac-list{z-index:40;border:1px solid var(--line);box-shadow:var(--shadow);text-align:left;background:#fff;border-radius:12px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0}.ac-list li{cursor:pointer;border-radius:8px;padding:9px 10px;font-size:.95rem;line-height:1.3}.ac-list li span{color:var(--muted);font-size:.85rem}.ac-list li.on,.ac-list li:hover{background:var(--brand-tint)}.ac-list li.ac-foot{cursor:default;color:var(--muted);text-align:right;padding:4px 8px 0;font-size:.7rem}.ac-list li.ac-foot:hover{background:0 0}.found{background:var(--brand-tint);border-radius:10px;margin:-4px 0 18px;padding:10px 14px;font-size:.92rem}.found.muted{background:var(--bg-soft)}.filters{margin:26px 0 24px}button.chip{cursor:pointer;font:inherit;font-size:.93rem}.chip.on{background:var(--brand);border-color:var(--brand);color:#fff}.ex-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;display:grid}.ex-item{border-radius:var(--radius);cursor:zoom-in;aspect-ratio:4/3;background:var(--bg-soft);border:0;padding:0;position:relative;overflow:hidden}.ex-item img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.ex-item:hover img{transform:scale(1.04)}.ex-cap{text-align:left;color:#fff;background:linear-gradient(#0000,#000000a6);padding:22px 12px 10px;font-size:.9rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.ba-tag{color:var(--ink);letter-spacing:.04em;text-transform:uppercase;background:#ffffffeb;border-radius:6px;padding:4px 8px;font-size:.72rem;font-weight:700;position:absolute;top:10px;left:10px}.lightbox{z-index:100;background:#0a1016eb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.lightbox figure{max-width:min(1100px,100%);margin:0}.lightbox img{border-radius:10px;width:auto;max-width:100%;max-height:78vh;margin:0 auto}.lightbox figcaption{color:#e8eef2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.lb-close{color:#fff;cursor:pointer;background:0 0;border:0;font-size:2.2rem;position:absolute;top:12px;right:16px}.lb-nav{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:10px;flex:none;width:48px;height:64px;font-size:2.2rem}.lb-nav:hover{background:#ffffff38}@media (width<=640px){.lb-nav{width:56px;height:48px;position:absolute;bottom:18px}.lb-nav.prev{left:16px}.lb-nav.next{right:16px}.lightbox img{max-height:64vh}}.confirm{max-width:560px;margin:0 auto;padding:clamp(22px,5vw,36px);scroll-margin-top:96px}.confirm-head{text-align:center}.confirm-icon{background:var(--brand);color:#fff;width:60px;height:60px;box-shadow:0 0 0 8px var(--brand-tint);border-radius:50%;place-items:center;margin:4px 0 18px;display:inline-grid}.confirm-head h2{margin-bottom:6px;font-size:clamp(1.4rem,5vw,1.7rem)}.confirm-head p{color:var(--muted);margin:0 0 22px}.confirm-summary{border:1px solid var(--line);border-radius:12px;margin:0 0 20px;overflow:hidden}.confirm-summary div{justify-content:space-between;gap:16px;padding:11px 14px;font-size:.95rem;display:flex}.confirm-summary div+div{border-top:1px solid var(--line)}.confirm-summary dt{color:var(--muted);flex:none}.confirm-summary dd{text-align:right;margin:0;font-weight:600}.confirm-next{color:var(--muted);gap:8px;margin:0 0 22px;padding-left:20px;font-size:.93rem;display:grid}.confirm-next b{color:var(--ink)}.confirm-actions{gap:10px;display:grid}.footer .logo{align-items:center;font-size:1.15rem}.footer .logo svg{flex:none}@media (width<=820px){.footer-grid>div:first-child{grid-column:1/-1}}.plan-band{background:var(--brand-tint);border:1px solid #d3e2ea;border-radius:20px;grid-template-columns:1.4fr 1fr;align-items:center;gap:32px;padding:clamp(24px,4vw,44px);display:grid}.plan-band h2{margin-bottom:10px}.plan-band p{color:var(--muted)}@media (width<=820px){.plan-band{grid-template-columns:1fr}}.hero-full{background:var(--brand-dark);color:#fff;isolation:isolate;padding:clamp(70px,10vw,140px) 0 clamp(60px,9vw,120px);position:relative}.hero-full .hero-bg{object-fit:cover;object-position:70% 60%;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.hero-full:before{content:"";z-index:-1;background:linear-gradient(90deg,#133549e6 0%,#133549b8 38%,#13354926 70%,#13354900 100%);position:absolute;inset:0}.hero-full .hero-copy{max-width:640px}.hero-full h1{color:#fff;text-shadow:0 2px 18px #00000040}.hero-full .sub{color:#dbe7ee}.hero-full .addr-label{color:#f4b48e}@media (width<=900px){.hero-full .hero-bg{object-position:78% 50%}.hero-full:before{background:linear-gradient(#133549d1 0%,#133549b3 60%,#1335498c 100%)}}.step{grid-template-columns:42px 1fr;align-items:start;column-gap:16px;display:grid}.step:before{grid-row:span 2;margin-bottom:0}.step h3{margin:8px 0 6px}.step p{grid-column:2;margin:0}.two-center{align-items:center}.season-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:inherit;background:#fff;text-decoration:none;display:block;overflow:hidden}.season-card-body{padding:20px 22px 24px}.season-card-body h3{color:var(--brand-dark);margin:2px 0 6px}.season-card-body p:not(.kicker){color:var(--muted);margin:0 0 16px}.hero-full .secure{color:#dbe7ee}.section.soft{background:linear-gradient(#f3f7fa 0%,#e9f1f6 100%);border-top:1px solid #e1eaf0;border-bottom:1px solid #e1eaf0}.section.navy{background:radial-gradient(1200px 400px at 20% 0%, #24597a 0%, transparent 60%), var(--brand);color:#dbe7ee}.section.navy h2{color:#fff}.section.navy .kicker{color:#f4b48e}.section.navy .step{background:#ffffff0f;border-color:#ffffff24}.section.navy .step h3{color:#fff}.section.navy .step p,.section.navy .step .muted{color:#c9d8e0}.section.navy .step:before{background:var(--accent)}.plan-band{background:linear-gradient(135deg,#fff7f1 0%,#fdebdd 100%);border-color:#f5d4bd}.plan-band .kicker{color:var(--accent-dark)}.page-hero{padding:clamp(60px,8vw,110px) 0 clamp(50px,7vw,90px)}.page-hero .kicker{color:#f4b48e}.cta-photo{padding:clamp(60px,8vw,110px) 0}.cta-photo h2{color:#fff}.hero-full .crumbs,.hero-full .crumbs a{color:#c9d8e0}.quote-wrap .qcard{scroll-margin-top:96px}.optional{color:var(--muted);font-size:.9em;font-weight:400}.section:has(.confirm) .quote-head{display:none}
