/*
Theme Name: Business Flight JP Landing Template Match v2.0
Theme URI: https://businessflightjp.com/
Author: Business Flight JP
Description: Static landing page theme for Business Flight JP.
Version: 2.0
Requires at least: 5.8
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: businessflightjp
*/
:root{--navy:#061a33;--navy2:#082447;--gold:#d7a11f;--gold2:#f0bd38;--text:#071b34;--muted:#64748b;--line:#e6ebf2;--green:#22c55e;--whats:#16a34a;--bg:#f8fafc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,Segoe UI,sans-serif;color:var(--text);background:#fff}a{text-decoration:none;color:inherit}.container{max-width:1180px;margin:0 auto;padding:0 24px}.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(90deg,#061a33,#082447);color:#fff;box-shadow:0 2px 18px rgba(0,0,0,.2)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;flex-direction:column;line-height:1}.brand span{font-family:Georgia,serif;font-size:28px;font-weight:700}.brand b{color:var(--gold)}.brand small{margin-top:7px;font-size:12px;opacity:.9}.nav{display:flex;align-items:center;gap:22px;font-size:14px;font-weight:700}.nav a:hover{color:var(--gold2)}.btn{padding:10px 15px!important;border-radius:6px;color:#fff!important}.line{background:#28c840}.whats{background:#17a34a}.menu-btn{display:none;background:transparent;color:#fff;border:0;font-size:28px}.hero{min-height:730px;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.2)),url('images/hero-cabin.svg') center/cover no-repeat;color:#fff}.hero-grid{display:grid;grid-template-columns:1fr 405px;gap:54px;align-items:center;min-height:730px}.eyebrow{color:var(--gold2);font-family:Georgia,serif;font-size:19px;font-weight:700}.hero h1{font-family:Georgia,"Yu Mincho",serif;font-size:61px;line-height:1.25;margin:26px 0 24px;letter-spacing:.03em;text-shadow:0 5px 18px rgba(0,0,0,.35)}.lead{font-size:22px;line-height:1.9;font-weight:700}.hero-icons{display:flex;gap:32px;margin-top:48px}.hero-icons div{width:150px;text-align:center;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:18px}.hero-icons span{display:block;color:var(--gold2);font-size:42px;line-height:1}.hero-icons b,.hero-icons small{display:block;font-size:17px;margin-top:9px}.quote-card{background:#fff;color:var(--text);border-radius:10px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.35)}.quote-head{background:linear-gradient(135deg,#061a33,#082e58);color:#fff;text-align:center;padding:20px}.quote-head h2{font-size:26px;margin:0 0 6px}.quote-head p{margin:0;font-weight:700}.quote-form{padding:20px}.quote-form label{display:block;font-size:13px;font-weight:700;margin-bottom:12px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;margin-top:6px;border:1px solid #d8dee9;border-radius:5px;padding:12px;font:inherit;font-weight:500}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.submit-btn{width:100%;border:0;border-radius:6px;background:linear-gradient(180deg,#e6b734,#c58e09);color:#fff;font-size:17px;font-weight:800;padding:16px;cursor:pointer;box-shadow:0 8px 15px rgba(174,124,10,.28)}.privacy{text-align:center;color:#7b8794;font-size:11px;margin-bottom:0}.stats{background:linear-gradient(90deg,#061a33,#082447);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;padding:28px 24px}.stats-grid div{position:relative}.stats-grid small{display:block;font-weight:700;opacity:.88}.stats-grid strong{display:block;font-size:29px;color:#fff;margin-top:6px}.stats-grid strong::first-letter{color:var(--gold2)}.section{padding:58px 0}.soft{background:linear-gradient(180deg,#fff,#f8fafc)}.section-title{text-align:center;font-family:Georgia,"Yu Mincho",serif;font-size:30px;margin:0 0 42px;position:relative}.section-title:after{content:"";display:block;width:54px;height:3px;background:var(--gold);margin:13px auto 0}.reason-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.reason-grid article{text-align:center;padding:18px 30px;border-right:1px solid var(--line)}.reason-grid article:last-child{border-right:0}.reason-grid span{font-size:45px;color:#0a2447}.reason-grid h3{font-size:18px;margin:16px 0 12px}.reason-grid p{font-size:14px;line-height:1.8;color:#334155}.route-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.route{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;text-align:center;box-shadow:0 8px 18px rgba(15,23,42,.04)}.route img{width:100%;height:118px;object-fit:cover;display:block}.route h3{font-size:15px;margin:12px 0 0}.route p{font-size:12px;color:#6b7280;margin:2px 0 5px}.route strong{display:block;color:#c58e09;font-size:18px;margin-bottom:13px}.note{font-size:12px;color:#777;margin-top:18px}.center{text-align:center;margin-top:22px}.ghost{display:inline-block;border:1px solid #cfd7e3;border-radius:7px;padding:12px 42px;font-weight:800;background:#fff}.airline-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.airline-grid div{height:68px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;background:#fff;font-weight:900;color:#173158;font-size:18px}.airline-grid div:nth-child(3){color:#d71920}.airline-grid div:nth-child(4){color:#71123d}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:46px}.flow-grid article{position:relative;text-align:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:34px 18px 22px;min-height:170px}.flow-grid article:after{content:"→";position:absolute;right:-34px;top:50%;transform:translateY(-50%);font-size:34px;color:#0a2447}.flow-grid article:last-child:after{display:none}.flow-grid b{position:absolute;left:-8px;top:-8px;width:32px;height:32px;border-radius:50%;background:#061a33;color:#fff;display:flex;align-items:center;justify-content:center}.flow-grid span{font-size:36px;color:#0a2447}.flow-grid h3{font-size:17px;line-height:1.45}.flow-grid p{font-size:13px;color:#64748b;line-height:1.6}.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.voice-grid article{border:1px solid var(--line);border-radius:10px;padding:24px;text-align:center;box-shadow:0 8px 18px rgba(15,23,42,.04)}.stars{color:#d7a11f;letter-spacing:4px;font-size:19px}.voice-grid p{line-height:1.8;font-size:14px}.voice-grid b{font-size:14px}.footer{background:linear-gradient(90deg,#061a33,#082447);color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr 1.4fr 1.4fr 210px;gap:40px;padding:34px 24px}.footer h3{font-family:Georgia,serif;font-size:24px;margin:0 0 8px}.footer b{color:var(--gold)}.footer p{font-size:13px;line-height:1.8;opacity:.9}.social{display:flex;gap:10px}.social a{background:#12365f;border-radius:20px;padding:8px 12px;font-size:12px}.ssl{background:#fff;color:#0f172a;border-radius:10px;border:3px solid #f0c66a;text-align:center;align-self:center;padding:12px;font-size:13px}.ssl b{color:#173158;font-size:24px}.copy{text-align:center;border-top:1px solid rgba(255,255,255,.12);padding:16px;font-size:12px;color:#cbd5e1}.copy a{color:#cbd5e1}@media (max-width:980px){.menu-btn{display:block}.nav{position:absolute;display:none;flex-direction:column;align-items:stretch;top:78px;left:0;right:0;background:#061a33;padding:20px 24px}.nav.open{display:flex}.hero-grid{grid-template-columns:1fr;gap:28px;padding-top:54px;padding-bottom:54px}.hero h1{font-size:45px}.route-grid,.airline-grid{grid-template-columns:repeat(2,1fr)}.reason-grid,.flow-grid,.voice-grid,.stats-grid,.footer-grid{grid-template-columns:1fr}.reason-grid article{border-right:0;border-bottom:1px solid var(--line)}.flow-grid{gap:18px}.flow-grid article:after{display:none}.hero-icons{flex-wrap:wrap}.quote-card{max-width:520px}}@media (max-width:560px){.container{padding:0 16px}.brand span{font-size:23px}.hero{min-height:auto}.hero-grid{min-height:auto}.hero h1{font-size:36px}.lead{font-size:17px}.hero-icons{gap:10px}.hero-icons div{width:31%;font-size:12px}.hero-icons span{font-size:30px}.hero-icons b,.hero-icons small{font-size:12px}.form-row{grid-template-columns:1fr}.route-grid,.airline-grid{grid-template-columns:1fr}.section{padding:42px 0}.footer-grid{gap:16px}}

/* v1.1 form update: email submit + trip type */
.trip-type-wrap{display:flex;align-items:center;gap:12px;margin:2px 0 12px;font-size:13px;font-weight:800;color:var(--text)}
.trip-type-wrap>span{margin-right:4px;white-space:nowrap}
.trip-choice{display:inline-flex!important;align-items:center;gap:6px;margin:0!important;padding:9px 14px;border:1px solid #d8dee9;border-radius:999px;background:#f8fafc;cursor:pointer;font-weight:800!important}
.trip-choice input{width:auto!important;margin:0!important;padding:0!important;accent-color:#c58e09}
.return-date-label.is-hidden{display:none!important}
.form-status{min-height:20px;margin:10px 0 0;text-align:center;font-size:13px;font-weight:800}
.form-status.success{color:#16803c}
.form-status.error{color:#c02626}
.submit-btn:disabled{opacity:.72;cursor:not-allowed}
@media (max-width:560px){.trip-type-wrap{flex-wrap:wrap}.trip-choice{flex:1;justify-content:center}}


/* v1.4 logo + hero/form refinement */
:root{--beige:#d9c09e;--deep-navy:#061637}
.site-header{background:linear-gradient(90deg,#041832 0%,#06254b 58%,#041832 100%)}
.nav-wrap{height:70px}.brand{display:flex;flex-direction:row;align-items:center;gap:12px;min-width:248px}.brand-icon-wrap{width:46px;height:46px;border-radius:50%;background:var(--beige);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 8px 18px rgba(0,0,0,.18);overflow:hidden;flex:0 0 46px}.brand-icon{width:34px;height:34px;object-fit:contain;display:block}.brand-text{display:flex!important;flex-direction:column;line-height:1}.brand-text strong{font-family:Georgia,serif;font-size:25px;font-weight:700;color:#fff;letter-spacing:.01em}.brand-text b{color:var(--gold)}.brand-text small{margin-top:6px;font-size:11px;color:rgba(255,255,255,.9);font-weight:700}.nav{gap:18px;font-size:13px}.btn{padding:8px 12px!important;border-radius:5px}.hero{min-height:655px;background:linear-gradient(90deg,rgba(2,8,20,.72) 0%,rgba(2,8,20,.50) 45%,rgba(2,8,20,.18) 100%),url('images/hero-cabin.svg') center/cover no-repeat}.hero-grid{grid-template-columns:minmax(0,1fr) 360px;gap:42px;align-items:center;min-height:655px}.hero-copy{padding-top:8px}.eyebrow{font-size:18px;margin:0 0 18px;color:#d6a927}.hero h1{font-size:57px;line-height:1.22;margin:0 0 20px;letter-spacing:.02em}.lead{font-size:19px;line-height:1.8;margin:0;font-weight:800}.hero-icons{gap:24px;margin-top:38px}.hero-icons div{width:132px;padding-bottom:14px;background:rgba(0,0,0,.14);border-bottom:1px solid rgba(255,255,255,.28)}.hero-icons span{font-size:38px}.hero-icons b,.hero-icons small{font-size:15px}.quote-card{width:360px;border-radius:9px;box-shadow:0 22px 60px rgba(0,0,0,.36)}.quote-head{padding:15px 16px}.quote-head h2{font-size:22px;margin-bottom:3px}.quote-head p{font-size:12px}.quote-form{padding:16px 18px 14px}.quote-form label{font-size:12px;margin-bottom:9px}.quote-form input,.quote-form select,.quote-form textarea{margin-top:5px;border-radius:4px;padding:9px 10px;font-size:13px}.quote-form textarea{min-height:86px;resize:vertical}.form-row{gap:10px}.trip-type-wrap{margin:0 0 9px;font-size:12px;gap:8px}.trip-choice{padding:7px 11px!important}.submit-btn{font-size:15px;padding:13px 15px;border-radius:5px}.privacy{font-size:10px}.form-status{font-size:12px;line-height:1.5}.stats{margin-top:0;background:linear-gradient(90deg,#041832,#062a55)}.stats-grid{padding:24px 24px}.stats-grid div{display:flex;flex-direction:column;align-items:center;gap:4px}.stats-grid div:before,.stats-grid div:after{content:"";position:absolute;top:2px;width:31px;height:56px;border:2px solid var(--gold);border-top:0;border-bottom:0;opacity:.95}.stats-grid div:before{left:50%;transform:translateX(-105px) skewY(-12deg);border-right:0;border-radius:55% 0 0 55%}.stats-grid div:after{right:50%;transform:translateX(105px) skewY(12deg);border-left:0;border-radius:0 55% 55% 0}.stats-grid strong{font-size:27px}.footer-brand-line{display:flex;align-items:center;gap:12px}.footer-logo{width:54px;height:54px;border-radius:50%;object-fit:cover;background:#fff}.footer h3{margin:0;font-size:24px}.footer-brand-block p{margin-top:10px}@media (max-width:1100px){.nav{gap:12px;font-size:12px}.hero-grid{grid-template-columns:minmax(0,1fr) 350px}.quote-card{width:350px}.hero h1{font-size:52px}}@media (max-width:980px){.nav{top:70px}.brand{min-width:auto}.hero-grid{grid-template-columns:1fr;min-height:auto}.quote-card{width:100%;max-width:430px}.hero{min-height:auto}.hero-copy{padding-top:42px}.stats-grid div:before,.stats-grid div:after{display:none}}@media (max-width:560px){.nav-wrap{height:66px}.brand-icon-wrap{width:40px;height:40px;flex-basis:40px}.brand-icon{width:30px;height:30px}.brand-text strong{font-size:20px}.brand-text small{font-size:10px}.hero h1{font-size:35px}.quote-card{max-width:none}.quote-form{padding:15px}.hero-icons div{width:31%;background:transparent}.footer-logo{width:48px;height:48px}}


/* v1.5 palette + form spacing refinement */
:root{--navy:#191d63;--navy2:#10194f;--gold:#cdb896;--gold2:#dfcfb3;--beige:#d7c2a3;--deep-navy:#191d63;--text:#132149;--muted:#667085;--line:#e8e4db;--bg:#fcfbf8}
body{background:#fff;color:var(--text)}
.site-header{background:linear-gradient(90deg,#11174e 0%,#1b216c 52%,#11174e 100%);box-shadow:0 3px 16px rgba(11,20,56,.26)}
.nav-wrap{height:74px}
.brand{gap:10px}
.brand-icon-wrap{width:42px;height:42px;flex:0 0 42px;background:transparent;box-shadow:none;border-radius:0;overflow:visible}
.brand-icon{width:42px;height:42px;object-fit:contain}
.brand-text strong{font-size:22px;letter-spacing:0}.brand-text b{color:var(--beige)}.brand-text small{font-size:10.5px;color:rgba(255,255,255,.86);margin-top:5px}
.nav a:hover{color:var(--beige)}
.hero{min-height:700px;padding:34px 0 30px;background:linear-gradient(90deg,rgba(13,16,42,.74) 0%,rgba(13,16,42,.52) 48%,rgba(13,16,42,.16) 100%),url('images/hero-cabin.svg') center/cover no-repeat}
.hero-grid{grid-template-columns:minmax(0,1fr) 338px;gap:48px;min-height:636px;align-items:center}
.hero-copy{padding-top:0}
.eyebrow{max-width:480px;margin:0 0 18px;color:var(--beige);font-family:inherit;font-size:21px;font-weight:800;line-height:1.45;letter-spacing:.01em}
.hero h1{font-size:58px;line-height:1.18;margin:0 0 20px;text-shadow:0 5px 20px rgba(0,0,0,.32)}
.lead{font-size:18px;line-height:1.9}
.hero-icons{gap:18px;margin-top:34px}.hero-icons div{width:122px;padding:12px 10px 14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-bottom:1px solid rgba(215,194,163,.65);border-radius:4px}.hero-icons span{color:var(--beige);font-size:34px}.hero-icons b,.hero-icons small{font-size:14px}
.quote-card{width:338px;margin:16px 0;border-radius:12px;box-shadow:0 18px 42px rgba(10,18,48,.22)}
.quote-head{background:linear-gradient(180deg,#151b5e 0%,#0d1448 100%);padding:14px 16px 13px}.quote-head h2{font-size:20px;line-height:1.25;margin:0 0 2px}.quote-head p{font-size:12px;opacity:.96}
.quote-form{padding:14px 16px 12px}.quote-form label{font-size:11.5px;margin-bottom:8px}.quote-form input,.quote-form select,.quote-form textarea{margin-top:4px;padding:8px 10px;border:1px solid #d8dbe5;border-radius:5px;font-size:12.5px}.quote-form textarea{min-height:76px}.form-row{gap:8px}.trip-type-wrap{margin:0 0 8px;font-size:11.5px;gap:8px}.trip-choice{padding:6px 10px!important;font-size:11.5px}.submit-btn{padding:12px 14px;border-radius:6px;background:linear-gradient(180deg,#d7c2a3 0%,#bea377 100%);box-shadow:0 8px 18px rgba(145,112,57,.22);font-size:14px;color:#fff}.submit-btn:hover{filter:brightness(.98)}.form-status{font-size:11.5px;margin-top:8px}.privacy{font-size:10px;margin-top:8px}
.stats{background:linear-gradient(90deg,#11174e,#1b216c)}.stats-grid strong::first-letter{color:var(--beige)}.stats-grid div:before,.stats-grid div:after{border-color:var(--beige)}
.soft{background:linear-gradient(180deg,#fff,#fbf8f2)}.section-title:after{background:var(--beige)}.route strong,.stars{color:#b89663}.reason-grid span,.flow-grid span,.airline-grid div{color:var(--navy)}.ghost{border-color:#d8d9df}.footer{background:linear-gradient(90deg,#11174e,#1b216c)}.footer b,.ssl b{color:var(--beige)}.social a{background:#243078}
@media (max-width:1180px){.hero-grid{grid-template-columns:minmax(0,1fr) 330px;gap:34px}.quote-card{width:330px}.hero h1{font-size:54px}}
@media (max-width:980px){.hero{padding:24px 0 28px}.hero-grid{grid-template-columns:1fr;gap:24px;min-height:auto}.quote-card{width:100%;max-width:420px;margin:0 auto}.eyebrow{font-size:18px;max-width:none}.hero h1{font-size:46px}.brand-text strong{font-size:21px}}
@media (max-width:560px){.nav-wrap{height:66px}.brand-icon-wrap,.brand-icon{width:36px;height:36px}.brand-text strong{font-size:19px}.brand-text small{font-size:9.5px}.hero{padding:18px 0 24px}.hero h1{font-size:34px}.eyebrow{font-size:16px;line-height:1.4}.lead{font-size:16px}.hero-icons{gap:10px}.hero-icons div{width:31%;padding:10px 4px 12px}.quote-form{padding:14px}.quote-card{max-width:none}.quote-card{margin:0}.submit-btn{font-size:13.5px}}


/* v1.6 template-match refinement */
:root{--navy:#041d45;--navy2:#072a5a;--gold:#d0a126;--gold2:#ebb84a;--text:#0d1c35;--line:#e5e7eb;--beige:#d6c19a}
body{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,Segoe UI,sans-serif;color:var(--text)}
.container{max-width:1200px;padding:0 22px}.site-header{background:linear-gradient(90deg,#031a3f 0%,#062552 100%);box-shadow:0 2px 12px rgba(0,0,0,.18)}.nav-wrap{height:80px}.brand{gap:10px;min-width:320px}.brand-icon-wrap{width:36px;height:36px;flex:0 0 36px;background:#d6c19a;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:none;overflow:hidden}.brand-icon{width:26px;height:26px}.brand-text strong{font-size:23px;font-family:Georgia,serif;line-height:1;color:#fff}.brand-text b{color:var(--gold2)}.brand-text small{font-size:11px;margin-top:5px;color:rgba(255,255,255,.92)}.nav{gap:20px;font-size:14px;font-weight:700}.btn{padding:11px 16px!important;border-radius:6px;font-size:13px}
.hero{min-height:760px;padding:0;background:linear-gradient(90deg,rgba(9,16,27,.62) 0%,rgba(9,16,27,.28) 54%,rgba(9,16,27,.10) 100%),url('assets/images/hero-cabin-v16.png') center/cover no-repeat}.hero-grid{grid-template-columns:minmax(0,1fr) 438px;gap:34px;min-height:760px;align-items:center}.hero-copy{padding-top:32px;max-width:620px}.eyebrow{margin:0 0 14px;color:var(--gold2);font-size:18px;font-family:Georgia,serif;font-weight:700;line-height:1.3}.hero h1{font-family:Georgia,"Yu Mincho",serif;font-size:68px;line-height:1.14;letter-spacing:.01em;margin:0 0 24px;text-shadow:0 5px 16px rgba(0,0,0,.32)}.lead{font-size:20px;line-height:1.7;font-weight:700}.hero-icons{display:flex;gap:28px;margin-top:42px}.hero-icons div{width:144px;text-align:center;padding:0 8px 10px;background:transparent;border:none}.hero-icons span{display:block;color:var(--gold);font-size:42px;line-height:1;margin-bottom:8px}.hero-icons b,.hero-icons small{display:block;color:#fff;font-size:15px;line-height:1.5}.quote-card{width:438px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,.22);margin-top:14px}.quote-head{background:linear-gradient(180deg,#032150 0%,#062b5e 100%);padding:22px 24px 18px;text-align:center}.quote-head h2{font-size:22px;margin:0 0 4px}.quote-head p{font-size:13px}.quote-form{padding:16px 18px 14px}.quote-form label{font-size:12px;font-weight:700;margin-bottom:10px}.quote-form input,.quote-form select,.quote-form textarea{margin-top:5px;border:1px solid #d8dde6;border-radius:4px;padding:11px 12px;font-size:13px}.quote-form textarea{min-height:98px}.form-row{gap:12px}.trip-type-wrap{margin:2px 0 10px;font-size:12px;gap:10px}.trip-choice{padding:8px 12px!important}.submit-btn{padding:16px 14px;border-radius:6px;background:linear-gradient(180deg,#dcb03d 0%,#c99612 100%);font-size:16px;font-weight:800}.privacy{font-size:11px;margin-top:8px}.form-status{font-size:12px}.stats{background:linear-gradient(90deg,#031a3f 0%,#062552 100%)}.stats-grid{padding:28px 22px}.stats-grid small{font-size:14px}.stats-grid strong{font-size:28px}.stats-grid div:before,.stats-grid div:after{border-color:var(--gold)}.section{padding:62px 0}.section-title{font-size:31px}.section-title:after{background:var(--gold)}
@media (max-width:1100px){.hero-grid{grid-template-columns:minmax(0,1fr) 400px;gap:28px}.quote-card{width:400px}.hero h1{font-size:60px}.nav{gap:14px;font-size:13px}}
@media (max-width:980px){.nav-wrap{height:74px}.nav{top:74px}.hero{min-height:auto;padding:28px 0 24px}.hero-grid{grid-template-columns:1fr;min-height:auto;gap:26px}.hero-copy{padding-top:10px;max-width:none}.hero h1{font-size:50px}.quote-card{width:100%;max-width:440px;margin:0 auto}.hero-icons{gap:12px;flex-wrap:wrap}.hero-icons div{width:31%}.stats-grid div:before,.stats-grid div:after{display:none}}
@media (max-width:560px){.container{padding:0 16px}.brand{min-width:auto}.brand-icon-wrap{width:32px;height:32px;flex-basis:32px}.brand-icon{width:22px;height:22px}.brand-text strong{font-size:19px}.brand-text small{font-size:9.5px}.hero{padding:18px 0 22px}.hero h1{font-size:38px;line-height:1.18}.eyebrow{font-size:16px}.lead{font-size:16px}.hero-icons{gap:10px;margin-top:26px}.hero-icons div{width:31%;padding:8px 4px}.hero-icons span{font-size:30px}.hero-icons b,.hero-icons small{font-size:12px}.quote-head{padding:18px 14px 14px}.quote-head h2{font-size:20px}.quote-form{padding:14px}.quote-form input,.quote-form select,.quote-form textarea{padding:10px 10px}.submit-btn{padding:14px 12px;font-size:15px}}


/* v1.7 spacious template alignment + header no-wrap */
:root{
  --navy:#041d45;
  --navy2:#062552;
  --gold:#d6a11f;
  --gold2:#e4b43c;
}

/* Make the top bar feel like the reference: one-line items, no cramped wrapping */
.container{max-width:1280px}
.site-header{background:linear-gradient(90deg,#031936 0%,#06254f 100%)}
.nav-wrap{height:74px;gap:24px}
.brand{min-width:300px;flex:0 0 auto}
.brand-text strong,
.brand-text small,
.nav a{
  white-space:nowrap;
  word-break:keep-all;
}
.nav{
  flex:1 1 auto;
  justify-content:flex-end;
  gap:18px;
  font-size:13px;
  line-height:1;
}
.nav a{display:inline-flex;align-items:center}
.nav .btn{
  min-width:104px;
  justify-content:center;
  padding:10px 14px!important;
}

/* Wider, calmer first view, closer to the template proportions */
.hero{
  min-height:735px;
  background-position:center center;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 420px;
  gap:64px;
  min-height:735px;
  align-items:center;
}
.hero-copy{
  max-width:720px;
  padding-top:10px;
}
.eyebrow{
  font-family:Georgia,"Yu Mincho",serif;
  font-size:19px;
  margin-bottom:18px;
  color:var(--gold2);
}
.hero h1{
  font-size:58px;
  line-height:1.18;
  letter-spacing:.01em;
  margin-bottom:22px;
  max-width:760px;
}
.lead{
  font-size:20px;
  line-height:1.8;
}
.hero-icons{
  margin-top:42px;
  gap:40px;
}
.hero-icons div{
  width:145px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.26);
}
.hero-icons span{
  font-size:44px;
  color:var(--gold);
}
.hero-icons b,
.hero-icons small{
  font-size:15px;
  line-height:1.55;
}

/* Keep form elegant but not oversized */
.quote-card{
  width:420px;
  margin:18px 0;
  border-radius:10px;
}
.quote-head{
  padding:20px 22px 17px;
}
.quote-head h2{
  font-size:23px;
}
.quote-form{
  padding:17px 20px 15px;
}
.quote-form label{
  margin-bottom:10px;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  padding:10px 12px;
}
.quote-form textarea{
  min-height:90px;
}
.submit-btn{
  padding:15px 14px;
  background:linear-gradient(180deg,#ddb43a 0%,#c99612 100%);
}

/* Stats bar slightly more relaxed like the template */
.stats-grid{
  padding:30px 22px;
}
.stats-grid strong{
  font-size:29px;
}

@media (max-width:1220px){
  .container{max-width:1180px}
  .brand{min-width:270px}
  .nav{gap:12px;font-size:12px}
  .nav .btn{min-width:96px;padding:9px 10px!important}
  .hero-grid{grid-template-columns:minmax(0,1fr) 400px;gap:42px}
  .quote-card{width:400px}
  .hero h1{font-size:54px}
}

@media (max-width:1080px){
  .brand{min-width:240px}
  .brand-text strong{font-size:20px}
  .brand-text small{font-size:9.5px}
  .nav{gap:10px;font-size:11.5px}
  .hero h1{font-size:50px}
}

@media (max-width:980px){
  .nav{top:74px;align-items:stretch;gap:14px;font-size:14px;line-height:1.3}
  .nav a{white-space:normal}
  .nav .btn{width:100%;min-width:0}
  .hero-grid{grid-template-columns:1fr;gap:30px;min-height:auto}
  .hero{min-height:auto;padding:34px 0}
  .hero-copy{max-width:none}
  .hero h1{font-size:46px}
  .quote-card{width:100%;max-width:440px;margin:0 auto}
}

@media (max-width:560px){
  .nav-wrap{height:66px}
  .hero{padding:22px 0}
  .hero h1{font-size:36px}
  .eyebrow{font-size:16px}
  .lead{font-size:16px}
  .hero-icons{gap:10px;margin-top:28px}
  .hero-icons div{width:31%;padding-bottom:12px}
  .quote-card{max-width:none}
  .quote-form{padding:14px}
}


/* v1.8 exact-logo + hero overlap refinement */
:root{--navy:#031936;--navy2:#06254f;--gold:#d7a11f;--gold2:#e2b03a;}
.brand{display:flex;flex-direction:row;align-items:center;gap:10px;min-width:305px}
.brand-icon-wrap{width:40px;height:40px;flex:0 0 40px;border-radius:50%;overflow:hidden;background:transparent;box-shadow:none}
.brand-icon{width:100%;height:100%;object-fit:cover;display:block}
.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{font-size:22px}.brand-text small{font-size:10.5px;margin-top:5px}

.hero{position:relative;overflow:visible;min-height:670px;background:linear-gradient(90deg,rgba(0,0,0,.50) 0%,rgba(0,0,0,.24) 46%,rgba(0,0,0,.12) 100%),url('assets/images/hero-cabin-v18.png') center/cover no-repeat}
.hero-grid{grid-template-columns:minmax(0,1fr) 420px;gap:72px;min-height:670px;align-items:start;padding-top:66px;padding-bottom:0}
.hero-copy{max-width:700px;padding-top:74px}
.eyebrow{font-size:18px;color:var(--gold2);margin-bottom:16px}
.hero h1{font-size:60px;line-height:1.16;letter-spacing:.01em;margin:0 0 20px;max-width:760px}
.lead{font-size:20px;line-height:1.8}
.hero-icons{margin-top:40px;gap:34px}.hero-icons div{width:138px;padding-bottom:10px;background:transparent;border:none}.hero-icons span{font-size:42px}.hero-icons b,.hero-icons small{font-size:15px}
.quote-card{width:420px;border-radius:12px;position:relative;z-index:4;margin-top:24px;margin-bottom:-118px;box-shadow:0 28px 70px rgba(0,0,0,.28)}
.quote-head{padding:18px 20px 16px}.quote-head h2{font-size:23px}.quote-head p{font-size:13px}
.quote-form{padding:16px 18px 14px}.quote-form input,.quote-form select,.quote-form textarea{padding:10px 12px}.quote-form textarea{min-height:86px}
.submit-btn{padding:15px 14px}
.stats{position:relative;z-index:1}.stats-grid{padding:34px 22px 26px}
.footer-logo{width:44px;height:44px;border-radius:50%;object-fit:cover}
.footer-brand-line{display:flex;align-items:center;gap:12px}

@media (max-width:1200px){
  .hero-grid{gap:46px;grid-template-columns:minmax(0,1fr) 400px}
  .quote-card{width:400px}
  .hero h1{font-size:56px}
}
@media (max-width:980px){
  .brand{min-width:auto}
  .hero{min-height:auto;padding:28px 0 0}
  .hero-grid{grid-template-columns:1fr;gap:28px;min-height:auto;padding-top:24px;padding-bottom:0}
  .hero-copy{padding-top:0;max-width:none}
  .quote-card{width:100%;max-width:430px;margin:0 auto -70px}
  .hero h1{font-size:46px}
  .stats-grid{padding-top:90px}
}
@media (max-width:560px){
  .brand-icon-wrap{width:34px;height:34px;flex-basis:34px}
  .brand-text strong{font-size:19px}
  .hero{padding-top:20px}
  .hero-grid{padding-top:12px;gap:22px}
  .hero-copy{padding-top:0}
  .hero h1{font-size:38px}
  .quote-card{margin-bottom:-54px}
  .stats-grid{padding-top:74px}
}


/* v1.8.1 restore stats style + more spacious hero/form */
.container{max-width:1360px}
.hero{min-height:690px}
.hero-grid{grid-template-columns:minmax(0,1fr) 432px;gap:88px;min-height:690px;padding-top:62px}
.hero-copy{max-width:760px;padding-top:68px}
.hero h1{font-size:62px;max-width:780px}
.lead{font-size:21px;line-height:1.82}
.hero-icons{gap:40px}
.hero-icons div{width:146px}

.quote-card{width:432px;margin-top:20px;margin-bottom:-92px}
.quote-head{padding:20px 22px 17px}
.quote-head h2{font-size:24px;line-height:1.2}
.quote-head p{font-size:14px}
.quote-form{padding:18px 20px 16px}
.quote-form label{font-size:13px;margin-bottom:10px}
.quote-form input,.quote-form select,.quote-form textarea{font-size:14px;padding:11px 12px}
.quote-form textarea{min-height:92px}
.trip-type-wrap{font-size:13px;gap:10px;margin:2px 0 10px}
.trip-choice{padding:8px 12px!important}
.submit-btn{font-size:18px;padding:16px 16px}
.privacy{font-size:11px}

/* Restore stats area close to original template */
.stats{background:linear-gradient(90deg,#031a3f 0%,#062552 100%);margin-top:0}
.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:22px 36px 24px;max-width:1180px;margin:0 auto;text-align:center}
.stats-grid div{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:86px}
.stats-grid small{display:block;font-size:13px;font-weight:700;color:#fff;opacity:1;margin:0 0 10px}
.stats-grid strong{display:block;font-size:27px;font-weight:800;color:#fff;line-height:1.1;margin:0}
.stats-grid strong::first-letter{color:#fff}
.stats-grid div:before,.stats-grid div:after{content:"";position:absolute;top:16px;width:24px;height:44px;border:2px solid #d6a11f;opacity:1}
.stats-grid div:before{left:50%;margin-left:-96px;border-right:0;border-radius:22px 0 0 22px;transform:skewY(-10deg)}
.stats-grid div:after{left:50%;margin-left:72px;border-left:0;border-radius:0 22px 22px 0;transform:skewY(10deg)}

@media (max-width:1200px){
  .container{max-width:1240px}
  .hero-grid{grid-template-columns:minmax(0,1fr) 410px;gap:56px}
  .quote-card{width:410px}
  .hero h1{font-size:58px}
}
@media (max-width:980px){
  .hero{min-height:auto;padding:28px 0 0}
  .hero-grid{grid-template-columns:1fr;gap:28px;min-height:auto;padding-top:24px}
  .hero-copy{padding-top:0;max-width:none}
  .quote-card{width:100%;max-width:440px;margin:0 auto -70px}
  .hero h1{font-size:46px}
  .stats-grid{grid-template-columns:1fr;padding:84px 20px 20px}
  .stats-grid div{min-height:74px}
  .stats-grid div:before,.stats-grid div:after{display:none}
}
@media (max-width:560px){
  .hero-grid{gap:22px;padding-top:12px}
  .hero h1{font-size:38px}
  .quote-form input,.quote-form select,.quote-form textarea{font-size:13px}
  .submit-btn{font-size:16px}
}


/* v1.8.2 stats bar matched closer to template */
.stats{
  background:linear-gradient(90deg,#031a3f 0%,#062552 100%);
  margin-top:0;
}
.stats .container.stats-grid{
  max-width:100%;
  width:100%;
  padding:18px 54px 20px;
  margin:0;
}
.stats-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:0;
  text-align:center;
}
.stats-grid div{
  position:relative;
  min-height:92px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.stats-grid small{
  display:block;
  margin:0 0 8px;
  font-size:13px;
  font-weight:700;
  color:rgba(255,255,255,.98);
  letter-spacing:.01em;
}
.stats-grid strong{
  display:block;
  margin:0;
  font-size:24px;
  font-weight:800;
  line-height:1.1;
  color:#fff;
}
.stats-grid div:nth-child(2) strong{color:#d8a523}
.stats-grid strong::first-letter{color:inherit}
.stats-grid div:before,
.stats-grid div:after{
  content:"";
  position:absolute;
  top:13px;
  width:18px;
  height:44px;
  border:2px solid #d6a11f;
  opacity:1;
}
.stats-grid div:before{
  left:50%;
  margin-left:-88px;
  border-right:0;
  border-radius:20px 0 0 20px;
  transform:skewY(-11deg);
}
.stats-grid div:after{
  left:50%;
  margin-left:68px;
  border-left:0;
  border-radius:0 20px 20px 0;
  transform:skewY(11deg);
}

@media (max-width:980px){
  .stats .container.stats-grid{padding:84px 18px 18px}
  .stats-grid{grid-template-columns:1fr}
  .stats-grid div{min-height:74px}
  .stats-grid div:before,.stats-grid div:after{display:none}
}


/* v1.8.3 stats section true template-match pass */
.hero{min-height:700px}
.hero-grid{min-height:700px;padding-top:58px}
.quote-card{margin-bottom:-54px}

/* The form should overlap only the empty upper band of the stats bar, not cover the content */
.stats{
  background:linear-gradient(90deg,#031a3f 0%,#062552 100%);
  position:relative;
  z-index:1;
}
.stats .container.stats-grid{
  width:100%;
  max-width:100%;
  margin:0;
  padding:46px 42px 18px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;
  text-align:center;
}
.stats-grid div{
  position:relative;
  min-height:66px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
}
.stats-grid small{
  display:block;
  margin:0 0 7px;
  color:#fff;
  font-size:12px;
  font-weight:700;
  line-height:1.1;
  opacity:1;
}
.stats-grid strong{
  display:block;
  margin:0;
  font-size:22px;
  line-height:1.08;
  font-weight:800;
  color:#fff;
}
.stats-grid div:nth-child(2) strong,
.stats-grid div:nth-child(3) strong{color:#d8a523}
.stats-grid div:nth-child(1) strong{color:#fff}
.stats-grid strong::first-letter{color:inherit}

/* closer laurel proportions */
.stats-grid div:before,
.stats-grid div:after{
  content:"";
  position:absolute;
  top:10px;
  width:15px;
  height:38px;
  border:2px solid #d6a11f;
  opacity:1;
}
.stats-grid div:before{
  left:50%;
  margin-left:-77px;
  border-right:0;
  border-radius:18px 0 0 18px;
  transform:skewY(-10deg);
}
.stats-grid div:after{
  left:50%;
  margin-left:62px;
  border-left:0;
  border-radius:0 18px 18px 0;
  transform:skewY(10deg);
}

@media (max-width:980px){
  .quote-card{margin:0 auto -38px}
  .stats .container.stats-grid{padding:64px 18px 16px;grid-template-columns:1fr}
  .stats-grid div{min-height:62px}
  .stats-grid div:before,.stats-grid div:after{display:none}
}


/* v1.8.5 Trip-like city autocomplete */
.quote-form label.city-field{
  position:relative;
}
.city-input-wrap{
  position:relative;
}
.city-suggestions{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 6px);
  z-index:30;
  background:#fff;
  border:1px solid #d7dce6;
  border-radius:8px;
  box-shadow:0 14px 32px rgba(15,23,42,.18);
  max-height:260px;
  overflow:auto;
  padding:6px;
  display:none;
}
.city-suggestions.is-open{
  display:block;
}
.city-suggestion{
  width:100%;
  border:0;
  background:#fff;
  text-align:left;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 10px;
  border-radius:7px;
  cursor:pointer;
  color:#0d1c35;
  font:inherit;
}
.city-suggestion:hover,
.city-suggestion.is-active{
  background:#f4f7fb;
}
.city-main{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.city-name{
  font-weight:800;
  font-size:13px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.city-sub{
  font-size:11px;
  color:#667085;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.city-code{
  flex:0 0 auto;
  min-width:42px;
  text-align:center;
  font-weight:900;
  color:#fff;
  background:#062552;
  border-radius:999px;
  padding:5px 8px;
  font-size:11px;
}
.city-empty{
  padding:11px 10px;
  color:#667085;
  font-size:12px;
}
.city-hint{
  display:block;
  margin-top:4px;
  font-size:10px;
  color:#8a94a6;
  font-weight:500;
}
@media (max-width:560px){
  .city-suggestions{
    max-height:220px;
  }
  .city-name{font-size:12.5px}
}


/* v1.9 admin editable support */
.bfjp-admin-note{
  font-size:12px;
}


/* v1.9.2 form position re-balance */
.hero{
  min-height:700px;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 460px !important;
  gap:78px !important;
  min-height:700px !important;
  align-items:center !important;
  padding-top:34px !important;
  padding-bottom:34px !important;
}
.hero-copy{
  padding-top:0 !important;
  align-self:center;
  max-width:760px !important;
}
.quote-card{
  width:460px !important;
  align-self:center !important;
  margin-top:0 !important;
  margin-bottom:-18px !important; /* only slight overlap with stats */
  border-radius:12px !important;
}
.quote-head{
  padding:22px 24px 18px !important;
}
.quote-head h2{
  font-size:24px !important;
}
.quote-head p{
  font-size:13px !important;
}
.quote-form{
  padding:20px 22px 18px !important;
}
.quote-form label{
  font-size:13px !important;
  margin-bottom:11px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:14px !important;
  padding:12px 12px !important;
}
.quote-form textarea{
  min-height:96px !important;
}
.form-row{
  gap:14px !important;
}
.trip-type-wrap{
  margin:4px 0 12px !important;
}
.submit-btn{
  font-size:18px !important;
  padding:16px 16px !important;
}
.privacy{
  margin-top:9px !important;
}
.stats .container.stats-grid{
  padding-top:28px !important;
}

@media (max-width:1280px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 435px !important;
    gap:54px !important;
  }
  .quote-card{
    width:435px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:24px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:28px !important;
    padding-top:16px !important;
    padding-bottom:0 !important;
  }
  .hero-copy{
    max-width:none !important;
  }
  .quote-card{
    width:100% !important;
    max-width:460px !important;
    margin:0 auto -22px !important;
  }
  .stats .container.stats-grid{
    padding-top:48px !important;
  }
}
@media (max-width:560px){
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:16px !important;
  }
  .quote-form input,
  .quote-form select,
  .quote-form textarea{
    font-size:13px !important;
    padding:10px 10px !important;
  }
}


/* v1.9.3 wider form + more vertical breathing room + eyebrow text higher */
.hero{
  min-height: 730px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 490px !important;
  gap:82px !important;
  min-height:730px !important;
  align-items:center !important;
  padding-top:42px !important;
  padding-bottom:52px !important;
}
.hero-copy{
  padding-top:0 !important;
  margin-top:-26px !important;
  align-self:center !important;
  max-width:760px !important;
}
.eyebrow{
  margin-top:0 !important;
  margin-bottom:14px !important;
}
.quote-card{
  width:490px !important;
  align-self:center !important;
  margin-top:0 !important;
  margin-bottom:-8px !important;
  border-radius:12px !important;
}
.quote-head{
  padding:24px 26px 20px !important;
}
.quote-head h2{
  font-size:25px !important;
}
.quote-head p{
  font-size:13px !important;
}
.quote-form{
  padding:22px 24px 22px !important;
}
.quote-form label{
  margin-bottom:12px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  padding:12px 13px !important;
}
.quote-form textarea{
  min-height:102px !important;
}
.form-row{
  gap:14px !important;
}
.submit-btn{
  padding:17px 16px !important;
}
.privacy{
  margin-top:10px !important;
  padding-bottom:2px !important;
}
.stats .container.stats-grid{
  padding-top:24px !important;
}

@media (max-width:1280px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 455px !important;
    gap:56px !important;
  }
  .quote-card{
    width:455px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:24px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:28px !important;
    padding-top:18px !important;
    padding-bottom:0 !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .quote-card{
    width:100% !important;
    max-width:490px !important;
    margin:0 auto -16px !important;
  }
  .stats .container.stats-grid{
    padding-top:44px !important;
  }
}
@media (max-width:560px){
  .quote-card{max-width:none !important;}
  .quote-form{padding:16px !important;}
}


/* v1.9.4 wider form + tighter vertical form padding + hero copy moved up */
.hero{
  min-height:730px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 520px !important;
  gap:78px !important;
  min-height:730px !important;
  align-items:center !important;
  padding-top:40px !important;
  padding-bottom:46px !important;
}
.hero-copy{
  padding-top:0 !important;
  margin-top:-58px !important;
  align-self:center !important;
  max-width:790px !important;
}
.eyebrow{
  margin-top:0 !important;
  margin-bottom:14px !important;
}
.hero h1{
  margin-top:0 !important;
}

.quote-card{
  width:520px !important;
  align-self:center !important;
  margin-top:0 !important;
  margin-bottom:-6px !important;
  border-radius:12px !important;
}
.quote-head{
  padding:20px 24px 16px !important;
}
.quote-head h2{
  font-size:25px !important;
}
.quote-head p{
  font-size:13px !important;
}
.quote-form{
  padding:18px 22px 16px !important;
}
.quote-form label{
  font-size:13px !important;
  margin-bottom:9px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:14px !important;
  padding:11px 12px !important;
}
.quote-form textarea{
  min-height:88px !important;
}
.form-row{
  gap:14px !important;
}
.trip-type-wrap{
  margin:3px 0 9px !important;
}
.city-hint{
  margin-top:3px !important;
}
.submit-btn{
  font-size:18px !important;
  padding:15px 16px !important;
}
.privacy{
  margin-top:8px !important;
  padding-bottom:0 !important;
}
.stats .container.stats-grid{
  padding-top:22px !important;
}

@media (max-width:1380px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 490px !important;
    gap:64px !important;
  }
  .quote-card{
    width:490px !important;
  }
}
@media (max-width:1200px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 460px !important;
    gap:48px !important;
  }
  .quote-card{
    width:460px !important;
  }
  .hero-copy{
    margin-top:-44px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:24px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:26px !important;
    padding-top:16px !important;
    padding-bottom:0 !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .quote-card{
    width:100% !important;
    max-width:520px !important;
    margin:0 auto -14px !important;
  }
  .stats .container.stats-grid{
    padding-top:42px !important;
  }
}
@media (max-width:560px){
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:15px !important;
  }
  .quote-form input,
  .quote-form select,
  .quote-form textarea{
    font-size:13px !important;
    padding:10px 10px !important;
  }
}


/* v1.9.5 compact above-the-fold form + X button */
.hero{
  min-height:690px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 455px !important;
  gap:68px !important;
  min-height:690px !important;
  align-items:center !important;
  padding-top:30px !important;
  padding-bottom:34px !important;
}
.hero-copy{
  margin-top:-54px !important;
  max-width:790px !important;
}

.quote-card{
  width:455px !important;
  align-self:center !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
  border-radius:12px !important;
}
.quote-head{
  padding:16px 22px 13px !important;
}
.quote-head h2{
  font-size:23px !important;
  line-height:1.18 !important;
}
.quote-head p{
  font-size:12px !important;
}
.quote-form{
  padding:14px 18px 12px !important;
}
.quote-form label{
  font-size:12px !important;
  margin-bottom:7px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:13px !important;
  padding:9px 10px !important;
  margin-top:4px !important;
}
.quote-form textarea{
  min-height:68px !important;
}
.form-row{
  gap:10px !important;
}
.trip-type-wrap{
  font-size:12px !important;
  margin:1px 0 7px !important;
  gap:8px !important;
}
.trip-choice{
  padding:6px 10px !important;
}
.city-hint{
  display:none !important;
}
.submit-btn{
  font-size:16px !important;
  padding:13px 14px !important;
}
.privacy{
  font-size:10px !important;
  margin-top:7px !important;
}
.form-status{
  margin-top:6px !important;
  font-size:11px !important;
}
.nav .x,
.social .x{
  background:#111827 !important;
}
.stats .container.stats-grid{
  padding-top:20px !important;
}

@media (max-width:1280px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 430px !important;
    gap:50px !important;
  }
  .quote-card{
    width:430px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:22px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:24px !important;
    padding-top:14px !important;
    padding-bottom:0 !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .quote-card{
    width:100% !important;
    max-width:455px !important;
    margin:0 auto -10px !important;
  }
  .stats .container.stats-grid{
    padding-top:38px !important;
  }
}
@media (max-width:560px){
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:13px !important;
  }
}


/* v1.9.6 prevent initial auto-scroll/jump */
html{
  scroll-padding-top:86px;
}
body{
  overflow-anchor:none;
}


/* v1.9.7 ensure full form visible on first screen + move hero titles upward */
.hero{
  min-height:650px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 430px !important;
  gap:62px !important;
  min-height:650px !important;
  align-items:start !important;
  padding-top:18px !important;
  padding-bottom:16px !important;
}
.hero-copy{
  margin-top:-84px !important;
  align-self:start !important;
  max-width:760px !important;
  padding-top:0 !important;
}
.eyebrow{
  margin-top:0 !important;
  margin-bottom:10px !important;
  line-height:1.2 !important;
}
.hero h1{
  margin-top:0 !important;
  margin-bottom:18px !important;
  line-height:0.98 !important;
}
.hero .lead{
  margin-top:0 !important;
  margin-bottom:22px !important;
  line-height:1.45 !important;
}
.hero-icons{
  margin-top:10px !important;
  gap:18px !important;
}

.quote-card{
  width:430px !important;
  align-self:start !important;
  margin-top:14px !important;
  margin-bottom:0 !important;
  border-radius:12px !important;
}
.quote-head{
  padding:12px 18px 10px !important;
}
.quote-head h2{
  font-size:18px !important;
  line-height:1.15 !important;
  margin-bottom:4px !important;
}
.quote-head p{
  font-size:11px !important;
  line-height:1.25 !important;
}
.quote-form{
  padding:10px 14px 10px !important;
}
.quote-form label{
  font-size:11px !important;
  line-height:1.2 !important;
  margin-bottom:5px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:12px !important;
  padding:7px 9px !important;
  margin-top:3px !important;
}
.quote-form textarea{
  min-height:52px !important;
}
.form-row{
  gap:8px !important;
}
.trip-type-wrap{
  font-size:11px !important;
  margin:0 0 5px !important;
  gap:6px !important;
}
.trip-choice{
  padding:4px 8px !important;
}
.city-hint{
  display:none !important;
}
.submit-btn{
  font-size:14px !important;
  line-height:1.2 !important;
  padding:10px 12px !important;
  margin-top:2px !important;
}
.privacy{
  font-size:9px !important;
  margin-top:5px !important;
}
.form-status{
  margin-top:5px !important;
  font-size:10px !important;
}

.stats .container.stats-grid{
  padding-top:18px !important;
}

@media (max-width:1366px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 410px !important;
    gap:50px !important;
  }
  .quote-card{
    width:410px !important;
  }
  .hero-copy{
    margin-top:-68px !important;
  }
}
@media (max-width:1180px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 390px !important;
    gap:36px !important;
  }
  .quote-card{
    width:390px !important;
  }
  .hero h1{
    font-size:76px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:20px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:20px !important;
    padding-top:8px !important;
    padding-bottom:0 !important;
    align-items:start !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .hero h1{
    font-size:58px !important;
    line-height:1.02 !important;
  }
  .quote-card{
    width:100% !important;
    max-width:430px !important;
    margin:0 auto -6px !important;
  }
  .stats .container.stats-grid{
    padding-top:34px !important;
  }
}
@media (max-width:560px){
  .hero h1{
    font-size:44px !important;
  }
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:10px !important;
  }
}


/* v1.9.8 rebalance hero copy + fit stats better above the fold */
.hero{
  min-height: 610px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 420px !important;
  gap:56px !important;
  min-height:610px !important;
  align-items:start !important;
  padding-top:10px !important;
  padding-bottom:0 !important;
}
.hero-copy{
  margin-top:-18px !important;   /* move text back down so it isn't clipped */
  align-self:start !important;
  max-width:720px !important;
  padding-top:0 !important;
}
.eyebrow{
  margin-top:0 !important;
  margin-bottom:10px !important;
  font-size:18px !important;
  line-height:1.2 !important;
}
.hero h1{
  font-size:86px !important;
  line-height:0.96 !important;
  margin-top:0 !important;
  margin-bottom:16px !important;
  max-width:700px !important;
  letter-spacing:-0.02em !important;
}
.hero .lead{
  margin-top:0 !important;
  margin-bottom:16px !important;
  line-height:1.4 !important;
  font-size:24px !important;
}
.hero-icons{
  margin-top:0 !important;
  gap:16px !important;
}
.hero-icons div{
  padding-top:10px !important;
  padding-bottom:10px !important;
}
.hero-icons div b{
  font-size:17px !important;
}
.hero-icons div small{
  font-size:14px !important;
}

.quote-card{
  width:420px !important;
  align-self:start !important;
  margin-top:4px !important;
  margin-bottom:0 !important;
  border-radius:12px !important;
}
.quote-head{
  padding:12px 18px 9px !important;
}
.quote-head h2{
  font-size:17px !important;
  line-height:1.15 !important;
  margin-bottom:3px !important;
}
.quote-head p{
  font-size:10px !important;
  line-height:1.2 !important;
}
.quote-form{
  padding:9px 13px 8px !important;
}
.quote-form label{
  font-size:10px !important;
  line-height:1.15 !important;
  margin-bottom:4px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:11px !important;
  padding:6px 8px !important;
  margin-top:3px !important;
}
.quote-form textarea{
  min-height:46px !important;
}
.form-row{
  gap:8px !important;
}
.trip-type-wrap{
  font-size:10px !important;
  margin:0 0 5px !important;
  gap:6px !important;
}
.trip-choice{
  padding:4px 7px !important;
}
.submit-btn{
  font-size:13px !important;
  line-height:1.15 !important;
  padding:9px 12px !important;
  margin-top:2px !important;
}
.privacy{
  font-size:8px !important;
  margin-top:4px !important;
}
.form-status{
  margin-top:4px !important;
  font-size:9px !important;
}

.stats{
  margin-top:0 !important;
}
.stats .container.stats-grid{
  padding-top:12px !important;
  padding-bottom:12px !important;
  min-height:auto !important;
  align-items:center !important;
}
.stats-grid > div{
  min-height:auto !important;
}
.stats-grid > div h3,
.stats-grid > div strong{
  margin-top:4px !important;
}
.stats-grid .stat-label{
  font-size:12px !important;
}
.stats-grid .stat-value{
  font-size:22px !important;
  line-height:1.1 !important;
}

@media (max-width:1366px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 400px !important;
    gap:40px !important;
  }
  .quote-card{
    width:400px !important;
  }
  .hero h1{
    font-size:78px !important;
    max-width:650px !important;
  }
}
@media (max-width:1180px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 380px !important;
    gap:28px !important;
  }
  .quote-card{
    width:380px !important;
  }
  .hero h1{
    font-size:68px !important;
  }
  .hero .lead{
    font-size:21px !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:18px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:18px !important;
    padding-top:6px !important;
    padding-bottom:0 !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .hero h1{
    font-size:54px !important;
    line-height:1.02 !important;
    max-width:none !important;
  }
  .quote-card{
    width:100% !important;
    max-width:420px !important;
    margin:0 auto -4px !important;
  }
  .stats .container.stats-grid{
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
}
@media (max-width:560px){
  .hero h1{
    font-size:42px !important;
  }
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:9px !important;
  }
}


/* v1.9.9 darker and more premium navy tone to match the template */
:root{
  --bfjp-navy-1:#02193f;
  --bfjp-navy-2:#03275c;
  --bfjp-navy-3:#04142f;
  --bfjp-gold-1:#d5a72a;
  --bfjp-gold-2:#e1b544;
}

.site-header,
.header,
header.site-header{
  background:linear-gradient(90deg, var(--bfjp-navy-1) 0%, var(--bfjp-navy-2) 50%, var(--bfjp-navy-1) 100%) !important;
  box-shadow:0 4px 18px rgba(0,0,0,.18) !important;
}

.quote-head{
  background:linear-gradient(180deg, #032b68 0%, #02275e 55%, #021f4f 100%) !important;
}

.stats{
  background:
    linear-gradient(90deg, #021636 0%, #042457 20%, #032a63 50%, #042457 80%, #021636 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(0,0,0,.22) !important;
}

.stats .container.stats-grid{
  position:relative;
}

.stats-grid > div{
  color:#ffffff !important;
}

.stats-grid .stat-label,
.stats-grid > div p,
.stats-grid > div small{
  color:rgba(255,255,255,.96) !important;
}

.stats-grid .stat-value,
.stats-grid > div strong,
.stats-grid > div h3{
  color:#ffffff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.18);
}

.stats-grid .gold,
.stats-grid .accent,
.stats-grid .number-accent{
  color:var(--bfjp-gold-2) !important;
}

.footer,
.site-footer,
footer.site-footer{
  background:linear-gradient(90deg, #02183a 0%, #03224d 50%, #02183a 100%) !important;
}

.section-title:after,
.section-title::after,
.gold-line,
.accent-line{
  background:var(--bfjp-gold-1) !important;
}

.hero-icons div svg,
.hero-icons div i,
.icon-gold{
  color:var(--bfjp-gold-1) !important;
}

.submit-btn{
  background:linear-gradient(180deg, #d9ac2d 0%, #d2a126 100%) !important;
  box-shadow:0 8px 18px rgba(132,92,8,.18) !important;
}

.submit-btn:hover{
  filter:brightness(0.98);
}



/* v2.0 refined hero balance + darker premium palette */
:root{
  --bfjp-navy-1:#01122d;
  --bfjp-navy-2:#021c45;
  --bfjp-navy-3:#010d22;
  --bfjp-gold-1:#d2a432;
  --bfjp-gold-2:#e0b44a;
}

/* darker, more premium brand bars */
.site-header,
.header,
header.site-header{
  background:linear-gradient(90deg, #01122d 0%, #021a43 50%, #01122d 100%) !important;
  box-shadow:0 5px 18px rgba(0,0,0,.24) !important;
}
.quote-head{
  background:linear-gradient(180deg, #022760 0%, #021f50 60%, #011840 100%) !important;
}
.stats{
  background:linear-gradient(90deg, #010f27 0%, #021737 22%, #02214b 50%, #021737 78%, #010f27 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    inset 0 -1px 0 rgba(0,0,0,.26) !important;
}
.footer,
.site-footer,
footer.site-footer{
  background:linear-gradient(90deg, #01122d 0%, #02183a 50%, #01122d 100%) !important;
}

/* rebalance hero section */
.hero{
  min-height: 650px !important;
}
.hero-grid{
  grid-template-columns:minmax(0,1fr) 420px !important;
  gap:58px !important;
  min-height:650px !important;
  align-items:center !important;
  padding-top:24px !important;
  padding-bottom:8px !important;
}
.hero-copy{
  margin-top: 8px !important;   /* pull text back into view */
  align-self:center !important;
  max-width:700px !important;
  padding-top:0 !important;
}
.eyebrow{
  display:block !important;
  font-size:18px !important;
  line-height:1.2 !important;
  margin:0 0 14px !important;
}
.hero h1{
  font-size: clamp(60px, 4.8vw, 78px) !important;
  line-height: 1.01 !important;
  letter-spacing:-0.02em !important;
  max-width: 680px !important;
  margin:0 0 18px !important;
}
.hero .lead{
  font-size:22px !important;
  line-height:1.45 !important;
  margin:0 0 20px !important;
  max-width: 620px !important;
}
.hero-icons{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:18px !important;
  margin-top:10px !important;
  max-width:650px !important;
}
.hero-icons > div{
  min-width:0 !important;
  padding:10px 8px !important;
  text-align:center !important;
}
.hero-icons > div b{
  display:block !important;
  font-size:16px !important;
  line-height:1.25 !important;
}
.hero-icons > div small{
  display:block !important;
  font-size:13px !important;
  line-height:1.3 !important;
  margin-top:4px !important;
}

/* compact but readable form - ensure full first-screen visibility */
.quote-card{
  width:420px !important;
  align-self:center !important;
  margin-top:4px !important;
  margin-bottom:0 !important;
  border-radius:12px !important;
}
.quote-head{
  padding:13px 18px 10px !important;
}
.quote-head h2{
  font-size:18px !important;
  line-height:1.15 !important;
  margin-bottom:2px !important;
}
.quote-head p{
  font-size:11px !important;
  line-height:1.2 !important;
}
.quote-form{
  padding:10px 14px 10px !important;
}
.quote-form label{
  font-size:11px !important;
  line-height:1.15 !important;
  margin-bottom:4px !important;
}
.quote-form input,
.quote-form select,
.quote-form textarea{
  font-size:12px !important;
  padding:7px 9px !important;
  margin-top:2px !important;
}
.quote-form textarea{
  min-height:48px !important;
}
.form-row{
  gap:8px !important;
}
.trip-type-wrap{
  font-size:11px !important;
  margin:0 0 4px !important;
  gap:6px !important;
}
.trip-choice{
  padding:4px 8px !important;
}
.city-hint{
  display:none !important;
}
.submit-btn{
  font-size:14px !important;
  line-height:1.15 !important;
  padding:10px 12px !important;
  margin-top:2px !important;
}
.privacy{
  font-size:8.5px !important;
  margin-top:5px !important;
}
.form-status{
  margin-top:5px !important;
  font-size:10px !important;
}

/* lower stats bar visual weight and match template */
.stats{
  margin-top:0 !important;
}
.stats .container.stats-grid{
  padding-top:14px !important;
  padding-bottom:14px !important;
  max-width:1180px !important;
  gap:34px !important;
  align-items:center !important;
}
.stats-grid > div{
  min-height:auto !important;
  padding-top:4px !important;
  padding-bottom:4px !important;
}
.stats-grid .stat-label,
.stats-grid > div p,
.stats-grid > div small{
  font-size:12px !important;
}
.stats-grid .stat-value,
.stats-grid > div strong,
.stats-grid > div h3{
  font-size:22px !important;
  line-height:1.1 !important;
}

/* responsive tune */
@media (max-width:1366px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 405px !important;
    gap:40px !important;
  }
  .quote-card{
    width:405px !important;
  }
  .hero-copy{
    max-width:650px !important;
  }
  .hero h1{
    font-size: clamp(56px, 4.4vw, 72px) !important;
  }
}
@media (max-width:1180px){
  .hero-grid{
    grid-template-columns:minmax(0,1fr) 390px !important;
    gap:28px !important;
  }
  .quote-card{
    width:390px !important;
  }
  .hero h1{
    font-size:56px !important;
  }
  .hero .lead{
    font-size:20px !important;
  }
  .hero-icons{
    max-width:none !important;
  }
}
@media (max-width:980px){
  .hero{
    min-height:auto !important;
    padding:18px 0 0 !important;
  }
  .hero-grid{
    grid-template-columns:1fr !important;
    min-height:auto !important;
    gap:18px !important;
    padding-top:8px !important;
    padding-bottom:0 !important;
    align-items:start !important;
  }
  .hero-copy{
    margin-top:0 !important;
    max-width:none !important;
  }
  .hero h1{
    font-size:44px !important;
    line-height:1.03 !important;
    max-width:none !important;
  }
  .hero .lead{
    font-size:18px !important;
  }
  .hero-icons{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
    gap:10px !important;
  }
  .hero-icons > div b{
    font-size:14px !important;
  }
  .hero-icons > div small{
    font-size:12px !important;
  }
  .quote-card{
    width:100% !important;
    max-width:420px !important;
    margin:0 auto -2px !important;
  }
  .stats .container.stats-grid{
    padding-top:16px !important;
    padding-bottom:16px !important;
    gap:16px !important;
  }
}
@media (max-width:560px){
  .hero h1{
    font-size:38px !important;
  }
  .hero-icons{
    grid-template-columns:1fr !important;
  }
  .quote-card{
    max-width:none !important;
  }
  .quote-form{
    padding:10px !important;
  }
}
