:root{
  --cream:#F6F8F5;
  --cream-card:#FFFFFF;
  --navy:#3A4A42;
  --navy-card:#445247;
  --ink:#33413A;
  --ink-muted:#5A675E;
  --paper:#F6F8F5;
  --paper-muted:#C3CDC6;
  --forest:#3A6B52;
  --forest-deep:#3E7259;
  --mint:#A9E0C4;
  --mint-pale:#EAF4EE;

  
  --font-display:'Inter',system-ui,sans-serif;
  --font-body:'Inter', -apple-system, sans-serif;

  --radius-card:30px;
  --shadow-card:0 24px 48px rgba(58,74,66,0.10);

  --wrap:1200px;
  --pad-x:24px;
  --pad-v:120px;
  --pad-v-m:64px;
}


:root{color-scheme:light;}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:var(--cream);
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--forest);color:#fff;}
:focus-visible{outline:2px solid var(--forest);outline-offset:3px;border-radius:4px;}
.section-dark :focus-visible,
.role-card-accent :focus-visible{outline-color:var(--mint);}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad-x);}
.section{padding:var(--pad-v-m) 0;}
@media(min-width:900px){:root{--pad-x:64px;}
}
@media(min-width:900px){.section{padding:var(--pad-v) 0;}
}
.section-dark{background:var(--navy);color:var(--paper);}
.section-tint{background:#EFEEE5;}

.h2{
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(28px,4vw,44px);
  line-height:1.12;
  margin:16px 0 20px;
  color:var(--ink);
}
.h2-dark{color:var(--paper);}
.accent{color:var(--forest);}
.h2-dark .accent{color:var(--mint);}
.eyebrow{
  display:block;
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--forest);
}
.eyebrow-dark{color:var(--mint);}
.lead{font-size:19px;line-height:1.6;color:var(--ink-muted);max-width:46ch;}
.lead-sm{font-size:17px;line-height:1.65;color:var(--ink-muted);max-width:48ch;}
.lead-sm-dark{color:var(--paper-muted);}

.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(245,244,239,.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(23,22,42,.06);
}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px;}

@media(max-width:1099px){
  .header-inner{flex-wrap:wrap;height:auto;padding-top:12px;padding-bottom:8px;gap:10px 16px;}
  .header-inner .logo{flex:0 0 auto;}
  .header-inner > .btn{flex:0 0 auto;margin-left:auto;}
  .header-nav{flex:1 0 100%;order:3;}
}
.logo{display:flex;align-items:center;gap:10px;}
.logo-mark{width:34px;height:34px;border-radius:10px;object-fit:cover;}
.logo-word{font-family:var(--font-display);font-weight:700;font-size:19px;color:var(--ink);}
.logo-word em{font-style:normal;color:var(--forest);}


.header-nav{
  display:flex;gap:18px;font-size:14px;font-weight:500;color:var(--ink-muted);
  overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  
  margin:0 -4px;padding:0 4px;
  background-image:
    linear-gradient(to right, rgba(234,244,238,1) 30%, rgba(234,244,238,0)),
    linear-gradient(to left,  rgba(234,244,238,1) 30%, rgba(234,244,238,0)),
    linear-gradient(to right, rgba(23,22,42,.14), rgba(23,22,42,0)),
    linear-gradient(to left,  rgba(23,22,42,.14), rgba(23,22,42,0));
  background-position:left center, right center, left center, right center;
  background-repeat:no-repeat;
  background-size:26px 100%, 26px 100%, 16px 100%, 16px 100%;
  background-attachment:local, local, scroll, scroll;
}
.header-nav::-webkit-scrollbar{display:none;}
.header-nav a{white-space:nowrap;padding:6px 0;}

.header-nav{background-color:var(--mint-pale);border-radius:999px;gap:2px;margin:0;padding:4px;}
.header-nav a{padding:8px 16px;border-radius:999px;transition:background-color .25s,color .25s;}
.header-nav a:hover{background:#fff;}

@media(max-width:411px){
  .header-inner{gap:10px 10px;}
  .site-header .logo{gap:8px;}
  .site-header .logo-mark{width:30px;height:30px;}
  .site-header .logo-word{font-size:17px;}
  .site-header .btn-sm{padding:9px 14px;font-size:13px;}
}

@media(max-width:339px){
  .site-header .wrap{padding-left:16px;padding-right:16px;}
  .site-header .logo-mark{width:28px;height:28px;}
  .site-header .logo-word{font-size:16px;}
  .site-header .btn-sm{padding:8px 12px;font-size:12.5px;}
}
@media(min-width:1100px){.header-nav{gap:2px;overflow:visible;margin:0;padding:4px;}
}
.header-nav a:hover{color:var(--forest);}


.header-nav a.is-here{background:var(--forest);color:#fff;}
.header-nav a.is-here:hover{background:var(--forest-deep);}

@media(min-width:700px) and (max-width:1099px){.header-nav{justify-content:space-around;}}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:14px 26px;border-radius:999px;
  font-weight:600;font-size:15px;
  border:1.5px solid transparent;
  cursor:pointer;transition:transform .15s ease, opacity .15s ease;
}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--forest);color:#fff;}
.btn-primary:hover{opacity:.92;}
.btn-ghost{color:var(--ink);border-color:rgba(23,22,42,.18);}
.section-dark .btn-ghost{color:var(--paper);border-color:rgba(245,244,239,.25);}
.btn-outline{background:transparent;color:var(--mint);border-color:var(--mint);}

.tariff-card .btn-outline,.cookie .btn-outline,#work-cross .btn-outline{color:var(--forest-deep);border-color:var(--forest);}
.btn-sm{padding:10px 20px;font-size:14px;}

.btn{white-space:nowrap;}
@media(max-width:359px){.btn-sm{padding:9px 14px;font-size:13px;}}
.btn-block{width:100%;}
.pill{
  display:inline-flex;align-items:center;
  background:var(--mint-pale);color:var(--forest-deep);
  font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:8px 16px;border-radius:999px;
}
.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;}

.usp-row{list-style:none;display:flex;flex-wrap:wrap;gap:10px 28px;margin:28px 0 0;padding:0;}
.usp-row li{position:relative;padding-left:24px;font-size:15px;line-height:1.45;color:var(--ink-muted);}
.usp-row li::before{
  content:'';position:absolute;left:2px;top:.42em;
  width:11px;height:6px;border:2px solid var(--forest);border-top:0;border-right:0;
  transform:rotate(-45deg);
}

@media(max-width:559px){.usp-row{flex-direction:column;gap:10px;}}

.work-cross-more{margin:28px 0 0;}
.pill-outline{background:transparent;border:1px solid rgba(23,22,42,.15);color:var(--ink-muted);}


.hero{padding-top:0;padding-bottom:0;position:relative;}
.hero-grid{padding-top:44px;padding-bottom:40px;}
@media(min-width:900px){.hero-grid{padding-top:64px;}
}

.hero-title{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(32px,4.6vw,52px);line-height:1.08;
  margin:18px 0 20px;color:var(--ink);
}
.hero-title .accent{display:block;font-size:.62em;line-height:1.15;margin-top:.18em;}
.hero .lead{font-size:16px;line-height:1.6;max-width:60ch;}

.lead{text-wrap:pretty;}
.hero .lead{text-wrap:balance;}
.hero-copy{max-width:640px;}

.hero-title-sub{display:block;margin-top:10px;font-size:max(18px,.42em);line-height:1.2;font-weight:600;color:var(--forest-deep);}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;}

.cross-link{margin:18px 0 0;font-size:15px;color:var(--ink-muted);}
.cross-link a{color:var(--forest-deep);font-weight:600;text-decoration:underline;text-underline-offset:3px;}

.hero-photo-wrap{
  position:relative;
  max-width:var(--wrap);margin:0 auto;padding:0 var(--pad-x);
}
.hero-photo{width:100%;height:auto;display:block;border-radius:var(--radius-card);}
.hero-photo-note{
  
  position:absolute;left:calc(var(--pad-x) + 20px);bottom:20px;
  display:flex;align-items:center;gap:10px;
  background:#fff;border-radius:16px;
  padding:12px 16px;
  box-shadow:0 20px 40px rgba(20,18,31,.12);
  font-size:13px;
}
.hero-photo-note strong{display:block;font-size:14px;}
.hero-photo-note span{color:var(--ink-muted);font-size:12px;}
.hero-photo-note .dot{width:8px;height:8px;border-radius:50%;background:var(--forest);flex-shrink:0;}

.fork-row{display:grid;grid-template-columns:1fr;gap:20px;margin-top:48px;}
@media(min-width:760px){.fork-row{grid-template-columns:1fr 1fr;}
}
.fork-card{
  background:var(--navy-card);border-radius:var(--radius-card);padding:36px;
}
.fork-card h3{font-family:var(--font-display);font-size:24px;margin:0 0 12px;}
.fork-card p{color:var(--paper-muted);margin:0;line-height:1.6;}
.fork-card-dark{background:var(--forest-deep);}
.fork-card-dark p{color:var(--paper);}
@media(min-width:760px){.stat-row{grid-template-columns:repeat(3,1fr);}
}
.accent-text{color:var(--mint);}
.stat-label{display:block;margin-top:10px;color:var(--paper-muted);font-size:14px;line-height:1.5;}

.solution-copy{max-width:640px;margin:0 auto;}
.quote{
  border-left:4px solid var(--forest);
  margin:28px 0 0;padding:4px 0 4px 20px;
  font-size:18px;font-style:normal;color:var(--ink);
}

.steps-row{display:grid;grid-template-columns:1fr;gap:18px;margin-top:44px;}
@media(min-width:640px){.steps-row{grid-template-columns:1fr 1fr;}
}
@media(min-width:1000px){.steps-row{grid-template-columns:repeat(5,1fr);}
}
.step-card{background:var(--cream-card);border-radius:var(--radius-card);padding:26px 22px;box-shadow:var(--shadow-card);}
.step-num{font-family:var(--font-display);font-weight:700;font-size:26px;color:var(--forest);}
.step-card h3{margin:14px 0 8px;font-size:16px;}
.step-card p{margin:0;color:var(--ink-muted);font-size:14px;line-height:1.5;}


.sr-only{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;
}


.safety-grid{display:grid;grid-template-columns:1fr;gap:44px;}
@media(min-width:900px){.safety-grid{grid-template-columns:1fr 1.3fr;align-items:start;}
}
.big-num{font-family:var(--font-display);font-weight:700;font-size:96px;color:var(--mint);line-height:1;margin-top:8px;}
.safety-list{display:flex;flex-direction:column;gap:12px;}
.safety-item{
  display:flex;gap:16px;align-items:flex-start;
  background:var(--navy-card);border-radius:var(--radius-card);padding:20px 22px;
}
.safety-item span{font-family:var(--font-display);font-size:20px;color:var(--mint);}
.safety-item strong{display:block;font-size:15px;margin-bottom:4px;}
.safety-item small{color:var(--paper-muted);font-size:13px;}
.safety-item-active{background:var(--forest-deep);}

.safety-item-active span,.safety-item-active small{color:var(--paper);}

.role-row{display:grid;grid-template-columns:1fr;gap:20px;margin-top:44px;}
@media(min-width:760px){.role-row{grid-template-columns:1fr 1fr;}
}
.role-card{background:var(--cream-card);border-radius:var(--radius-card);padding:40px;box-shadow:var(--shadow-card);}
.role-icon{display:block;}
.role-card h3{font-family:var(--font-display);font-size:24px;margin:14px 0 10px;}
.role-card p{color:var(--ink-muted);line-height:1.6;margin:0 0 24px;}
.role-card-accent{background:var(--navy);color:var(--paper);}
.role-card-accent p{color:var(--paper-muted);}
.role-card p.escort-parent-lead{font-size:13px;margin:0 0 8px;color:var(--paper-muted);}
.escort-parent-notes{list-style:none;margin:0 0 24px;padding:0;font-size:13px;line-height:1.5;color:var(--paper-muted);}
.escort-parent-notes li{position:relative;padding-left:16px;margin-bottom:6px;}
.escort-parent-notes li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;background:var(--mint);}

.review-placeholder-row{display:grid;grid-template-columns:1fr;gap:20px;margin-top:44px;}
@media(min-width:760px){.review-placeholder-row{grid-template-columns:1fr 1fr 1fr;}
}
.review-placeholder{
  border:2px dashed var(--paper-muted);border-radius:var(--radius-card);
  padding:40px 24px;text-align:center;background:transparent;
}
.review-placeholder-icon{display:block;font-size:28px;letter-spacing:.2em;color:var(--paper-muted);margin-bottom:12px;}
.review-placeholder p{margin:0;color:var(--ink-muted);font-size:15px;}

.faq-list{display:flex;flex-direction:column;gap:14px;margin-top:36px;max-width:64ch;}
.faq-item{
  background:var(--cream-card);border-radius:var(--radius-card);
  padding:20px 24px;box-shadow:var(--shadow-card);
}
.faq-item summary{
  cursor:pointer;font-weight:600;list-style:none;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
  content:"+";flex:none;font-size:20px;line-height:1;color:var(--forest);
  transition:transform .2s ease;
}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{margin:14px 0 0;color:var(--ink-muted);font-size:15px;line-height:1.6;}

.faq-role-input{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;
}
.faq-switch{display:flex;gap:10px;max-width:420px;margin:0 0 22px;}
.faq-switch label{
  flex:1;display:flex;align-items:center;justify-content:center;
  text-align:center;font-size:13px;font-weight:600;
  border:1.5px solid rgba(23,22,42,.15);border-radius:12px;padding:10px;cursor:pointer;
  color:var(--ink-muted);
}
.faq-switch label:hover{border-color:var(--forest);}
#faqRoleParent:checked ~ .faq-switch label[for="faqRoleParent"],
#faqRoleEscort:checked ~ .faq-switch label[for="faqRoleEscort"]{
  border-color:var(--forest);background:var(--mint-pale);color:var(--forest);
}
#faqRoleParent:focus-visible ~ .faq-switch label[for="faqRoleParent"],
#faqRoleEscort:focus-visible ~ .faq-switch label[for="faqRoleEscort"]{
  outline:2px solid var(--forest);outline-offset:2px;
}
#faqRoleEscort:checked ~ .faq-list-parent{display:none;}
#faqRoleParent:checked ~ .faq-list-escort{display:none;}



.section-cta{background:#32403A;}
.cta-grid{display:grid;grid-template-columns:1fr;gap:44px;align-items:start;}
@media(min-width:900px){.cta-grid{grid-template-columns:1fr 1fr;}
}
.cta-form{
  background:var(--cream-card);border-radius:var(--radius-card);padding:36px;
  display:flex;flex-direction:column;gap:14px;
}
.map-embed{
  border-radius:var(--radius-card);overflow:hidden;aspect-ratio:16/9;
}
.map-embed iframe{width:100%;height:100%;border:0;display:block;}

.map-facade{
  width:100%;height:100%;border:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:6px;text-align:center;
  padding:24px;cursor:pointer;font:inherit;color:var(--ink);
  background:
    linear-gradient(rgba(255,255,255,.55),rgba(255,255,255,.55)),
    repeating-linear-gradient(0deg,rgba(23,22,42,.10) 0 1px,transparent 1px 34px),
    repeating-linear-gradient(90deg,rgba(23,22,42,.10) 0 1px,transparent 1px 34px),
    var(--cream-card);
}
.map-facade:hover,.map-facade:focus-visible{background-color:rgba(23,22,42,.04);}
.map-facade-pin{
  width:18px;height:18px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);
  background:var(--forest);margin-bottom:6px;
}
.map-facade-title{font-size:16px;font-weight:600;}
.map-facade-action{font-size:14px;color:var(--forest);text-decoration:underline;text-underline-offset:2px;}
.map-facade-note{font-size:12px;line-height:1.4;color:var(--paper-muted);max-width:34ch;}
.map-caption{margin:10px 0 0;font-size:13px;color:var(--paper-muted);}
.role-switch{display:flex;gap:10px;margin-bottom:6px;}

.form-lead{margin:0 0 4px;font-size:15px;line-height:1.55;color:var(--ink-muted);}

.escort-terms{
  margin:2px 0 4px;padding:14px 16px;border-radius:14px;
  background:var(--mint-pale);border:1px solid rgba(58,107,82,.16);
}
.escort-terms .escort-parent-lead{margin:0 0 8px;font-size:13px;font-weight:600;color:var(--ink);}
.escort-terms .escort-parent-notes{margin:0;color:var(--ink-muted);}
.escort-terms .escort-parent-notes li::before{background:var(--forest);}

.role-switch label{
  flex:1;display:flex;align-items:center;justify-content:center;
  text-align:center;font-size:13px;font-weight:600;
  border:1.5px solid rgba(23,22,42,.15);border-radius:12px;padding:10px;cursor:pointer;
  color:var(--ink-muted);
}
.role-switch input{display:none;}
.role-switch input:checked + span{color:var(--forest);}
.role-switch label:has(input:checked){border-color:var(--forest);background:var(--mint-pale);}

.cta-form input[type=text],.cta-form input[type=tel],.cta-form input[type=email]{
  padding:14px 16px;border-radius:12px;border:1.5px solid rgba(23,22,42,.15);
  font-family:var(--font-body);font-size:15px;color:var(--ink);background:#fff;
}
.cta-form input:focus{outline:none;border-color:var(--forest);}

.field-label{display:block;font-size:13px;color:var(--ink-muted);margin:2px 0 -6px;}
.field-select{
  padding:14px 16px;border-radius:12px;border:1.5px solid rgba(23,22,42,.15);
  font-family:var(--font-body);font-size:15px;color:var(--ink);background:#fff;
  width:100%;appearance:none;cursor:pointer;
  
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%235A675E' stroke-width='1.6' stroke-linecap='round'/></svg>");
  background-repeat:no-repeat;background-position:right 16px center;
}
.field-select:focus{outline:none;border-color:var(--forest);}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-muted);}
.consent a{color:var(--forest);text-decoration:underline;}
.form-note{color:var(--forest);font-size:14px;text-align:center;margin:0;}

.field-hint{display:block;color:var(--ink-muted);font-size:13px;margin:-4px 0 4px;}

.site-footer{background:var(--navy);color:var(--paper-muted);padding:40px 0;}

.footer-inner{display:flex;flex-direction:column;gap:0;align-items:stretch;}
.footer-top{display:flex;flex-direction:column;gap:22px;align-items:flex-start;padding-bottom:26px;}
@media(min-width:760px){.footer-top{flex-direction:row;align-items:center;justify-content:space-between;gap:40px;}
}

.footer-bottom{
  display:flex;flex-direction:column;gap:12px;
  border-top:1px solid rgba(255,255,255,.10);padding-top:20px;
}
.footer-service{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;}
.footer-service a:hover{color:var(--mint);}

.logo-footer{flex:0 0 auto;}

.logo-footer .logo-word{color:var(--paper);}

.logo-footer .logo-word em{color:var(--mint);}
.footer-nav{display:flex;flex-wrap:wrap;gap:20px;font-size:13px;}
.footer-nav a:hover{color:var(--mint);}


.footer-org{
  font-style:normal;font-size:12px;line-height:1.6;color:rgba(232,239,233,.8);
  max-width:92ch;
}
.footer-org-name{color:var(--paper);font-weight:600;}
.footer-org a{color:inherit;text-decoration:underline;text-underline-offset:2px;}


.footer-channels{display:flex;flex-wrap:wrap;gap:20px 28px;}
.footer-chat,.footer-social{display:flex;flex-direction:column;gap:10px;}
.footer-chat-title{font-size:13px;color:var(--paper-muted);}
.footer-chat-links{display:flex;gap:12px;}
.chat-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:44px;border-radius:14px;
  background:rgba(255,255,255,.10);color:var(--paper);
  transition:background .18s ease, color .18s ease;
}
.chat-icon svg{width:22px;height:22px;display:block;}
.chat-icon:hover{background:var(--forest);color:#fff;}
.chat-icon:focus-visible{outline:2px solid var(--forest);outline-offset:3px;}

.footer-pay{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;}
.footer-pay-title{font-size:12px;color:rgba(232,239,233,.8);}
.pay-mark{display:inline-flex;align-items:center;background:#fff;border-radius:6px;padding:5px;}
.pay-mark img{display:block;height:24px;width:auto;}

.footer-apps{gap:10px 10px;}
.store-badge{display:inline-flex;padding:0;line-height:0;}
.store-badge img{display:block;height:40px;width:auto;}
.store-badge-google img{height:52px;margin:-6px 0;}

@media (max-width:480px){.footer-apps .footer-pay-title{flex-basis:100%;}}

.download-title{margin:0;font-size:22px;line-height:1.25;font-weight:600;color:var(--ink);}
.download-badges{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}
.download-qr{display:flex;align-items:center;gap:16px;margin-top:6px;}
.download-qr img{display:block;width:160px;height:160px;flex:none;}
.download-qr p{margin:0;font-size:14px;line-height:1.5;color:var(--ink-muted);}
@media (max-width:899px), (hover:none){.download-qr{display:none;}}
.footer-marks{display:block;font-size:11px;line-height:1.4;color:rgba(232,239,233,.55);}
.footer-copy{font-size:12px;color:rgba(232,239,233,.7);}




@media (prefers-reduced-motion: reduce){
  .reveal{opacity:1 !important;transform:none !important;}
*{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}


.lead-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}

.cookie{
  position:fixed;z-index:200;left:0;right:0;bottom:0;display:none;
  flex-direction:row;align-items:center;gap:12px;
  background:var(--paper);border-top:1px solid rgba(26,26,46,.16);
  box-shadow:0 -10px 24px -18px rgba(26,26,46,.55);
  padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));
}

@media (min-width:1025px){
  .cookie{padding-left:max(14px, calc((100vw - 1160px) / 2));
          padding-right:max(14px, calc((100vw - 1160px) / 2));}
  .cookie-text{font-size:12.5px;}

.cookie-actions{display:flex;gap:8px;flex:0 0 auto;align-items:center;}
@media(max-width:720px){
  .cookie-actions{width:100%;}
  .cookie-actions .btn{flex:1 1 0;}
}
}
.cookie.is-shown{display:flex;}
.cookie-text{margin:0;font-size:12px;line-height:1.45;color:var(--ink);}
.cookie-text a{color:var(--forest);text-decoration:underline;text-underline-offset:2px;}
.cookie .btn{align-self:center;}

.cookie-text{
  
  max-height:4.05em;overflow-y:auto;-webkit-overflow-scrolling:touch;
  -webkit-mask-image:linear-gradient(180deg,#000 60%,rgba(0,0,0,.15) 100%);
  mask-image:linear-gradient(180deg,#000 60%,rgba(0,0,0,.15) 100%);
}
.cookie .btn{align-self:center;flex:0 0 auto;}

@media (max-width:1024px){ .cookie-text{font-size:11.5px;} }
body.has-cookie{padding-bottom:var(--cookie-h,0px);}


.thanks{
  position:fixed;inset:0;z-index:300;
  display:flex;align-items:center;justify-content:center;
  padding:24px;overflow-y:auto;-webkit-overflow-scrolling:touch;
}

.thanks[hidden]{display:none;}
.thanks-veil{position:fixed;inset:0;background:rgba(58,74,66,.55);}
.thanks-card{
  position:relative;z-index:1;margin:auto;
  width:min(440px,100%);
  background:var(--cream-card);border-radius:var(--radius-card);box-shadow:var(--shadow-card);
  padding:38px 32px 32px;text-align:center;
  animation:thanks-in .22s ease-out both;
}

@keyframes thanks-in{from{opacity:0;transform:translateY(8px) scale(.98);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){ .thanks-card{animation:none;} }
.thanks-card:focus{outline:none;}
.thanks-x{
  position:absolute;top:12px;right:12px;width:40px;height:40px;
  display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:12px;background:transparent;color:var(--ink-muted);cursor:pointer;
  transition:background .18s ease,color .18s ease;
}
.thanks-x svg{width:20px;height:20px;display:block;}
.thanks-x:hover{background:var(--mint-pale);color:var(--ink);}
.thanks-x:focus-visible{outline:2px solid var(--forest);outline-offset:2px;}
.thanks-title{font-family:var(--font-display);font-size:23px;line-height:1.25;margin:0 0 12px;color:var(--ink);}
.thanks-text{margin:0 0 18px;font-size:15px;line-height:1.5;color:var(--ink-muted);}
.thanks-faster{margin:0 0 18px;font-size:15px;line-height:1.5;color:var(--ink);}
.thanks-chat{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:0 0 22px;}

.thanks-chat-icon{
  width:auto;height:48px;gap:8px;padding:0 18px;border-radius:14px;
  background:var(--mint-pale);color:var(--forest);
  font-size:15px;font-weight:600;
}
.thanks-chat-icon svg{width:20px;height:20px;}
.thanks-chat-icon:hover{background:var(--forest);color:#fff;}
.thanks-ok{width:100%;}
@media (max-width:600px){
  .thanks{padding:16px;}
  .thanks-card{padding:32px 20px 24px;}
  .thanks-title{font-size:21px;}
  .thanks-chat{gap:10px;}
  .thanks-chat-icon{padding:0 14px;font-size:14px;}
}

.section-divider{background:var(--mint-pale);padding:56px 0;}
.divider-line{
  margin:0 auto;max-width:30em;text-align:center;text-wrap:balance;
  display:flex;flex-direction:column;gap:10px;
}

.divider-name{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(24px,3.2vw,36px);line-height:1.15;color:var(--forest-deep);
  letter-spacing:-.01em;
}

.divider-tail{
  font-family:var(--font-body);font-weight:400;
  font-size:clamp(16px,1.7vw,21px);line-height:1.5;color:var(--ink-muted);
}


.verb-slot{display:block;margin-top:2px;}

.verb{display:inline-block;color:var(--forest-deep);font-weight:600;}
.verb.is-changing{animation:verb-in .42s ease;}
@keyframes verb-in{from{opacity:0;transform:translateY(8px);}
to{opacity:1;transform:none;}
}

.cta-pair{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:32px;}



.eyebrow-brand{text-transform:none;letter-spacing:.02em;font-size:14px;}


@media(max-width:999px){
  .steps-row{grid-template-columns:1fr;gap:10px;}
.step-card{
    aspect-ratio:auto;padding:16px 18px;
    display:grid;grid-template-columns:auto 1fr;gap:2px 16px;align-items:start;
  }
.step-num{grid-row:1 / span 2;align-self:center;line-height:1;}
.step-card h3{margin:0 0 3px;}
}

@media(max-width:639px){
  .step-card{padding:15px 16px;}
.step-num{font-size:24px;}
.step-card h3{font-size:14px;line-height:1.25;}
.step-card p{font-size:12.5px;line-height:1.4;}
}

.placeholder-row{display:grid;grid-template-columns:1fr;gap:18px;margin-top:36px;}
@media(min-width:720px){.placeholder-row{grid-template-columns:repeat(3,1fr);}
}
.placeholder-card,.faq-item-empty{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  background:transparent;border:1.5px dashed rgba(58,74,66,.28);
  border-radius:var(--radius-card);box-shadow:none;
  padding:36px 24px;text-align:center;
}
.faq-item-empty{padding:22px 24px;}
.placeholder-dots{color:var(--paper-muted);font-size:20px;line-height:1;letter-spacing:.12em;}
.placeholder-note{color:var(--ink-muted);font-size:14px;}
.placeholder-card{min-height:200px;}




.review-row{
  display:flex;gap:18px;margin-top:16px;
  overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.review-row::-webkit-scrollbar{display:none;}
.review-row{
  --strip-bg:#EFEEE5;
  padding-bottom:6px;
  background-image:
    linear-gradient(to right, var(--strip-bg) 30%, rgba(239,238,229,0)),
    linear-gradient(to left,  var(--strip-bg) 30%, rgba(239,238,229,0)),
    linear-gradient(to right, rgba(23,22,42,.12), rgba(23,22,42,0)),
    linear-gradient(to left,  rgba(23,22,42,.12), rgba(23,22,42,0));
  background-position:left center, right center, left center, right center;
  background-repeat:no-repeat;
  background-size:30px 100%, 30px 100%, 18px 100%, 18px 100%;
  background-attachment:local, local, scroll, scroll;
}
.review-row > .review-card{flex:0 0 auto;width:100%;scroll-snap-align:start;}
@media(min-width:860px){
  .review-row > .review-card{width:calc(50% - 9px);}
}
@media(min-width:1180px){
  .review-row > .review-card{width:calc(33.333% - 12px);}
}
.review-card{
  background:var(--cream-card);border-radius:var(--radius-card);
  padding:26px 28px;box-shadow:var(--shadow-card);
}
.review-lead{margin:0;font-size:15px;line-height:1.6;color:var(--ink);}

.review-more summary{
  cursor:pointer;list-style:none;margin-top:12px;
  font-size:14px;font-weight:600;color:var(--forest);
  text-decoration:underline;text-underline-offset:3px;
}
.review-more summary::-webkit-details-marker{display:none;}
.review-more summary::after{content:' +';text-decoration:none;}
.review-more[open] summary::after{content:' −';}
.review-more[open] summary{margin-bottom:4px;}
.review-more p{margin:8px 0 0;font-size:15px;line-height:1.6;color:var(--ink-muted);}
.review-more summary:focus-visible{outline:2px solid var(--forest);outline-offset:3px;border-radius:4px;}

.story-wrap{max-width:1040px;}







.gallery{position:relative;display:flex;align-items:center;gap:14px;}
.gallery > .gallery-strip{flex:1 1 auto;min-width:0;}
.gal-arrows{flex:0 0 auto;display:flex;gap:8px;}

@media(max-width:860px){
  
  .gallery{flex-direction:column;align-items:stretch;gap:10px;}
  .gal-arrows{justify-content:flex-end;}
  .gal-arrow{width:40px;height:40px;}
}
.gal-arrow{
  width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--cream-card);color:var(--ink);
  box-shadow:0 4px 14px rgba(20,18,31,.12);
  display:flex;align-items:center;justify-content:center;
  transition:background .18s ease, transform .18s ease;
}
.gal-arrow svg{width:22px;height:22px;display:block;}
.gal-arrow:hover{background:#fff;transform:translateY(-1px);}
.gal-arrow:hover{background:#fff;}
.gal-arrow:focus-visible{outline:2px solid var(--forest);outline-offset:3px;}

.gal-arrow[disabled]{opacity:0;pointer-events:none;}

.gal-arrow[hidden]{display:none;}
.story-grid{
  display:flex;gap:12px;margin-top:32px;
  overflow-x:auto;scroll-snap-type:x mandatory;
  scrollbar-width:none;-webkit-overflow-scrolling:touch;
  
  background-image:
    linear-gradient(to right, rgba(246,248,245,1) 30%, rgba(246,248,245,0)),
    linear-gradient(to left,  rgba(246,248,245,1) 30%, rgba(246,248,245,0)),
    linear-gradient(to right, rgba(23,22,42,.12), rgba(23,22,42,0)),
    linear-gradient(to left,  rgba(23,22,42,.12), rgba(23,22,42,0));
  background-position:left center, right center, left center, right center;
  background-repeat:no-repeat;
  background-size:30px 100%, 30px 100%, 18px 100%, 18px 100%;
  background-attachment:local, local, scroll, scroll;
}
.story-grid::-webkit-scrollbar{display:none;}
.story-grid > .video-frame{
  flex:0 0 auto;width:100%;scroll-snap-align:start;
}
@media(min-width:720px){
  .story-grid{gap:20px;}
  .story-grid > .video-frame{width:260px;}
}

.story-grid > .video-frame-wide .video-facade{aspect-ratio:9/16;}

.story-grid > .video-frame-wide .video-poster{object-fit:cover;object-position:center;}


@media(max-width:639px){
  .video-frame-tall .video-play{width:44px;height:44px;}
  .video-frame-tall .video-play::before{border-width:9px 0 9px 14px;}
  .video-frame-tall .video-label{font-size:13px;bottom:12px;}
}

.video-frame{border-radius:var(--radius-card);overflow:hidden;box-shadow:var(--shadow-card);}
.video-facade{
  position:relative;display:block;width:100%;padding:0;border:0;cursor:pointer;
  
  background:var(--navy);aspect-ratio:16/9;
}
.video-frame-tall .video-facade{aspect-ratio:9/16;}
.video-poster{width:100%;height:100%;object-fit:cover;display:block;}

.video-facade::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(23,29,25,.12) 0%,rgba(23,29,25,.62) 100%);
}
.video-play{
  position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:2;
  width:72px;height:72px;border-radius:50%;background:rgba(255,255,255,.92);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 12px 32px rgba(23,29,25,.32);transition:transform .18s ease;
}

.video-play::before{
  content:'';margin-left:5px;
  border-style:solid;border-width:13px 0 13px 21px;
  border-color:transparent transparent transparent var(--forest);
}
.video-facade:hover .video-play,.video-facade:focus-visible .video-play{transform:translate(-50%,-50%) scale(1.06);}
.video-label{
  position:absolute;left:0;right:0;bottom:18px;z-index:2;
  color:#fff;font-family:var(--font-body);font-weight:600;font-size:17px;
}
.video-note{
  position:absolute;left:24px;right:24px;bottom:18px;z-index:2;
  color:rgba(255,255,255,.82);font-size:12.5px;line-height:1.4;
}
.video-frame video{display:block;width:100%;height:auto;background:#000;}
@media(max-width:639px){
  .video-play{width:58px;height:58px;}
.video-play::before{border-width:11px 0 11px 17px;}
.video-label{bottom:52px;font-size:15px;}
.video-note{left:16px;right:16px;font-size:11.5px;}
}


.tariff-roles{margin-top:30px;}

.tariff-role-input{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;
  clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;
}

.tariff-switch{display:flex;gap:10px;max-width:420px;}
.tariff-switch label{
  flex:1;display:flex;align-items:center;justify-content:center;
  text-align:center;font-size:13px;font-weight:600;
  border:1.5px solid rgba(23,22,42,.15);border-radius:12px;padding:10px;cursor:pointer;
  color:var(--ink-muted);
  transition:border-color .15s ease,color .15s ease,background .15s ease;
}
.tariff-switch label:hover{border-color:var(--forest);}
#tariffRoleParent:checked ~ .tariff-switch label[for="tariffRoleParent"],
#tariffRoleEscort:checked ~ .tariff-switch label[for="tariffRoleEscort"]{
  border-color:var(--forest);background:var(--mint-pale);color:var(--forest);
}
#tariffRoleParent:focus-visible ~ .tariff-switch label[for="tariffRoleParent"],
#tariffRoleEscort:focus-visible ~ .tariff-switch label[for="tariffRoleEscort"]{
  outline:2px solid var(--forest);outline-offset:2px;
}

.tariff-panel{display:none;}
#tariffRoleParent:checked ~ .tariff-panel-parent,
#tariffRoleEscort:checked ~ .tariff-panel-escort{display:block;}

.tariff-head{display:none;margin-bottom:0;}
#tariffRoleParent:checked ~ .tariff-head-parent,
#tariffRoleEscort:checked ~ .tariff-head-escort{display:block;}
.tariff-roles .tariff-switch{margin-top:26px;}
.tariff-row{display:grid;grid-template-columns:1fr;gap:18px;margin-top:36px;align-items:stretch;}
@media(min-width:900px){.tariff-row{grid-template-columns:repeat(3,1fr);}
}

@media(max-width:899px){
  .tariff-row{
    display:flex;gap:14px;
    overflow-x:auto;scroll-snap-type:x mandatory;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
    
    
    padding-top:18px;padding-bottom:26px;
    margin-top:-18px;
    background-image:
      linear-gradient(to right, rgba(246,248,245,1) 30%, rgba(246,248,245,0)),
      linear-gradient(to left,  rgba(246,248,245,1) 30%, rgba(246,248,245,0)),
      linear-gradient(to right, rgba(23,22,42,.12), rgba(23,22,42,0)),
      linear-gradient(to left,  rgba(23,22,42,.12), rgba(23,22,42,0));
    background-position:left center, right center, left center, right center;
    background-repeat:no-repeat;
    background-size:30px 100%, 30px 100%, 18px 100%, 18px 100%;
    background-attachment:local, local, scroll, scroll;
  }
  .tariff-row::-webkit-scrollbar{display:none;}
  
  .tariff-row > .tariff-card{
    flex:0 0 auto;width:100%;scroll-snap-align:start;
    padding:22px 20px;
  }
  
  .tariff-row .tariff-name{font-size:18px;margin-bottom:6px;}
  .tariff-row .tariff-what{margin-bottom:14px;}
  .tariff-row .tariff-days{margin-bottom:16px;}
  .tariff-row .tariff-per{margin-top:6px;}
  .tariff-row .tariff-trips{margin-bottom:12px;}
  .tariff-row .tariff-who{margin-bottom:14px;}
}
.tariff-card{
  position:relative;display:flex;flex-direction:column;
  background:var(--cream-card);border:1.5px solid rgba(58,74,66,.12);
  border-radius:var(--radius-card);padding:28px 26px;box-shadow:var(--shadow-card);
}

.tariff-card.is-picked{border-color:var(--forest);background:var(--mint-pale);}
.tariff-flag{position:absolute;top:-13px;left:26px;}
.tariff-name{margin:0 0 8px;font-family:var(--font-display);font-size:20px;}
.tariff-what{margin:0 0 20px;color:var(--ink-muted);font-size:14px;line-height:1.5;}
.tariff-days-label{
  display:block;margin-bottom:8px;font-size:12px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);
}

.tariff-days{display:flex;gap:8px;margin-bottom:22px;}
.tariff-day{
  flex:1;padding:10px 6px;cursor:pointer;
  font-family:var(--font-body);font-size:13px;font-weight:600;color:var(--ink-muted);
  background:transparent;border:1.5px solid rgba(58,74,66,.16);border-radius:12px;
  transition:border-color .15s ease,color .15s ease,background .15s ease;
}
.tariff-day:hover{border-color:var(--forest);}
.tariff-day.is-on{border-color:var(--forest);color:var(--forest-deep);background:var(--cream-card);}
.tariff-day:focus-visible{outline:2px solid var(--forest);outline-offset:2px;}
.tariff-price{margin:0;display:flex;align-items:baseline;gap:8px;}

.tariff-big{
  font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.1;
  color:var(--ink);font-variant-numeric:tabular-nums;
}
.tariff-price small{font-size:13px;color:var(--ink-muted);}
.tariff-per{margin:8px 0 2px;font-size:14px;color:var(--ink-muted);font-variant-numeric:tabular-nums;}
.tariff-trips{margin:0 0 18px;font-size:13px;color:var(--ink-muted);font-variant-numeric:tabular-nums;}

.tariff-who{
  margin:0 0 22px;padding-top:14px;border-top:1px solid rgba(58,74,66,.10);
  font-size:13px;color:var(--ink-muted);
}
.tariff-examples{margin:0;padding-left:18px;color:var(--ink-muted);font-size:14px;line-height:1.7;}
.tariff-card .btn{margin-top:auto;align-self:flex-start;}
.tariff-card-free{background:var(--cream-card);}

.tariff-days-slot:empty{min-height:0;}
.tariff-foot{display:flex;flex-direction:column;align-items:flex-start;}
@media(min-width:900px){
  @supports (grid-template-rows: subgrid){
    .tariff-row{grid-template-rows:repeat(5,auto);}
.tariff-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;}

    .tariff-card{row-gap:20px;}

    .tariff-what,.tariff-days,.tariff-trips{margin-bottom:0;}
.tariff-figures,.tariff-days-slot{align-self:start;}
.tariff-foot{justify-content:flex-end;}
}
}

.tariff-checks-label{
  margin:30px 0 12px;font-size:12px;font-weight:700;letter-spacing:.06em;
  text-transform:uppercase;color:var(--ink-muted);
}
.tariff-checks{list-style:none;margin:0;padding:0;display:grid;gap:12px;max-width:64ch;}
.tariff-check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.55;color:var(--ink-muted);}

.tariff-check::before{
  content:"✓";flex:none;display:grid;place-items:center;
  width:22px;height:22px;border-radius:50%;
  background:var(--mint-pale);color:var(--forest-deep);
  font-size:12px;font-weight:700;line-height:1;
}
@media(min-width:760px){.tariff-notes{grid-template-columns:repeat(3,1fr);}
}

.tariff-zone{margin:20px 0 0;font-size:13px;color:var(--ink-muted);}

.tariff-card{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;}
.tariff-card:hover{border-color:var(--forest);}
.tariff-card:focus-visible{outline:2px solid var(--forest);outline-offset:3px;}

.tariff-card a{cursor:pointer;}



@media(max-width:719px){
  .story-grid{background-image:none;}
  .story-grid > .video-frame{box-shadow:none;}
}

.review-row{background-image:none;}
.review-row > .review-card{box-shadow:none;}
@media(max-width:899px){
  .tariff-row{background-image:none;}
  .tariff-row > .tariff-card{box-shadow:none;}
}


