/* Shared typography across every page, form, menu and dialog. */
:root{
 --font-site:"Be Vietnam Pro","Noto Sans","Noto Sans KR","Noto Sans JP","Noto Sans SC","Noto Sans Thai","Noto Sans Devanagari",Arial,sans-serif;
 --font-ui:var(--font-site);--font-heading:var(--font-site);--font-sans:var(--font-site);--default-font-family:var(--font-site);
 --font-korean:var(--font-site);--font-chinese:var(--font-site);--font-russian:var(--font-site);--font-mono:var(--font-site);
 --sc-header-height:96px;
}
html,body,body *,body *::before,body *::after,input::placeholder,textarea::placeholder{font-family:var(--font-site)!important}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Solid white shared navigation surface; the logo has no separate frame. */
main>.site-header{background:transparent;border:0;box-shadow:none;backdrop-filter:none}
main>.site-header .header-inner{
 height:76px;min-height:76px;width:min(1480px,calc(100% - 48px));margin:10px auto;padding:0 20px;gap:20px;align-items:center;
 background:#fff;border:1px solid #e0e7eb;border-radius:22px;
 box-shadow:0 7px 26px #173c4b0c;backdrop-filter:none;-webkit-backdrop-filter:none;
}
.site-header .brand{
 display:flex;align-items:center;justify-content:center;flex:0 0 190px;height:54px;padding:0 12px 0 0;
 background:transparent;border:0;border-radius:0;box-shadow:none;
}
.site-header .brand img{width:174px;height:42px;object-fit:contain}
.header-navigation{
 display:flex;align-items:center;justify-content:space-between;gap:18px;flex:1;min-width:0;height:54px;padding:0;
 border:0;border-radius:0;box-shadow:none;background:transparent;
}
.site-header .desktop-nav{margin:0;padding:0;gap:3px;background:none;border:0;border-radius:0;flex:1;justify-content:center;align-items:center;white-space:nowrap}
.site-header .desktop-nav a{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:12px;background:transparent;color:#46626a;font-size:clamp(13px,.98vw,14px);line-height:1.5;font-weight:600;box-shadow:none;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}
.site-header .desktop-nav a::after{content:none;display:none}
.site-header .desktop-nav a.current{background:#fff;color:#116b75;border-color:#d3e7de;box-shadow:0 3px 9px #26574a0a}
.site-header .desktop-nav a:focus-visible{outline:2px solid #123142;outline-offset:2px;background:#fff;border-color:#123142}
.site-header .header-actions{display:flex;gap:9px;align-items:center;flex-shrink:0;margin:0;padding-left:14px;border-left:1px solid #d9e7e1}
.site-header .locale-trigger{height:44px;padding:0 11px;gap:7px;border-radius:12px;border:1px solid #d6e5de;background:#ffffffa6;color:#3d5d65}
.site-header .locale-trigger strong{font-size:11px;font-weight:600}.site-header .locale-trigger img{width:22px;height:16px;border:1px solid #e1e9e8;border-radius:3px}
.site-header .supercar-cart-button{height:44px;min-height:44px;padding:0 15px;gap:9px;border-radius:12px;background:#fff!important;color:#245b64!important;border-color:#d6e5de!important;box-shadow:0 3px 9px #143f4c08;transition:background .18s,color .18s,border-color .18s,box-shadow .18s,transform .18s}
.site-header .supercar-cart-label{font-size:12px;font-weight:600}
.site-header .supercar-cart-button svg{width:16px;height:16px;stroke-width:1.7}
.site-header .supercar-cart-count{display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border-radius:50%;background:#ceeee5;color:#1c5e59;font-size:9px;font-weight:700}
.site-header .site-menu-toggle{width:38px;height:42px;border:1px solid #dce8e8!important;border-radius:10px;background:#f3f8f6!important;color:#1d5e68!important}
.site-menu-backdrop{background:#0a35456b;backdrop-filter:blur(6px)}
.site-mobile-menu{top:calc(var(--sc-header-height) - 2px);left:auto;right:16px;width:min(410px,calc(100vw - 32px));padding:14px;border:1px solid #dbe9e6;border-radius:18px;background:#f9fcfa;gap:6px;grid-template-columns:1fr;box-shadow:0 22px 65px #0c3a4b25}
.site-mobile-menu a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px;border:1px solid transparent;border-radius:12px;background:transparent;color:#365966;font-size:14px;line-height:1.6;font-weight:550}
.site-mobile-menu a:last-child{border-color:transparent}.site-mobile-menu a::after{content:"↗";color:#1498a0;font-size:20px}.site-mobile-menu a.current{background:#eaf5ef;color:#116b75;border-color:#d3e7de}
@media(hover:hover){
 .site-header .desktop-nav a:hover{background:#fff;color:#155d66;border-color:#a8ccc0;box-shadow:0 0 0 3px #a8ccc014;transform:none}
 .site-header .supercar-cart-button:hover{background:#fff!important;color:#155d66!important;border-color:#a8ccc0!important;transform:translateY(-1px);box-shadow:0 0 0 3px #a8ccc014}
 .site-header .locale-trigger:hover{background:#fff;border-color:#a8ccc0}.site-header .site-menu-toggle:hover{background:#e8f2ee!important}
 .site-mobile-menu a:hover{color:#155d66;background:#fff;border-color:#a8ccc0;box-shadow:0 0 0 3px #a8ccc014}
}

/* Panoramic photograph with an overlapping, horizontal request card. */
.promotion-section.consultation-section--studio{padding:68px 28px 80px;background:#f0f5f3;color:#153e48;overflow:hidden}
.consultation-section--studio .consultation-shell{display:block;width:min(1400px,100%);margin:auto}
.studio-panorama{position:relative;isolation:isolate;min-height:560px;border-radius:28px;overflow:hidden;padding:48px 52px 115px;display:flex;align-items:center;background:#6ea6c4}
.studio-cover{position:absolute;z-index:-2;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center bottom;transition:transform 1.2s cubic-bezier(.2,.65,.2,1)}
.studio-panorama::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#072b3ded,#0c354ac2 29%,#133b4e50 61%,#0a344210),linear-gradient(0deg,#0b34455c,transparent 60%)}
.studio-panorama-copy{max-width:580px;position:relative}
.studio-eyebrow{display:flex;align-items:center;gap:10px;color:#cbe5e7;font-size:9px;line-height:1.7;letter-spacing:.13em;font-weight:500;margin:0 0 23px}
.studio-eyebrow>span{width:20px;height:1px;background:#b9ebe0;flex-shrink:0}
.studio-panorama h2{font-size:clamp(38px,4.3vw,65px);line-height:1.13;letter-spacing:-.065em;font-weight:650;color:#fff;margin:0 0 20px}
.studio-panorama h2 em{font-style:normal;font-weight:500;color:#c5efe2}
.studio-intro{max-width:370px;font-size:12px;line-height:1.9;color:#d6e7e9;margin:0}
.studio-fleet-link{display:inline-flex;align-items:center;gap:15px;margin-top:26px;color:#fff;font-size:11px;font-weight:550;line-height:1.6}
.studio-fleet-link>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid #d1e7e64d;color:#d5f5eb;font-size:20px;line-height:1;transition:background .2s,transform .2s}
.consultation-section--studio .studio-ticket{
 position:relative;z-index:1;width:calc(100% - 96px);margin:-74px auto 0;padding:28px 34px 30px;
 border:1px solid #e0e9e5;border-radius:20px;background:#fff;box-shadow:0 18px 42px #0b394816;
}
.studio-ticket-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:24px}
.studio-ticket-kicker{font-size:8px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;line-height:1.8;color:#6f8c88;margin:0 0 6px}
.consultation-section--studio .studio-ticket h3{font-size:25px;font-weight:600;line-height:1.4;letter-spacing:-.045em;color:#153f4b;margin:0}
.studio-ticket-help{max-width:310px;font-size:11px;line-height:1.8;color:#7c8f89;margin:0}
.consultation-section--studio .consultation-form.promotion-form{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:22px 26px;max-width:none;margin:0}
.consultation-section--studio .consultation-form.promotion-form>label{display:flex;flex-direction:column;gap:6px;grid-column:span 4;min-width:0;margin:0}
.consultation-section--studio .consultation-form.promotion-form>label>span{font-size:10px;font-weight:500;line-height:1.7;color:#53736e}
.consultation-section--studio .consultation-form.promotion-form input:not([type=hidden]),.consultation-section--studio .consultation-form.promotion-form textarea{
 display:block;width:100%;max-width:100%;min-width:0;border:0;border-bottom:1px solid #cbded8;border-radius:0;background:transparent;
 padding:8px 0;box-shadow:none;color:#153f4b;font-size:13px;line-height:1.75;font-weight:400;transition:border-color .2s,box-shadow .2s;
}
.consultation-section--studio .consultation-form.promotion-form input:not([type=hidden]){height:40px}
.consultation-section--studio .consultation-form.promotion-form textarea{height:68px;min-height:68px;resize:vertical}
.consultation-section--studio .consultation-form.promotion-form input::placeholder,.consultation-section--studio .consultation-form.promotion-form textarea::placeholder{font-size:12px;color:#9aa9a3;opacity:1}
.consultation-section--studio .consultation-form.promotion-form input:focus,.consultation-section--studio .consultation-form.promotion-form textarea:focus{outline:0;border-bottom-color:#138d92;box-shadow:0 1px 0 #138d92}
.consultation-section--studio .consultation-form.promotion-form>.consultation-message{grid-column:span 8}
.consultation-service-choices{grid-column:1/-1;display:block;min-width:0;padding:0 0 20px;margin:0;border:0;border-bottom:1px dashed #d2e1dc}
.consultation-service-choices legend{float:none;margin:0 0 11px;padding:0;max-width:none;font-size:11px;font-weight:550;line-height:1.8;color:#466b68}
.consultation-service-choices>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;flex:1;min-width:0}
.consultation-section--studio .consultation-service-choices button{
 display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;min-height:45px;padding:9px 12px;
 border:1px solid #dce8e2!important;border-radius:9px;background:#f9fbf9!important;color:#617e75!important;
 font-size:11px;font-weight:500;line-height:1.6;box-shadow:none!important;transform:none!important;cursor:pointer;
 transition:border-color .18s,background .18s,color .18s;
}
.consultation-service-choice svg{width:19px;height:19px;flex-shrink:0}
.consultation-section--studio .consultation-service-choices button.selected{background:#e4f3ed!important;border-color:#8ab9a6!important;color:#1b675c!important;box-shadow:inset 0 0 0 .5px #8ab9a6!important}
.consultation-section--studio .consultation-form.promotion-form>.consultation-submit{
 grid-column:span 4;align-self:end;display:flex;align-items:center;justify-content:space-between;gap:20px;
 height:68px;min-height:68px;padding:16px 22px;margin:0;border:1px solid #143f4b!important;border-radius:12px;
 background:#143f4b!important;color:#fff!important;font-size:12px;font-weight:550;line-height:1.65;text-align:left;box-shadow:none;
}
.consultation-submit>span:last-child{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;background:#ffffff12;border-radius:50%;font-size:22px}
@media(hover:hover){
 .studio-panorama:hover .studio-cover{transform:scale(1.025)}.studio-fleet-link:hover>span{background:#ffffff1c;transform:rotate(10deg)}
 .consultation-section--studio .consultation-service-choices button:hover{background:#edf7f2!important;border-color:#8ab9a6!important;color:#1b675c!important}
 .consultation-section--studio .consultation-form.promotion-form>.consultation-submit:hover{background:#1b6170!important;border-color:#1b6170!important;transform:translateY(-1px);box-shadow:0 7px 22px #143f4b15}
}
@media(min-width:1280px){.site-header .desktop-nav{display:flex!important}.site-header .site-menu-toggle{display:none}}
@media(max-width:1279px){
 :root{--sc-header-height:86px}
 main>.site-header .header-inner{height:66px;min-height:66px;width:calc(100% - 32px);margin:10px auto;padding:0 14px;gap:12px;border-radius:18px}
 .site-header .brand{flex-basis:174px;height:48px}.site-header .brand img{width:158px;height:38px}
 .header-navigation{height:48px;justify-content:flex-end;padding:0}
 .site-header .desktop-nav{display:none!important}.site-header .site-menu-toggle{display:flex}
 .site-header .header-actions{border:0;padding:0;margin-left:0}
 .studio-panorama{padding:42px 42px 105px;min-height:470px}
 .consultation-section--studio .studio-ticket{width:calc(100% - 64px);padding:26px}
 .consultation-service-choices{gap:18px}.consultation-service-choices legend{flex-basis:180px;max-width:180px}
 .consultation-section--studio .consultation-service-choices button{padding:9px 8px;gap:7px;font-size:10px}
}
@media(max-width:899px){
 .promotion-section.consultation-section--studio{padding:50px 22px 56px}
 .studio-panorama{min-height:440px;border-radius:23px;padding:34px 34px 100px}
 .studio-panorama h2{font-size:clamp(37px,6vw,52px)}.studio-panorama::before{background:linear-gradient(90deg,#072b3dec,#0c354abf 49%,#133b4e33 100%)}
 .studio-panorama-copy{max-width:470px}.studio-intro{max-width:330px}
 .consultation-section--studio .studio-ticket{width:calc(100% - 36px);padding:26px;margin-top:-64px;border-radius:18px}
 .studio-ticket-heading{align-items:flex-start;gap:24px}.studio-ticket-help{max-width:225px;font-size:10px}
 .consultation-section--studio .studio-ticket h3{font-size:23px}
 .consultation-service-choices{display:block}.consultation-service-choices legend{float:none;max-width:none;margin-bottom:11px}
 .consultation-service-choices>div{gap:8px}
 .consultation-section--studio .consultation-form.promotion-form{gap:21px 18px}
 .consultation-section--studio .consultation-form.promotion-form>label{grid-column:span 6}
 .consultation-section--studio .consultation-form.promotion-form>label:has(input[type=email]){grid-column:1/-1}
 .consultation-section--studio .consultation-form.promotion-form>.consultation-message{grid-column:span 8}
 .consultation-section--studio .consultation-form.promotion-form>.consultation-submit{grid-column:span 4;padding:14px;gap:10px;font-size:11px}
}
@media(max-width:599px){
 :root{--sc-header-height:76px}
 main>.site-header .header-inner{width:calc(100% - 20px);height:58px;min-height:58px;margin:9px auto;padding:0 10px;gap:8px;border-radius:16px}
 .site-header .brand{height:40px;flex-basis:132px;padding:0;background:transparent;border:0;border-radius:0}.site-header .brand img{width:122px;height:33px}
 .header-navigation{height:40px;padding:0;border-radius:0;gap:0}
 .site-header .header-actions{gap:6px}.site-header .locale-trigger{height:38px;padding:0 8px;gap:5px;border-radius:8px}.site-header .locale-trigger strong{font-size:9px}.site-header .locale-trigger img{width:21px;height:15px}.site-header .locale-trigger>b{display:none}
 .site-header .supercar-cart-button{height:38px;min-height:38px;padding:0 8px;gap:5px;border-radius:8px}.site-header .supercar-cart-label{display:none}.site-header .supercar-cart-count{min-width:16px;height:16px;padding:0 3px;font-size:8px}
 .site-header .site-menu-toggle{width:33px;height:38px;border-radius:8px}
 .promotion-section.consultation-section--studio{padding:36px 12px 44px}
 .studio-panorama{min-height:405px;border-radius:19px;padding:28px 24px 90px;align-items:flex-start}
 .studio-cover{object-position:62% center}.studio-panorama::before{background:linear-gradient(90deg,#072b3dee,#0c354ac4 58%,#133b4e60 100%)}
 .studio-eyebrow{font-size:8px;letter-spacing:.07em;margin-bottom:23px;gap:8px}.studio-eyebrow>span{width:13px}
 .studio-panorama h2{font-size:clamp(30px,8.3vw,44px);line-height:1.15;margin-bottom:18px}.studio-intro{font-size:11px;max-width:270px;line-height:1.9}.studio-fleet-link{margin-top:22px;font-size:10px}
 .consultation-section--studio .studio-ticket{width:calc(100% - 20px);margin-top:-54px;padding:23px 19px 25px;border-radius:15px}
 .studio-ticket-heading{display:block;margin-bottom:22px}.studio-ticket-kicker{font-size:8px;margin-bottom:7px}.consultation-section--studio .studio-ticket h3{font-size:23px;letter-spacing:-.04em}.studio-ticket-help{max-width:none;font-size:11px;margin-top:9px}
 .consultation-section--studio .consultation-form.promotion-form{grid-template-columns:minmax(0,1fr);gap:21px}
 .consultation-section--studio .consultation-form.promotion-form>label,.consultation-section--studio .consultation-form.promotion-form>.consultation-message,.consultation-section--studio .consultation-form.promotion-form>.consultation-submit{grid-column:1/-1}
 .consultation-section--studio .consultation-form.promotion-form>label>span{font-size:11px}
 .consultation-section--studio .consultation-form.promotion-form input:not([type=hidden]),.consultation-section--studio .consultation-form.promotion-form textarea{font-size:16px}.consultation-section--studio .consultation-form.promotion-form input:not([type=hidden]){height:44px}
 .consultation-service-choices{padding-bottom:20px}.consultation-service-choices legend{font-size:10px;line-height:1.8}
 .consultation-service-choices>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.consultation-section--studio .consultation-service-choices button{min-height:44px;font-size:11px;gap:9px;justify-content:flex-start;padding:9px 12px}
 .consultation-section--studio .consultation-form.promotion-form>.consultation-submit{height:54px;min-height:54px;padding:12px 17px;font-size:12px;border-radius:10px}
 .site-mobile-menu{right:10px;width:calc(100vw - 20px)}
}
@media(max-width:374px){
 .site-header .brand{flex-basis:112px;padding:0}.site-header .brand img{width:102px}.site-header .header-actions{gap:5px}
 .site-header .locale-trigger{padding:0 6px}.site-header .supercar-cart-button{padding:0 6px}.site-header .supercar-cart-button svg{width:14px}.site-header .site-menu-toggle{width:31px}.header-navigation{padding:0}
 .consultation-section--studio .studio-ticket{padding:22px 16px}.studio-panorama{padding-left:21px;padding-right:21px}
}
.consultation-section--studio .studio-support{display:flex;align-items:center;justify-content:space-between;gap:38px;padding:28px 34px}
.studio-support-copy{max-width:650px;min-width:0}
.studio-support-description{font-size:12px;line-height:1.85;color:#758c87;margin:10px 0 0}
.studio-support-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.studio-support-actions>a{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:13px 18px;border-radius:10px;font-size:11px;line-height:1.6;font-weight:600;text-align:center;text-decoration:none;transition:background .18s,border-color .18s,transform .18s}
.studio-support-actions>a>span{font-size:19px;line-height:1}
.studio-support-primary{background:#143f4b;color:#fff;border:1px solid #143f4b}
.studio-support-zalo{background:#fff;color:#246459;border:1px solid #cfe4db}
.studio-support-actions>a:focus-visible{outline:3px solid #6bc9bb;outline-offset:3px}
@media(hover:hover){.studio-support-primary:hover{background:#1b6170;border-color:#1b6170;transform:translateY(-1px)}.studio-support-zalo:hover{background:#fff;border-color:#a8cdbb;box-shadow:0 0 0 3px #a8cdbb14;transform:translateY(-1px)}}
@media(max-width:999px){.consultation-section--studio .studio-support{align-items:flex-start;flex-direction:column;gap:22px}.studio-support-copy{max-width:none}}
@media(max-width:599px){.consultation-section--studio .studio-support{padding:23px 20px;gap:20px}.studio-support-description{font-size:12px}.studio-support-actions{flex-direction:column;align-items:stretch;width:100%;gap:10px}.studio-support-actions>a{justify-content:space-between;min-height:48px;font-size:12px;padding:13px 16px}}
@media(prefers-reduced-motion:reduce){.studio-cover,.studio-fleet-link>span,.site-header .desktop-nav a,.studio-support-actions>a{transition:none!important;transform:none!important}}

/* Rebuilt coastal environment, single upper-left daylight, no additional CSS grading. */
main:not(.vehicle-detail-page)>.hero::before{background-image:url('supercar-coast-daylight-v50.webp');filter:none}

/* Bring the home panorama behind the floating navigation instead of reserving
   a white header strip. Keep the fleet at the left edge and the form below the
   header; the photograph retains its aspect ratio without stretching. */
main:not(.vehicle-detail-page):has(>.hero){padding-top:0}
@media(min-width:900px){
 main:not(.vehicle-detail-page)>.hero{padding-top:var(--sc-header-height)}
 main:not(.vehicle-detail-page)>.hero::before{background-position:left bottom}
 main:not(.vehicle-detail-page)>.hero .hero-inner{height:calc(50vw + 24px - var(--sc-header-height))}
 main:not(.vehicle-detail-page)>.hero .hero-brand{top:calc(var(--sc-header-height) - 8px);width:60%}
}
@media(max-width:899px){
 main:not(.vehicle-detail-page)>.hero::before{height:calc(var(--sc-header-height) + 62vw);background-position:left bottom;background-size:cover}
 main:not(.vehicle-detail-page)>.hero .hero-brand{top:calc(var(--sc-header-height) - 8px);width:78%}
 main:not(.vehicle-detail-page)>.hero .hero-inner{padding:calc(var(--sc-header-height) + 62vw + 12px) 0 24px!important}
}

/* More readable route figures within the existing equal-size cards. */
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>div>span{font-size:11px;line-height:1.35}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>div>strong{font-size:clamp(17px,1.35vw,20px);line-height:1.3}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics .booking-vat-note{font-size:11px;line-height:1.3}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>.booking-fare-metric>span{--metric-fit-max:11}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>.booking-fare-metric>strong{--metric-fit-max:19;font-size:19px}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>.booking-fare-metric>small{--metric-fit-max:11}
.hero .booking-card.is-expanded .booking-route-preview .booking-route-metrics>.booking-fare-metric>:is(span,strong,small){display:block;width:100%;min-width:0;max-width:100%;white-space:nowrap;overflow-wrap:normal;word-break:normal}
.site-header .supercar-cart-button:focus-visible{outline:2px solid #45a9a4;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.site-header .supercar-cart-button{transition:none!important;transform:none!important}}

/* Opt-in comparison only: the transparent fleet cutout is layered over the
   unchanged original panorama. Both 2:1 layers share the same cover geometry. */
.fleet-banner-preview main:not(.vehicle-detail-page)>.hero::before{background-image:url('coast-fleet-preview-v53.svg'),url('supercar-coast-daylight-v50.webp')}
