/* Shared visual identity from the supplied i.Dako flyers. */
:root{--blue:#008eff;--ink:#f6f8fa;--muted:#b0bbc6;--line:#2a3a46;--pale:#0c151d}
body{background:#050a0e;color:var(--ink)}
h1,h2,h3{font-weight:800}h1 em,h2 em{font-style:normal;color:var(--blue)}
.draft{background:#0b1925;color:#9db4c6;border-bottom:1px solid #15354c}
header{background:#050a0ef2;border-bottom:1px solid #23313e}
.nav{height:100px;gap:25px}.nav nav{font-size:12px;gap:20px}.nav nav a:hover{color:#53b4ff}
.logo{display:inline-flex;align-items:center;gap:9px;color:white;font-size:35px;letter-spacing:-1.7px;white-space:nowrap}
.logo:after{display:none}.brand-mark{display:block;width:49px;height:49px}.logo .brand-type{display:block;font-size:inherit;letter-spacing:inherit;margin:0}.brand-type b{font:inherit;color:var(--blue)}
.logo .brand-caption{display:block;font-size:6px;letter-spacing:1.4px;color:#eef4fa;margin-top:8px;font-weight:400}.logo.light .brand-mark{width:62px;height:62px}
.eyebrow{color:#67c2ff;font-size:11px;letter-spacing:2.6px}.button{background:linear-gradient(135deg,#00aaff,#0061fa);border:1px solid #188dff;border-radius:8px;box-shadow:0 5px 24px #007dff17}.button:hover{background:linear-gradient(135deg,#28baff,#0870ff)}
.button[data-whatsapp]{background:#25d366;border-color:#25d366;color:#062f19;box-shadow:none}.button[data-whatsapp]:hover{background:#39e478;border-color:#39e478;color:#062f19}
.text-link[data-whatsapp]{color:#48e887}.text-link[data-whatsapp]:hover{color:#9af9bb}.text-link{color:#d4e7f7}.micro{color:#9dabb8}
.hero{position:relative;display:flex;align-items:center;min-height:660px;padding:70px 0 75px;isolation:isolate;gap:0}.hero-copy{position:relative;z-index:2;width:75%;pointer-events:none}.hero-copy a{pointer-events:auto}.hero h1{font-size:clamp(46px,5.2vw,72px);line-height:1.01;letter-spacing:-3px;max-width:850px;text-shadow:0 2px 30px #0008}.hero .eyebrow{margin-bottom:26px}.hero .lead{font-size:24px;letter-spacing:1.2px;color:#f4f8fc;margin-top:23px}.hero .muted{max-width:480px;color:#bfccd6;font-size:15px}.hero .actions{margin-top:30px;gap:26px}.hero-copy .micro{margin-top:20px}.hero-image{position:absolute;z-index:0;top:0;right:calc((1240px - 100vw)/2);width:80%;height:100%;border-radius:0;overflow:visible;opacity:1;background:none}.hero-image img{object-fit:cover;object-position:45% center;filter:brightness(.65) saturate(.75);border-radius:0}.hero-image:after{inset:0;background:linear-gradient(90deg,#050a0e 0%,#050a0e80 30%,transparent 65%),linear-gradient(0deg,#050a0e 0%,transparent 50%,#050a0e20 100%)}.hero-image figcaption{left:auto;right:25px;bottom:18px;color:#9fadb9}.price-tag{background:linear-gradient(150deg,#00b6ff,#0061ff 75%);color:#fff;border:1px solid #42bfff;border-radius:17px;bottom:80px;right:48px;transform:rotate(-4deg);padding:18px 29px;box-shadow:0 0 45px #007eff35}.price-tag strong{font-size:64px;letter-spacing:-3px;line-height:1.15}.price-tag span{font-size:11px}.price-tag small{font-size:21px}.hero-slogan{font-size:11px!important;letter-spacing:3px;color:#dceaf6!important;text-transform:uppercase;line-height:1.8}
.benefits{border-top:1px solid #008eff66;border-bottom:1px solid #263440;padding:28px 0}.benefits strong{font-size:14px}.benefits p span{color:#a5b2bf}.benefit-icon{color:#009eff}
.section{padding-top:74px;padding-bottom:74px}.section-heading>p{color:var(--muted)}.home-packages .section-heading{justify-content:center;text-align:center}.home-packages .section-heading h2{font-size:clamp(32px,3.4vw,48px)}.home-packages .section-heading p{margin-top:15px;letter-spacing:2.5px;font-size:12px;color:#c0cad3}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:48px;align-items:stretch}.package-card{position:relative;border:1px solid #72818e;border-radius:21px;padding:29px 28px 26px;display:flex;flex-direction:column;background:linear-gradient(145deg,#0d151b,#050a0f);min-width:0}.package-card.recommended{border:2px solid #009eff;box-shadow:inset 0 0 45px #008cff16,0 0 30px #008cff13;background:linear-gradient(150deg,#0c2333,#050d14 60%,#082438)}.package-card h3{text-align:center;font-size:29px;padding-bottom:14px;border-bottom:1px solid #33bfff;width:85%;margin:0 auto 16px}.recommend-label{position:absolute;top:-14px;left:50%;transform:translateX(-50%);border-radius:30px;padding:3px 24px;background:linear-gradient(90deg,#00b8ff,#0076ff);color:#fff;font-size:10px;letter-spacing:2.2px;font-weight:700}.package-price{text-align:center;font-size:49px;font-weight:800;line-height:1.2;letter-spacing:-2px}.package-price>span{font-weight:400;font-size:20px;letter-spacing:0}.package-time{text-align:center;color:#e3eaf0;margin-top:10px!important;font-size:16px}.package-time>span{color:#00a0ff;font-size:23px;vertical-align:middle;margin-right:8px}.package-card ul{list-style:none;padding:0;margin:22px 0 30px;flex:1}.package-card li{padding:8px 0 8px 25px;position:relative;font-size:14px;line-height:1.5}.package-card li:before{content:'✓';color:#009fff;font-weight:800;font-size:21px;position:absolute;left:0;top:3px}.package-card .button{font-size:13px;padding:12px 10px}.package-note{text-align:center;color:#aebcc9;font-size:13px;max-width:850px;margin:25px auto 0}.packages-more{display:flex;justify-content:center;margin-top:19px}
.overview-card{background:linear-gradient(130deg,#101c25,#080f15);border:1px solid #29445a;padding:24px;border-radius:12px}.overview-card:hover{border-color:var(--blue)}.overview-card>span{color:#4bb6ff}.overview-card p{color:#afbdc9}
.service-grid article{border:1px solid #36556c;border-top:2px solid #008eff;border-radius:14px;padding:27px;background:linear-gradient(145deg,#0e1a23,#070c11)}.service-grid{grid-template-columns:1fr 1fr 1fr}.service-aside{background:linear-gradient(150deg,#102638,#08131e);border:1px solid #008eff88;border-radius:14px}.service-aside p:not(.eyebrow){color:#bfccd6}.service-grid li:before{color:#009eff}.number{color:#70c9ff}.service-aside .text-link{color:#48e887}.service-grid article ul{margin-bottom:10px}
.comparison-section{background:#081119;border-top:1px solid #1f3648;border-bottom:1px solid #1f3648}.compare{border:1px solid #697a89;border-radius:12px}.placeholder-note{color:#b4c5d4;border-color:#008eff}.compare-title span{color:#b0c0ce}.image-label{background:#03090de6;border:1px solid #627889}.image-label.last{border-color:#008eff;color:#60c6ff}
.local-section{background:radial-gradient(ellipse at bottom right,#073052 0%,#08141f 45%,#060d13 85%);border-top:1px solid #008eff99;border-bottom:1px solid #1b3448}.towns span{border-color:#275575;color:#d3e8fa}.about{border-color:#245679}.reviews{border-color:#263d4f}.faqs details{border-color:#294252}.faqs summary{font-size:16px}.faqs summary:after{color:#19a9ff}.faqs details p{color:#bcc9d3}.steps li{border-color:#087fbd}.steps span{color:#40baff}.steps p{color:#b5c1cc}.steps h3{color:white}.contact-section{background:radial-gradient(ellipse at 25% 100%,#004d7e66,transparent 65%),linear-gradient(135deg,#0b1f2d,#03090e);border-top:1px solid #00a4ff;border-bottom:1px solid #008eff55}.contact-section .eyebrow{color:#69c9ff}.contact-section h2,.contact-section h1{text-shadow:0 2px 12px #0003}.contact-section p:not(.eyebrow){color:#c5d6e2}.contact-details{color:#adc6d8}.page-next{border-color:#1c3a50}.breadcrumb{color:#aec0cf}.breadcrumb a{color:#57b8ff}footer{border-top:1px solid #1c2d3a}footer p{color:#a3b3bf}.footer-links a:hover{color:#4bb7ff}.mobile-cta{background:#050b11f5;border-color:#244658}.menu{background:#0b1721;border-color:#3b5264;color:white}.skip{background:#0b1721;color:white}dialog{background:#0a1620;color:#f4f8fc;border:1px solid #2e739f}dialog .close{color:white}dialog p{color:#becbd5}.legal-page>p:not(.eyebrow){color:#c4d2dd}
@media(max-width:1320px){.hero-image{right:-40px;width:85%}.nav{gap:18px}.nav nav{gap:14px}.logo{font-size:31px}.brand-mark{width:44px;height:44px}}
@media(max-width:1000px){.hero h1{font-size:60px}.hero-copy{width:82%}.price-tag{right:15px;bottom:55px;padding:15px 20px}.price-tag strong{font-size:52px}.package-card{padding:28px 19px 21px}.package-grid{gap:17px}.service-grid{grid-template-columns:1fr 1fr}.service-aside{grid-column:1/-1}}
@media(max-width:800px){.nav{height:82px}.nav nav{top:82px;background:#08121c;border-bottom:1px solid #275071}.hero{min-height:710px;display:block;padding:285px 0 40px}.hero-image{top:0;right:-20px;width:calc(100% + 40px);height:100%;overflow:hidden}.hero-image img{height:440px;object-position:center 40%;filter:brightness(.73) saturate(.6)}.hero-image:after{background:linear-gradient(0deg,#050a0e 28%,#050a0ee6 48%,transparent 85%)}.hero-image figcaption{top:12px;bottom:auto;right:13px;font-size:8px}.hero-copy{width:100%;padding:0}.hero h1{font-size:clamp(40px,8.5vw,61px);letter-spacing:-1.8px;max-width:100%}.hero .eyebrow{margin-bottom:17px;font-size:10px;letter-spacing:2px}.hero .lead{font-size:20px;margin-top:19px}.hero .muted{font-size:14px}.price-tag{top:47px;bottom:auto;right:28px;padding:12px 19px;border-radius:12px;transform:rotate(-4deg)}.price-tag strong{font-size:44px}.price-tag span{font-size:10px}.hero .actions{gap:15px}.hero-slogan{font-size:10px!important;letter-spacing:1.7px}.package-grid{grid-template-columns:1fr;max-width:520px;margin:40px auto 0;gap:35px}.package-card{padding:28px}.package-card ul{margin-top:20px;margin-bottom:24px}.package-card li{font-size:15px}.package-card h3{width:75%}.home-packages .section-heading{text-align:left}.home-packages .section-heading p{letter-spacing:1.7px;font-size:10px}.section{padding-top:52px;padding-bottom:52px}.benefits strong{font-size:12px}.benefits p span{font-size:11px}.about{border-color:#245679}.overview-grid{gap:16px}.overview-card{padding:21px}.service-grid{grid-template-columns:1fr}.service-aside{grid-column:auto}.subpage h1{overflow-wrap:normal}.contact-section .button.white{background:#25d366;color:#062f19}}
@media(max-width:440px){.hero h1{font-size:41px}.hero .actions .button{width:100%}.hero .actions{gap:8px}.hero .micro{font-size:11px}.hero{padding-top:270px}.logo{font-size:29px}.brand-mark{width:42px;height:42px}.logo .brand-caption{font-size:5.5px;letter-spacing:1px}.package-card{padding:28px 23px}.hero .lead{font-size:19px}.benefits{gap:10px}.overview-card h3{font-size:22px}}
@media(max-width:360px){.hero h1{font-size:35px;letter-spacing:-1.5px}.hero .lead{font-size:16px}.hero .eyebrow{font-size:9px;letter-spacing:1.5px}.hero .muted br{display:none}.hero-slogan{letter-spacing:1px}.logo{font-size:26px}.brand-mark{width:35px;height:35px}.nav{gap:10px}.logo .brand-caption{font-size:5px}.package-card{padding:27px 20px}}
/* Mobile-first refinements: comfortable reading and touch targets. */
@media(max-width:800px){
 html{scroll-padding-top:95px;scroll-padding-bottom:100px}
 body{padding-bottom:calc(78px + env(safe-area-inset-bottom));font-size:16px}
 .nav{height:74px}.nav nav{top:74px;max-height:calc(100dvh - 160px);overflow-y:auto;overscroll-behavior:contain}
 .nav nav a{font-size:16px;min-height:48px;padding:12px}
 .menu{min-height:48px;min-width:76px}
 .hero{min-height:0;padding-top:210px;padding-bottom:30px}
 .hero .eyebrow{margin-bottom:13px}.hero .lead{margin-top:17px}
 .hero .muted{font-size:16px;line-height:1.55}.hero .actions{margin-top:23px}
 .hero-image img{height:390px}.hero-image:after{background:linear-gradient(0deg,#050a0e 20%,#050a0eed 45%,transparent 88%)}
 .hero-image figcaption{font-size:10px}.price-tag{top:40px}.hero .micro{font-size:12px}
 .button,.package-card .button{min-height:52px;font-size:16px}
 .text-link{min-height:48px;font-size:15px;line-height:1.4}
 .benefits{padding:20px 0}.benefits strong{font-size:13px;line-height:1.4}
 .section{padding-top:40px;padding-bottom:40px}.section-heading{margin-bottom:28px}
 .package-grid{margin-top:34px;gap:30px}.package-card{padding:25px 24px}.package-card li{font-size:16px}
 .package-note{font-size:14px;line-height:1.65}.package-card ul{margin-bottom:22px}
 .overview-card p,.steps p,.faqs details p,.service-grid li,.service-aside p:not(.eyebrow),.local-section p:not(.eyebrow),.reviews>p{font-size:16px;line-height:1.6}
 .overview-card>span{font-size:14px}.overview-grid{gap:14px}
 .towns span{font-size:14px}.faqs summary{min-height:56px;font-size:17px;padding-top:18px;padding-bottom:18px}
 .placeholder-note{font-size:14px}.contact-details{font-size:14px;overflow-wrap:anywhere}
 .contact-section p:not(.eyebrow){font-size:16px}.breadcrumb{font-size:14px;align-items:center;padding-top:12px}.breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
 .footer-links{gap:6px 20px}.footer-links a,.footer-links button{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
 footer{padding-bottom:28px}footer p{font-size:13px}.mobile-cta{padding:10px 20px calc(10px + env(safe-area-inset-bottom))}
 dialog{max-height:calc(100dvh - 30px);overflow-y:auto}dialog p{font-size:16px}.compare input{min-height:48px}
}
@media(max-width:440px){.hero{padding-top:185px}.hero h1{font-size:40px}.hero .lead{font-size:19px}.overview-grid{grid-template-columns:1fr}}
@media(max-width:360px){.hero h1{font-size:35px}.hero .lead{font-size:17px}.package-card{padding:25px 20px}.hero{padding-top:175px}}
@media(max-height:500px) and (orientation:landscape){header{position:relative}.nav nav{max-height:65dvh}.mobile-cta{position:static}body{padding-bottom:0}.hero{padding-top:60px}.price-tag{display:none}}
/* Display each supplied photo pair as two layers without altering the originals. */
.photo-compare .photo-layer{position:absolute;inset:0;overflow:hidden}
.photo-compare .photo-layer img{width:var(--photo-width);max-width:none;height:100%;object-fit:fill;top:0;bottom:auto}
.photo-compare .before img{left:0;right:auto}
.photo-compare .after img{right:0;left:auto}
.photo-compare .divider{z-index:1}.photo-compare .image-label{z-index:2}
.comparison-grid{align-items:start}
@media(max-width:440px){.compare-title{gap:12px}.compare-title span{font-size:9px;letter-spacing:.5px}}
/* Consistent portrait frames, stacked on every screen size. */
.comparison-grid{grid-template-columns:minmax(0,1fr);max-width:560px;margin-left:auto;margin-right:auto;gap:40px}
.photo-compare .photo-layer img{height:auto;top:50%;bottom:auto;transform:translateY(-50%)}
@media(max-width:800px){.comparison-grid{gap:30px}}
/* Package-led inquiries: optional extras belong to the selected package. */
.package-extra{display:flex;align-items:flex-start;gap:12px;padding:16px 12px;margin:0 0 18px;border:1px solid #355065;border-radius:9px;background:#0b1923;min-height:82px;font-size:14px;line-height:1.45;cursor:pointer}
.package-extra:has(input:checked){border-color:#25d366;background:#0b261b}
.package-extra input{width:22px;height:22px;flex:0 0 22px;margin:2px 0 0;accent-color:#25d366;cursor:pointer}
.package-extra small{display:block;font-size:12px;color:#b6c7d3;margin-top:5px}
.package-extra.included{cursor:default;border-color:#24653f}.package-extra.included>span:first-child{color:#45e587;font-size:22px;line-height:1.1}
.package-action-hint{font-size:11px;text-align:center;color:#adc0cd;margin-top:10px!important;line-height:1.4}
.contact-details a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #396984;border-radius:7px;padding:10px 18px;font-size:16px;color:#eef7ff}
@media(max-width:800px){body{padding-bottom:0}html{scroll-padding-bottom:20px}.package-extra{font-size:16px;min-height:88px}.package-extra small{font-size:13px}.package-action-hint{font-size:12px}footer{padding-bottom:30px}}

/* Compact comparison keeps all three packages visible on phones. */
.package-comparison{border:1px solid #30434e;border-radius:16px;overflow:hidden;background:#091117}
.package-comparison table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px}
.package-comparison caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.package-comparison th,.package-comparison td{padding:17px 12px;border-bottom:1px solid #253640;text-align:center;vertical-align:middle}
.package-comparison th:first-child{width:46%;text-align:left}
.package-comparison thead th{background:#0c2130;font-weight:800;color:#fff}
.package-comparison tbody th{font-weight:500;line-height:1.45}
.package-comparison tbody tr:last-child>*{border-bottom:0}
.package-comparison tbody tr:nth-child(even){background:#ffffff03}
.package-comparison .yes{color:#00a8ff;font-size:25px;font-weight:800}
.package-comparison .no{color:#8b9aa5;font-size:25px}
.comparison-extra{margin-top:20px;padding:22px;border:1px solid #008eff;border-radius:16px;background:#082030;display:flex;align-items:center;justify-content:space-between;gap:20px}
.comparison-extra h3{margin:0;font-size:20px}.comparison-extra p{margin:0}.comparison-extra .eyebrow{margin-bottom:8px}.comparison-extra strong{color:#00a8ff;font-size:24px}.comparison-extra span{color:#bdcad3}
@media(max-width:600px){.package-comparison table{font-size:12px}.package-comparison th,.package-comparison td{padding:12px 4px}.package-comparison th:first-child{width:43%;padding-left:10px}.package-comparison thead th{font-size:10px;letter-spacing:-.2px}.package-comparison .yes,.package-comparison .no{font-size:23px}.comparison-extra{align-items:flex-start;flex-direction:column;gap:12px;padding:18px}.comparison-extra h3{font-size:18px}}

/* Introduction notice reuses the existing blue information panel. */
.introduction-offer{margin-top:0;border-color:#008eff66;background:#0b1923}
.introduction-offer h2{font-size:20px;line-height:1.3;letter-spacing:0;margin:0 0 10px;color:#f4f8fc}
.introduction-offer p{font-size:16px;line-height:1.6;color:#c5d2dc}
.introduction-offer .offer-duration{font-size:14px;color:#aebcc9;margin-top:6px}

/* Scroll story: native document scrolling, with readable static fallback. */
.journey-intro{padding-top:55px;padding-bottom:45px}.journey-intro h1{font-size:clamp(42px,6vw,76px);letter-spacing:-2px}.journey-intro>p:not(.eyebrow){color:#afc1cf;line-height:1.7;margin-top:20px}.journey-scroll{display:inline-flex;gap:24px;align-items:center;margin-top:22px;padding:14px 0;color:#69caff}.journey-scroll span{font-size:26px}
.journey-step{position:relative;min-height:85svh;border-top:1px solid #173346;background:#050a0e;scroll-margin-top:90px}.journey-stage{min-height:85svh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#08355388,transparent 65%)}.journey-step:nth-child(even) .journey-stage{background:radial-gradient(ellipse at 70% 45%,#0d253e,transparent 70%)}
.journey-inner{position:relative;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:30px;padding-top:55px;padding-bottom:75px}.journey-art{grid-column:2;grid-row:1;opacity:.72;transform:translateY(var(--art-offset,0px));will-change:transform}.journey-art svg{display:block;width:100%;height:auto;filter:drop-shadow(0 10px 35px #008eff15)}.journey-copy{grid-column:1;grid-row:1;position:relative;z-index:1;transform:translateY(var(--copy-offset,0px));opacity:var(--copy-opacity,1)}.journey-copy .eyebrow{color:#7fb9db;letter-spacing:2px;font-size:12px}.journey-copy .eyebrow span{color:#00a5ff;font-size:26px;margin:0 6px}.journey-copy h3{font-size:clamp(38px,4.5vw,64px);line-height:1.08;letter-spacing:-1.7px;margin:18px 0 22px;color:#fff}.journey-tagline{font-size:21px;color:#79ceff;margin-bottom:16px}.journey-description{font-size:18px;color:#c2cfd9;line-height:1.75;max-width:480px}.journey-detail{border-top:1px solid #26465c;padding-top:18px;margin-top:24px;color:#7e9db2;font-size:12px;letter-spacing:.5px}.journey-meter{position:absolute;bottom:32px;left:0;display:flex;gap:8px}.journey-meter i{width:25px;height:3px;background:#263c4d;border-radius:3px}.journey-meter .current{width:55px;background:#009eff;box-shadow:0 0 16px #009eff55}
@media(min-width:801px){.journey-enhanced .journey-step{min-height:110svh}.journey-enhanced .journey-stage{position:sticky;top:80px;min-height:calc(100svh - 80px)}}
@media(max-width:800px){.journey-intro{padding-top:30px;padding-bottom:35px}.journey-intro h1{font-size:46px}.journey-inner{display:flex;flex-direction:column;gap:0;padding-top:20px;padding-bottom:65px}.journey-art{width:min(100%,380px);height:245px;opacity:.65;align-self:center}.journey-art svg{height:100%;width:100%;object-fit:contain}.journey-copy{width:100%;margin-top:-10px}.journey-copy h3{font-size:36px;letter-spacing:-1px;margin:12px 0 16px;max-width:100%}.journey-tagline{font-size:19px;margin-bottom:12px}.journey-description{font-size:16px;line-height:1.65}.journey-copy .eyebrow{font-size:10px}.journey-copy .eyebrow span{font-size:23px}.journey-detail{font-size:12px;margin-top:20px;padding-top:16px}.journey-step,.journey-stage{min-height:calc(100svh - 74px)}.journey-meter{bottom:25px}.journey-stage{background:radial-gradient(ellipse at 50% 15%,#073553aa,transparent 65%)}}
@media(prefers-reduced-motion:reduce){.journey-copy,.journey-art{transform:none!important;opacity:1!important;will-change:auto}.journey-enhanced .journey-stage{position:static}.journey-enhanced .journey-step{min-height:0}}

/* Soft photographic backgrounds for the five process scenes. */
.journey-stage{position:relative;isolation:isolate}.journey-inner{position:static;min-height:inherit;grid-template-columns:1fr 1fr}.journey-photo{position:absolute;inset:-18px;width:auto;height:auto;z-index:-2;opacity:1;transform:none;will-change:auto}.journey-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:blur(5px) brightness(.58) saturate(.65);transform:scale(1.035)}.journey-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050a0eea 0%,#050a0e99 40%,#050a0e25 100%),linear-gradient(0deg,#050a0eaa,transparent 70%)}.journey-copy{text-shadow:0 2px 20px #0008}.journey-meter{left:max(20px,calc((100% - 1240px)/2));z-index:1}.journey-intro .journey-image-note{font-size:12px;color:#8096a6;margin-top:12px}
@media(max-width:800px){.journey-inner{justify-content:flex-end;padding-top:240px;padding-bottom:85px}.journey-photo{width:auto;height:auto;align-self:auto}.journey-photo img{object-position:50% center;filter:blur(4px) brightness(.62) saturate(.65)}.journey-photo:after{background:linear-gradient(0deg,#050a0ef5 0%,#050a0ebd 50%,#050a0e25 100%)}.journey-copy{margin-top:0}.journey-meter{bottom:35px}.journey-step,.journey-stage{min-height:max(680px,calc(100svh - 74px))}}

/* Gentler photographic focus and soft scene boundaries. */
.journey-photo img{filter:blur(2px) brightness(.62) saturate(.7)}
.journey-step{border-top:0}.journey-stage{background:#050a0e!important}
.journey-photo{mask-image:linear-gradient(to bottom,transparent 0%,#000 15%,#000 83%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 15%,#000 83%,transparent 100%)}
.journey-copy{transition:transform .3s ease-out,opacity .3s ease-out;will-change:transform,opacity}
@media(max-width:800px){.journey-photo img{filter:blur(1.8px) brightness(.65) saturate(.7)}}
@media(prefers-reduced-motion:reduce){.journey-copy{transition:none;will-change:auto}}

/* Longer regional brand stays legible in the mobile navigation. */
.logo .brand-type{white-space:nowrap}
@media(max-width:800px){.logo{font-size:25px}.brand-mark{width:36px;height:36px}.logo .brand-caption{font-size:5px;letter-spacing:.7px}}
@media(max-width:360px){.logo{font-size:21px}.brand-mark{width:30px;height:30px}.nav{gap:8px}.logo .brand-caption{font-size:4.5px}}

/* Guided quote selection, one continuous mobile-first page. */
.quote-builder{margin-top:45px}.quote-step{border:0;border-bottom:1px solid #263e50;padding:0 0 40px;margin:0 0 40px;min-width:0}.quote-step legend{font-size:24px;font-weight:750;padding:0 0 12px;line-height:1.3}.quote-step legend>span{color:#00a5ff;font-size:16px;margin-right:12px}.quote-help{font-size:15px;line-height:1.6;color:#aebfcd;margin:8px 0 18px}.quote-package{cursor:pointer}.quote-package input{position:absolute;top:22px;left:18px;width:22px;height:22px;accent-color:#008eff}.quote-package h3{font-size:25px}.quote-package:has(input:checked){border-color:#00b5ff;box-shadow:0 0 0 2px #00a5ff;background:#0b2638}.quote-package:has(input:focus-visible){outline:3px solid white;outline-offset:4px}.quote-select-label{display:block;padding:14px;text-align:center;border:1px solid #34749c;border-radius:8px;font-weight:700}.quote-package:has(input:checked) .quote-select-label{background:#008eff;color:white}.quote-option{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid #365367;border-radius:12px;background:#0b1923;cursor:pointer;min-height:60px}.quote-option input{width:22px;height:22px;flex:0 0 22px;accent-color:#008eff}.quote-option:has(input:checked){border-color:#00a5ff;background:#102a3d}.quote-option:has(input:focus-visible){outline:2px solid white}.quote-option strong{display:block;color:#59c3ff;margin-top:5px}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quote-field{display:flex;flex-direction:column;gap:8px;margin-top:22px;font-size:16px}.quote-field>span{color:#93aaba;font-size:13px}.quote-field input{box-sizing:border-box;width:100%;min-height:54px;border:1px solid #365367;border-radius:9px;padding:14px;background:#0a1721;color:#fff;font:inherit}.quote-field input:focus{outline:2px solid #00a5ff;outline-offset:2px}.quote-field input::placeholder{color:#92a8b8}.location-fields{display:grid;grid-template-columns:1fr 2fr;gap:18px}.quote-summary{border:1px solid #008eff88;background:#0a1b28;padding:30px;border-radius:18px;max-width:740px;margin:0 auto}.quote-summary h3{font-size:28px;margin:12px 0 24px}.quote-summary dl{margin:20px 0}.quote-summary dl>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #294052}.quote-summary dt{color:#a9bfce}.quote-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}.quote-total{font-size:48px;font-weight:800;margin:24px 0}.quote-total>span{font-size:20px;font-weight:400}.quote-disclaimer{font-size:14px;color:#aec1cf;line-height:1.7;margin:18px 0 25px}.quote-submit{background:#25d366;color:#062f19;width:100%;border:0;cursor:pointer}.quote-summary [hidden]{display:none}.quote-builder .package-grid{margin-top:30px}
@media(max-width:800px){.quote-step legend{font-size:22px}.quote-builder .package-grid{max-width:none;gap:28px}.vehicle-grid{grid-template-columns:1fr 1fr}.quote-option{padding:14px;font-size:15px}.quote-summary{padding:22px}.quote-summary h3{font-size:25px}.location-fields{grid-template-columns:1fr}.quote-total{font-size:42px}}
@media(max-width:360px){.vehicle-grid{grid-template-columns:1fr}.quote-summary{padding:18px}.quote-summary dl>div{font-size:14px}.quote-submit{font-size:14px}}

.vehicle-detail{display:block;font-size:13px;line-height:1.5;color:#a9bfce;margin-top:7px}@media(max-width:800px){.vehicle-grid{grid-template-columns:1fr}}

/* Keep location labels and input edges aligned; postal code leads. */
.location-fields{align-items:end;grid-template-columns:minmax(125px,1fr) minmax(0,2fr)}
.location-fields .quote-field{min-width:0}.location-fields .location-label{display:block;font-size:16px;color:#f4f8fc;line-height:24px;white-space:nowrap}.location-label small{font-size:12px;color:#93aaba;margin-left:4px}
@media(max-width:600px){.location-fields{grid-template-columns:minmax(110px,1fr) minmax(0,1.3fr);gap:12px}.location-fields .location-label{font-size:14px}.location-label small{font-size:11px;margin-left:2px}.location-fields input{padding:12px 10px}}

.outside-option{margin-top:22px}.quote-help[hidden]{display:none}#summary-outside{border-left:3px solid #008eff;padding:12px 15px;background:#102a3d;color:#e2eff8}

.unavailable-services{margin-top:64px;padding-top:36px;border-top:1px solid #30414c}.unavailable-services h3{font-size:clamp(24px,4vw,34px);margin:12px 0}.unavailable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}.unavailable-card{padding:24px;border:1px solid #30414c;border-radius:18px;background:#0b141a;display:flex;flex-direction:column;gap:12px}.unavailable-card h4{font-size:20px;margin:0}.unavailable-card p{color:#b6c4cd;margin:0 0 8px;line-height:1.6}.unavailable-status{margin-top:auto;color:#bdcbd5;font-size:13px;border-top:1px solid #30414c;padding-top:12px;line-height:1.5}@media(max-width:850px){.unavailable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.unavailable-grid{grid-template-columns:1fr}.unavailable-services{margin-top:42px}.unavailable-card{padding:20px}}

.travel-payment-note{margin:24px 0;padding:20px;border:1px solid #236084;border-left:3px solid #008eff;border-radius:12px;background:#0b1b27}.travel-payment-note h4{margin:0 0 10px;font-size:18px;line-height:1.4}.travel-payment-note p{margin:0;color:#c5d5df;font-size:14px;line-height:1.65}.travel-payment-note p+p{margin-top:10px}
