/* A clearer host-facing close, with one contact destination. */
.nav nav { font-size:15px; gap:34px; text-transform:uppercase; letter-spacing:1px; }
.hostel-section { padding:100px 0; }
.hostel-section::after { display:none; }
.host-pitch { text-align:center; }
.host-pitch > .eyebrow { justify-content:center; color:#b7d3b5; margin-bottom:28px; }
.host-pitch h2 { font-size:clamp(36px,4vw,55px); max-width:1000px; line-height:1.14; margin:0 auto 26px; }
.host-pitch h2 span { color:#b7d3b5; }
.host-pitch-intro { color:#d2ddd4; font-size:19px; line-height:1.7; max-width:690px; margin:0 auto; }
.host-reasons { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; margin:65px 0 45px; text-align:left; }
.host-reasons article { border-top:1px solid #66816a; padding-top:20px; }
.host-number { font-size:12px; color:#b7d3b5; letter-spacing:1px; }
.host-reasons h3 { font-size:25px; font-weight:500; line-height:1.2; margin:20px 0 16px; }
.host-reasons p { color:#d2ddd4; font-size:16px; line-height:1.8; }
.contact { display:grid; grid-template-columns:.85fr 1.15fr; gap:85px; max-width:1200px; text-align:left; padding:110px 0; }
.contact .eyebrow { justify-content:flex-start; }
.contact h2 { font-size:clamp(38px,4vw,54px); line-height:1.12; margin-bottom:26px; }
.contact-intro > p:not(.eyebrow) { color:var(--muted); font-size:18px; line-height:1.8; }
.contact .email { display:inline-block; margin:25px 0 0; font-size:16px; }
.enquiry-form { text-align:left; padding:30px; background:#f0f3eb; border-radius:18px 25px 16px 22px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.enquiry-form label { display:block; font-size:13px; font-weight:550; margin-bottom:19px; }
.enquiry-form label > span { color:#64785b; }
.enquiry-form input,.enquiry-form select,.enquiry-form textarea { display:block; width:100%; background:#fff; color:var(--ink); border:1px solid #cbd6c6; border-radius:9px; font:inherit; font-weight:400; font-size:15px; padding:13px 12px; margin-top:8px; }
.enquiry-form textarea { resize:vertical; min-height:120px; }
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus { outline:2px solid #6e966f; outline-offset:2px; }
.enquiry-form .form-note { font-size:12px; line-height:1.6; color:var(--muted); margin:0 0 17px; }
.form-status { font-size:13px; line-height:1.7; margin:16px 0 0; }
.form-status:empty { display:none; }
@media(max-width:1000px) { .nav nav { gap:20px; font-size:13px; } .contact { gap:40px; } .enquiry-form { padding:23px; } }
@media(max-width:760px) {
 .nav { height:auto; min-height:110px; flex-wrap:wrap; justify-content:center; padding-top:22px; padding-bottom:20px; gap:22px; }
 .nav nav { display:flex; flex-wrap:wrap; justify-content:center; gap:14px 20px; font-size:11px; width:100%; }
 .hostel-section { padding:65px 0; }
 .host-pitch h2 { font-size:36px; }
 .host-pitch-intro { font-size:17px; }
 .host-reasons { grid-template-columns:1fr; gap:24px; margin:38px 0 30px; }
 .host-reasons h3 { font-size:26px; margin:14px 0 12px; }
 .host-reasons p { margin-bottom:0; }
 .contact { grid-template-columns:1fr; gap:35px; padding:65px 0; }
 .contact h2 { font-size:40px; }
 .contact-intro > p:not(.eyebrow) { font-size:17px; }
 .form-row { grid-template-columns:1fr; gap:0; }
 .enquiry-form { padding:22px 18px; }
}
/* Keep the first call to action inside a laptop's initial viewport. */
@media(min-width:761px) {
  .nav { height:88px; }
  .hero { min-height:calc(100svh - 88px); padding-top:18px; padding-bottom:32px; gap:25px; }
  .hero .eyebrow { margin-bottom:22px; }
  .hero .description { margin-bottom:0; }
  .hero .actions { margin-top:23px; }
}
@media(min-width:761px) and (max-height:800px) {
  .nav { height:78px; }
  .hero { min-height:calc(100svh - 78px); padding-top:12px; padding-bottom:26px; }
  .hero h1 { font-size:clamp(42px,4.3vw,60px); margin-bottom:20px; }
  .hero .eyebrow { font-size:10px; margin-bottom:18px; }
  .hero .intro { font-size:18px; line-height:1.45; margin-bottom:15px; }
  .hero .description { font-size:16px; line-height:1.65; }
  .hero .actions { margin-top:21px; }
  .hero-art { zoom:.85; }
}
@media(min-width:761px) and (max-height:650px) {
  .nav { height:68px; }
  .hero { min-height:calc(100svh - 68px); padding-top:8px; padding-bottom:22px; }
  .hero h1 { font-size:clamp(38px,4vw,54px); margin-bottom:16px; }
  .hero .eyebrow { margin-bottom:14px; }
  .hero .intro { font-size:17px; margin-bottom:12px; }
  .hero .description { font-size:15px; }
  .hero .actions { margin-top:17px; }
  .hero-art { zoom:.73; }
}

/* An honest invitation to the first partner hostels. */
.contact-intro > p.beta-contact-terms { font-size:14px; line-height:1.7; border-left:3px solid var(--green); padding-left:15px; margin-top:24px; }
.partner-section { padding:95px 0 70px; background:var(--cream); }
.partner-layout { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.partner-copy h2 { font-size:clamp(39px,4vw,56px); line-height:1.13; margin-bottom:28px; }
.partner-copy > p:not(.eyebrow):not(.partner-timing) { font-size:18px; line-height:1.8; color:var(--muted); max-width:430px; margin-bottom:30px; }
.partner-copy .partner-timing { font-size:12px; color:var(--muted); line-height:1.6; margin:18px 0 0; }
.partner-art { height:570px; position:relative; isolation:isolate; }
.partner-curve { position:absolute; inset:0; height:100%; width:100%; color:#94be9a; opacity:.55; z-index:-1; transform:rotate(-9deg); }
.partner-pass { position:absolute; top:35px; left:17%; width:77%; max-width:400px; padding:28px; border-radius:18px; background:var(--green); transform:rotate(5deg); box-shadow:8px 15px 30px #2c3d3510; }
.partner-pass-top { display:flex; justify-content:space-between; align-items:center; gap:14px; padding-bottom:22px; border-bottom:1px dashed #41644e66; }
.partner-pass-top img { width:145px; height:auto; }
.partner-pass-top > span { font-size:9px; font-weight:600; letter-spacing:1px; text-align:right; }
.partner-pass-label { font-size:10px; font-weight:650; letter-spacing:1.4px; margin:25px 0 12px; }
.partner-pass-year { font-size:clamp(70px,7vw,96px); font-weight:550; line-height:1; letter-spacing:-5px; margin:0 0 27px; }
.partner-pass-year span { display:block; font-size:13px; line-height:1.5; letter-spacing:0; font-weight:450; margin-top:12px; }
.partner-pass-offer { border-top:1px dashed #41644e66; padding-top:22px; }
.partner-pass-offer strong { display:block; font-size:24px; line-height:1.25; font-weight:550; letter-spacing:-.6px; }
.partner-pass-offer > span { display:block; font-size:12px; line-height:1.6; margin-top:15px; }
.partner-note { position:absolute; left:3%; bottom:5px; transform:rotate(-3deg); }
@media(max-width:1100px) and (min-width:761px) { .partner-layout { gap:35px; } .partner-pass { left:8%; width:88%; padding:24px; } .partner-pass-top img { width:125px; } .partner-note { left:0; padding:15px; gap:15px; } }
@media(max-width:760px) {
 .partner-section { padding:60px 0 40px; }
 .partner-layout { grid-template-columns:1fr; gap:30px; }
 .partner-copy h2 { font-size:39px; }
 .partner-copy > p:not(.eyebrow):not(.partner-timing) { font-size:17px; }
 .partner-art { height:535px; width:min(390px,100%); margin:0 auto; }
 .partner-pass { top:20px; left:8%; width:85%; padding:24px; }
 .partner-pass-top img { width:125px; }
 .partner-pass-label { font-size:9px; margin-top:22px; }
 .partner-pass-year { font-size:83px; margin-bottom:24px; }
 .partner-pass-offer strong { font-size:24px; }
 .partner-note { left:0; bottom:0; max-width:100%; padding:15px 17px; gap:15px; }
 .partner-note strong { font-size:14px; }
 .partner-note div > span { font-size:12px; }
}
.partner-pass-top img { filter:brightness(0); opacity:.78; }
.partner-section { overflow:clip; }
@media(max-width:760px) { .partner-art { height:560px; } }
/* A green chapter break, with the invitation in cream. */
.partner-section { background:#42694e; color:#fff; }
.partner-copy .eyebrow { color:#e1eddf; }
.partner-copy > p:not(.eyebrow):not(.partner-timing), .partner-copy .partner-timing { color:#edf3eb; }
.partner-copy .hand-mark::after { background:#94be9a; opacity:.7; }
.partner-copy .button { background:var(--cream); color:var(--ink); }
.partner-pass { background:var(--cream); color:var(--ink); box-shadow:10px 18px 35px #173c282b; }
.partner-pass-top img { filter:none; opacity:1; }
.partner-pass-top, .partner-pass-offer { border-color:#9eb69a; }
.partner-pass-label, .partner-pass-top > span { color:#526b51; }
.partner-pass-year { color:#42694e; }
.partner-pass-year span, .partner-pass-offer > span { color:var(--muted); }
.partner-curve { color:#b5d1aa; opacity:.5; }
.partner-note { background:#eceef8; border-color:#e0e4f0; }
/* The page keeps scrolling normally; the cards settle into place on entry. */
.partner-motion-ready .partner-copy { opacity:0; transform:translateY(24px); }
.partner-motion-ready .partner-pass { opacity:0; transform:translateY(35px) rotate(9deg); }
.partner-motion-ready .partner-note { opacity:0; transform:translateY(25px) rotate(-6deg); }
.partner-motion-ready .partner-copy, .partner-motion-ready .partner-pass, .partner-motion-ready .partner-note { transition:opacity .7s ease,transform .85s cubic-bezier(.2,.7,.2,1); }
.partner-motion-ready.is-in-view .partner-copy { opacity:1; transform:none; }
.partner-motion-ready.is-in-view .partner-pass { opacity:1; transform:rotate(5deg); transition-delay:.1s; }
.partner-motion-ready.is-in-view .partner-note { opacity:1; transform:rotate(-3deg); transition-delay:.22s; }
@media(prefers-reduced-motion:reduce) {
 .partner-motion-ready .partner-copy,.partner-motion-ready .partner-pass,.partner-motion-ready .partner-note { opacity:1; transition:none; }
 .partner-motion-ready .partner-copy { transform:none; }
 .partner-motion-ready .partner-pass { transform:rotate(5deg); }
 .partner-motion-ready .partner-note { transform:rotate(-3deg); }
}
/* Independent translate values leave the entry animation and card angles intact. */
.partner-pass { translate:0 var(--pass-drift,0px); }
.partner-note { translate:0 var(--note-drift,0px); }
.partner-curve { translate:0 var(--curve-drift,0px); }
@media(prefers-reduced-motion:reduce) {
 .partner-pass,.partner-note,.partner-curve { translate:none; }
}

/* A roomier invitation leads into one centered application card. */
.partner-section { margin-top:150px; padding-top:110px; padding-bottom:180px; }
.partner-art { height:680px; }
.partner-pass { left:10%; width:86%; max-width:450px; padding:35px; }
.partner-pass-top img { width:165px; }
.partner-pass-label { font-size:11px; margin-top:28px; }
.partner-pass-year { font-size:112px; margin-bottom:32px; }
.partner-pass-year span { font-size:14px; }
.partner-pass-offer { padding-top:26px; }
.partner-pass-offer strong { font-size:28px; }
.partner-pass-offer > span { font-size:13px; }
.partner-note { bottom:-18px; left:0; }
.contact { position:relative; display:block; width:min(860px,calc(100% - 96px)); max-width:860px; margin:-90px auto 90px; padding:58px 60px; text-align:center; background:var(--cream); border:1px solid #e1e7dc; border-radius:23px; box-shadow:0 20px 55px #2c3d3512; z-index:2; scroll-margin-top:50px; translate:0 var(--form-rise,0px); }
.contact .contact-intro { max-width:640px; margin:0 auto 32px; }
.contact .eyebrow { justify-content:center; }
.contact h2 { font-size:clamp(36px,3.8vw,48px); margin-bottom:22px; }
.contact-intro > p:not(.eyebrow) { font-size:17px; line-height:1.75; }
.contact-intro > p.beta-contact-terms { border:0; padding:0; font-size:13px; margin:20px auto 0; max-width:540px; }
.contact .email { margin-top:17px; font-size:14px; }
.contact .enquiry-form { padding:0; background:none; border-radius:0; }
.contact .enquiry-form > .button { display:flex; width:fit-content; margin:0 auto; }
.contact .form-note,.contact .form-status { text-align:center; }
@media(max-width:1100px) and (min-width:761px) {
 .partner-pass { left:5%; width:90%; padding:28px; }
 .partner-pass-year { font-size:100px; }
 .partner-pass-top img { width:135px; }
 .partner-pass-offer strong { font-size:26px; }
}
@media(max-width:760px) {
 .partner-section { margin-top:90px; padding-top:75px; padding-bottom:120px; }
 .partner-layout { gap:40px; }
 .partner-art { height:640px; }
 .partner-pass { left:4%; width:92%; padding:26px; }
 .partner-pass-top img { width:140px; }
 .partner-pass-label { font-size:10px; }
 .partner-pass-year { font-size:100px; margin-bottom:27px; }
 .partner-pass-offer strong { font-size:26px; }
 .partner-pass-offer > span { font-size:12px; }
 .partner-note { bottom:0; left:0; }
 .contact { width:calc(100% - 32px); margin:-65px auto 55px; padding:35px 22px; border-radius:18px; scroll-margin-top:25px; }
 .contact h2 { font-size:35px; }
 .contact-intro > p:not(.eyebrow) { font-size:16px; }
 .contact-intro > p.beta-contact-terms { font-size:12px; }
 .contact .contact-intro { margin-bottom:30px; }
}
@media(prefers-reduced-motion:reduce) { .contact { translate:none; } }

.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.enquiry-form[aria-busy="true"] button[type="submit"]{opacity:.65;cursor:wait}
.form-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
footer small a{color:inherit}
