/* Measurements from reference at 1440px: 60px side padding, 48px controls,
   16px header top, 12px label/title gap, 40px heading/content gap. */
:root{--container:1560px;--page-pad:60px;--gutter:16px;--section-space:100px}
.header{height:80px;padding:16px var(--page-pad);align-items:center;max-width:1680px;display:grid;grid-template-columns:48px 1fr auto;gap:16px}.header .brand{width:160px;height:41px;top:19px;left:50%;transform:translateX(-50%)}.header-contact{grid-column:3;margin:0;height:48px;min-width:212px;padding:0 20px;font-size:14px;font-weight:500;border-radius:12px;gap:12px}.menu-toggle{grid-column:1;grid-row:1;width:48px;height:48px;border-radius:12px}.header-contacts{grid-column:2;grid-row:1;justify-self:start;display:flex;gap:16px;align-items:center;height:48px;background:#171a23b8;border-radius:12px;padding:0 20px}.header-phone{font-size:14px;line-height:1;white-space:nowrap}.header-icon{display:flex;align-items:center;justify-content:center;width:20px;height:32px}.header-icon .icon{width:19px;height:19px}.header nav{top:76px;left:var(--page-pad);padding:24px;gap:20px}.hero-content{padding-top:clamp(176px,29.3svh,300px);padding-bottom:200px;max-width:1120px}.hero h1{font-size:64px;line-height:1;letter-spacing:-2.8px;margin:28px auto 24px;font-weight:500}.hero-sub{font-size:16px;line-height:1.45}.eyebrow{margin-bottom:12px}.trip-badges{gap:8px}.trip-badges span{padding:8px 12px;font-size:13px;line-height:16px}.hero .button{margin-top:32px;border-radius:12px;min-height:48px;padding:14px 20px}.hero-bottom{bottom:32px;padding:20px 24px;border-radius:12px;width:740px}.section{padding:var(--section-space) 0 0}.section-label{margin-bottom:12px;font-size:14px;line-height:20px}.section-label .icon{width:16px;height:16px}h2{font-size:48px;line-height:1;letter-spacing:-1.9px;font-weight:500}.section-heading{margin-bottom:40px}.section-heading p{margin-top:20px}.intro-copy{margin-top:24px}.intro-copy p{font-size:15px;line-height:1.6}.numbers{margin-top:40px}.destination{height:460px}.destination-top{top:24px;left:24px;right:24px}.destination-copy{left:24px;right:24px;bottom:24px}.destination-copy h3{font-size:32px;line-height:1.1;margin:12px 0}.destination-copy p{font-size:14px;line-height:1.45}.destination-copy a{margin-top:20px}.road-banner{margin-top:40px;padding:32px 24px 64px;gap:40px}.places article{min-height:384px;padding:200px 24px 24px}.place-title h3{font-size:24px;line-height:1.1}.places article p{line-height:1.45;margin-top:8px}.program-intro .program-note{margin-bottom:40px}.program-layout{gap:32px}.days summary{padding:24px 0}.days details{border-radius:20px}.company{margin-top:100px;padding:64px 40px}.company h2{font-size:48px;line-height:1.05}.company p{margin:24px auto 32px}.faq>div:first-child{margin-bottom:40px}.faq details{border-radius:20px}.join{margin-top:100px;padding:64px 40px;margin-bottom:100px}.join h2{font-size:48px;line-height:1.05}.site-footer{padding-top:64px}.footer-top{gap:32px}.footer-route{margin:64px 0}.footer-bottom{padding-top:32px}.section-nav{min-height:72px;padding-top:12px;padding-bottom:12px}.section-nav a:last-child{min-height:48px;border-radius:12px}.program-visual{top:96px}
@media(min-width:1680px){.header-contacts{max-width:330px}}
@media(max-width:1100px){:root{--page-pad:32px;--section-space:80px}.header-phone{font-size:12px}.header-contacts{gap:10px;padding:0 14px}.header-contact{min-width:178px;font-size:12px}.hero h1{font-size:56px}.program-layout{gap:24px}.company,.join{margin-top:80px}.join{margin-bottom:80px}h2{font-size:40px}.footer-top{gap:24px}}
@media(max-width:900px){.header-contacts{display:none}.header{grid-template-columns:48px 1fr auto}.header-contact{grid-column:3}.hero-bottom{width:calc(100% - var(--page-pad)*2)}.footer-top{row-gap:40px}}
@media(max-width:700px){:root{--page-pad:16px;--section-space:64px;--gutter:16px}.header{height:64px;display:flex;justify-content:space-between;padding:12px 16px;max-width:none}.header .brand{position:static;transform:none;width:126px;height:33px;margin:0}.menu-toggle{order:2;width:36px;height:36px;padding:9px;border-radius:8px;margin-left:auto}.menu-toggle .icon{width:18px;height:18px}.header-contact{display:none}.header nav{left:16px;right:16px;top:60px;border-radius:16px;z-index:3}.hero{height:100svh;min-height:720px;max-height:none;display:flex;align-items:flex-end}.hero-content{padding:100px 16px 24px;text-align:left;width:100%;margin:0;max-width:none}.hero .eyebrow{justify-content:flex-start;font-size:9px;letter-spacing:.5px;margin-bottom:12px}.trip-badges{justify-content:flex-start;gap:6px;max-width:340px}.trip-badges span{font-size:11px;padding:6px 10px;line-height:14px}.hero h1{font-size:36px;letter-spacing:-1.2px;line-height:1.05;margin:16px 0;text-align:left;max-width:360px}.hero-sub{font-size:13px;line-height:1.5;margin:0;max-width:390px}.hero .button{width:100%;min-height:48px;margin-top:20px;min-width:0;padding:14px 20px;justify-content:center;gap:16px}.hero-bottom{display:none}.hero-shade{background:linear-gradient(0deg,#071321e6,rgba(7,19,33,.22) 78%)}h2{font-size:32px;line-height:1.05;letter-spacing:-1.1px}.section-label{font-size:12px;line-height:18px;margin-bottom:12px}.section-heading{margin-bottom:32px}.section-heading p{font-size:13px;margin-top:16px}.intro-copy{margin-top:20px}.intro-copy p{font-size:13px;line-height:1.65}.numbers{margin-top:32px;padding:24px 20px}.destination{height:400px;border-radius:20px}.destination-copy h3{font-size:30px}.destination-copy p{font-size:13px;line-height:1.5}.road-banner{margin-top:32px;padding:28px 16px 60px;gap:10px}.places article{min-height:360px;border-radius:20px}.place-title h3{font-size:24px}.places article p{font-size:13px;line-height:1.5}.program-layout{gap:16px}.program-intro .program-note{margin-bottom:32px}.program-visual{top:auto;min-height:320px;border-radius:20px}.program-visual h3{font-size:28px}.company{margin-top:64px;padding:40px 24px;border-radius:20px}.company h2{font-size:36px}.company p{margin:24px auto;font-size:13px}.faq>div:first-child{margin-bottom:32px}.faq details{padding:0 20px;border-radius:16px}.faq summary{min-height:72px}.join{margin-top:64px;margin-bottom:64px;padding:40px 24px;border-radius:20px}.join h2{font-size:36px}.site-footer{padding:48px 16px 24px}.footer-top{gap:32px 16px}.footer-route{margin:40px 0}.footer-bottom{padding-top:24px}.section-nav{min-height:64px;padding-top:8px;padding-bottom:8px;gap:24px}.section-nav a:last-child{min-height:44px}.days summary{padding:20px 0}.header-icon{min-height:36px}}
@media(max-width:359px){.hero h1{font-size:32px}.hero-content{padding-bottom:20px}}
