:root{--ref-navy:#002244;--ref-green:#69be28;--ref-ink:#142033;--ref-muted:#586778;--ref-line:#dfe6dc;--ref-pale:#f3f7f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ref-ink);font-family:Poppins,Arial,sans-serif;line-height:1.65;background:#fff}a{color:inherit}.referral-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(26px,5vw,64px);align-items:center;padding:clamp(54px,8vw,96px) clamp(20px,7vw,100px);background:linear-gradient(122deg,var(--ref-navy),#063b68);color:#fff}.referral-hero__copy{max-width:850px}.referral-eyebrow{margin:0 0 9px;color:var(--ref-green);font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.referral-hero h1{margin:.12em 0 .3em;font-size:clamp(2.45rem,6vw,5.25rem);line-height:1.02}.referral-hero__lead{max-width:850px;margin:0;color:#e3edf4;font-size:clamp(1.05rem,2vw,1.25rem)}.referral-signup{max-width:700px;margin-top:28px;padding:clamp(20px,3vw,28px);border:1px solid rgba(255,255,255,.3);border-radius:16px;background:#fff;color:var(--ref-ink);box-shadow:0 18px 45px rgba(0,0,0,.2)}.referral-signup h2{margin:0 0 6px;color:var(--ref-navy);font-size:clamp(1.45rem,3vw,2rem);line-height:1.15}.referral-signup>p{margin:0;color:var(--ref-muted)}.referral-signup__form{display:block;width:100%;height:690px;margin:8px 0 0;border:0;border-radius:8px}.referral-signup .referral-signup__privacy{margin:6px 0 0;color:#697788;font-size:.75rem;line-height:1.5}.referral-signup__privacy a{color:var(--ref-navy);font-weight:700}.referral-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.referral-actions[hidden]{display:none}.referral-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:2px solid transparent;border-radius:9px;font:inherit;font-weight:800;text-align:center;text-decoration:none;cursor:pointer}.referral-button--primary{border-color:var(--ref-green);background:var(--ref-green);color:#102500}.referral-button--primary:hover,.referral-button--primary:focus-visible{border-color:#7fd83c;background:#7fd83c}.referral-button--secondary{border-color:#fff;background:transparent;color:#fff}.referral-button--secondary:hover,.referral-button--secondary:focus-visible{background:#fff;color:var(--ref-navy)}.referral-button:focus-visible{outline:3px solid rgba(105,190,40,.35);outline-offset:3px}.referral-copy-status{min-height:1.6em;margin:10px 0 0;color:#dce9f1;font-size:.88rem}.referral-reward-card{container-type:inline-size;padding:clamp(26px,4vw,40px);border:1px solid rgba(255,255,255,.25);border-radius:20px;background:rgba(255,255,255,.1);box-shadow:0 22px 60px rgba(0,0,0,.18);backdrop-filter:blur(8px)}.referral-reward-card span{display:block;color:var(--ref-green);font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.referral-reward-card strong{display:block;max-width:100%;margin:.05em 0;font-size:clamp(3rem,7vw,6rem);font-size:clamp(3rem,20cqi,6rem);line-height:1;letter-spacing:-.035em;white-space:nowrap}.referral-reward-card p{margin:12px 0 0;color:#e3edf4}.referral-section,.referral-details,.referral-disclosure{max-width:1180px;margin:0 auto;padding:clamp(52px,7vw,82px) 24px}.referral-section__heading{max-width:790px}.referral-section h2,.referral-booking h2,.referral-details h2{margin:.1em 0 .28em;color:var(--ref-navy);font-size:clamp(2rem,4.5vw,3.5rem);line-height:1.1}.referral-section__heading>p:last-child,.referral-booking p,.referral-details p{color:var(--ref-muted)}.referral-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:32px 0 0;padding:0;list-style:none}.referral-steps li{display:grid;align-content:start;gap:16px;padding:24px;border:1px solid var(--ref-line);border-radius:15px;background:#fff;box-shadow:0 10px 30px rgba(0,34,68,.06)}.referral-steps li>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--ref-green);color:#153308;font-weight:800}.referral-steps h3{margin:0;color:var(--ref-navy);font-size:1.15rem;line-height:1.25}.referral-steps p{margin:8px 0 0;color:var(--ref-muted);font-size:.93rem}.referral-booking{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:clamp(34px,5vw,52px) max(24px,calc((100vw - 1132px)/2));background:var(--ref-pale);border-top:1px solid var(--ref-line);border-bottom:1px solid var(--ref-line)}.referral-booking>div{max-width:790px}.referral-booking p{margin:.4em 0 0}.referral-code-warning{padding:12px 14px;border-left:4px solid #c98612;border-radius:6px;background:#fff8e8;color:#684914!important;font-size:.9rem}.referral-code-warning[hidden]{display:none}.referral-booking__button{white-space:nowrap}.referral-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(26px,6vw,64px);align-items:start}.referral-details ul{margin:26px 0 0;padding:0;list-style:none}.referral-details li{position:relative;padding:0 0 16px 34px;color:#344250}.referral-details li::before{content:"✓";position:absolute;left:0;top:0;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:var(--ref-green);color:#153308;font-size:.78rem;font-weight:900}.referral-details__note{padding:27px;border-left:5px solid var(--ref-green);border-radius:12px;background:var(--ref-pale)}.referral-details__note h3{margin:0 0 8px;color:var(--ref-navy);font-size:1.35rem}.referral-details__note p{margin:0}.referral-details__note p+p{margin-top:14px}.referral-disclosure{padding-top:0;color:var(--ref-muted);font-size:.82rem}.referral-disclosure p{margin:0}.referral-disclosure p+p{margin-top:9px}.referral-disclosure a{color:var(--ref-navy);font-weight:700}@media(max-width:980px){.referral-hero{grid-template-columns:1fr}.referral-reward-card{max-width:520px}.referral-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.referral-details{grid-template-columns:1fr}.referral-booking{grid-template-columns:1fr}.referral-booking__button{justify-self:start}}@media(max-width:620px){.referral-hero{padding-left:18px;padding-right:18px}.referral-signup{padding:18px}.referral-signup__form{height:720px}.referral-steps{grid-template-columns:1fr}.referral-section,.referral-details,.referral-disclosure{padding-left:18px;padding-right:18px}.referral-booking{padding-left:18px;padding-right:18px}.referral-actions,.referral-actions .referral-button,.referral-booking__button{width:100%}.referral-reward-card{padding:24px}}.referral-signup__form{height:510px!important}
