/* Launch brief (Oct 11, 2026): the hero's local line, how it works in four steps, one team,
   discretion, the phone in the header, the mobile bar and the footer identity. Same tokens. */
.hero-editorial .hero-local{font-size:14px;line-height:1.6;color:#d1d0c6;max-width:330px}
/* four steps: the heading on top, the steps across the full width */
.booking-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
.booking-note{margin:0;font-size:14px;line-height:1.6;color:var(--ink);border-top:1px solid var(--line);padding-top:18px}
@media(min-width:551px){
 .booking-path{grid-template-columns:1fr;gap:40px}
 .booking-intro{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px 40px}
 .booking-intro>.eyebrow{grid-column:1/-1}
 .booking-intro h2{max-width:none}
 .booking-intro .text-link{justify-self:end}
}
.team-section{display:grid;grid-template-columns:.85fr 1.5fr;gap:7%;padding-block:24px 84px;align-items:start}
.team-head{display:grid;gap:18px}
.team-head h2{font-size:clamp(40px,4.4vw,68px);line-height:.96;margin:0}
.team-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
.team-list li{padding:18px 0;border-bottom:1px solid var(--line);font:600 clamp(20px,1.9vw,28px)/1.1 var(--display);text-transform:uppercase;letter-spacing:-.005em}
.discretion-section{background:var(--paper);color:var(--ink);padding-block:84px}
.discretion-grid{display:grid;grid-template-columns:.85fr 1.5fr;gap:7%;align-items:start}
.discretion-grid .eyebrow{margin:0;color:var(--muted)}
.discretion-grid h2{font-size:clamp(40px,4.6vw,72px);line-height:.95;margin:0 0 28px;max-width:16ch}
.discretion-grid p:not(.eyebrow){font-size:18px;line-height:1.65;margin:0 0 10px;max-width:56ch;color:var(--muted)}
.discretion-grid .discretion-close{margin-top:22px;color:var(--ink);font-weight:500}
.header-phone{font-size:13px;font-weight:600;white-space:nowrap}
.header-phone:hover{text-decoration:underline;text-underline-offset:5px}
.mobile-menu .mobile-menu-phone{font-size:.5em}
.check-field{display:flex;align-items:center;gap:10px;font-size:12px;cursor:pointer;margin-top:4px}
.check-field input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--ink);flex:none}
.proof-private{margin:16px 0 0;font-size:16px;line-height:1.6;color:var(--stage-muted,#d1d0c6);max-width:52ch}
.thank-you-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:20px}
.footer-identity p+p{margin-top:8px}
.mobile-bar{display:none}
@media(min-width:801px) and (max-width:900px){.header-phone{display:none}}
@media(max-width:900px){
 .booking-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .team-section,.discretion-grid{grid-template-columns:1fr;gap:28px}
 .team-list{grid-template-columns:1fr}
}
@media(max-width:800px){
 /* the mobile bar: plan your event and WhatsApp, always at hand */
 .mobile-bar{display:grid;grid-template-columns:1.4fr 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:58;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 24px #17181518}
 .mobile-bar .button{min-height:48px;padding:12px 14px;font-size:14px}
 .mobile-bar-whatsapp{display:grid;place-items:center;min-height:48px;border:1px solid var(--ink);border-radius:var(--radius,4px);font-size:14px;font-weight:600;color:var(--ink)}
 body:has(.mobile-bar){padding-bottom:calc(70px + env(safe-area-inset-bottom))}
 /* the phone in the header (launch brief, B6): it takes the button's place, the bar carries Plan your event */
 .header-phone{font-size:13px}
 body:has(.mobile-bar) .header-actions .header-cta{display:none}
 body:has(.mobile-bar) .to-top{bottom:calc(84px + env(safe-area-inset-bottom))}
 body:has(.mobile-bar) .cookie-note{bottom:calc(80px + env(safe-area-inset-bottom))}
}
@media(max-width:550px){
 .booking-steps{grid-template-columns:1fr}
 .team-section{padding-block:8px 56px}
 .discretion-section{padding-block:56px}
 .discretion-grid p:not(.eyebrow){font-size:16px}
 .proof-stats dt{white-space:normal}
}
@media print{.mobile-bar{display:none!important}}

/* ad landings (/private-events, /yacht-events, /corporate-events): the form sits on the page */
.landing-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:6%;align-items:center;padding-block:56px 72px}
.landing-copy{display:grid;gap:26px;align-content:center}
.landing-copy .eyebrow{margin:0}
.landing-copy h1{font-size:clamp(56px,6.6vw,104px);line-height:.9;letter-spacing:-.02em;margin:0;text-wrap:balance}
.landing-sub{font-size:19px;line-height:1.55;color:var(--muted);max-width:46ch;margin:0}
.landing-actions{display:flex;align-items:center;gap:20px 30px;flex-wrap:wrap}
.landing-photo{margin:0}
.landing-photo img{width:100%;height:clamp(380px,46vw,640px);object-fit:cover;border-radius:var(--photo-radius,14px)}
.landing-photo figcaption{font-size:10px;letter-spacing:.05em;color:var(--muted);padding-top:10px}
.landing-page .booking-path{border-top:1px solid var(--line)}
.landing-form{scroll-margin-top:96px;border-top:1px solid var(--line)}
.landing-form .inquiry-intro h2{font-size:clamp(56px,6.4vw,100px);line-height:.88;margin:18px 0 26px}
@media(max-width:800px){
 .landing-hero{grid-template-columns:1fr;gap:28px;padding-block:28px 40px}
 .landing-copy h1{font-size:13vw}
 .landing-sub{font-size:16px}
 .landing-photo img{height:300px}
 .landing-form .inquiry-intro h2{font-size:15vw}
}
