.referral-hero{background:var(--espresso);color:var(--ivory);padding:clamp(82px,9vw,135px) 0 clamp(85px,9vw,135px)}
.referral-hero-layout,.referral-form-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(45px,8vw,125px);align-items:end}
.referral-hero h1,.referral-page h2{font:400 clamp(48px,5.8vw,84px)/1.12 var(--serif);letter-spacing:-.05em;margin:0 0 24px}
.referral-hero h1 em{font-weight:400;color:var(--rose)}
.referral-offer{font:400 clamp(27px,3vw,42px)/1.25 var(--serif);color:var(--ivory);margin:0}
.referral-hero-copy p{font-size:17px;line-height:1.75;color:var(--warm-muted);margin:0 0 17px;max-width:520px}
.referral-hero-copy p:first-child{font:400 25px/1.45 var(--serif);color:var(--ivory)}
.referral-hero-copy .button{margin-top:21px}
.referral-how{background:var(--ivory);color:var(--espresso);padding:clamp(75px,8vw,112px) 0}
.referral-how .eyebrow,.referral-form-section .eyebrow{color:var(--ink-soft)}
.referral-how .eyebrow-line,.referral-form-section .eyebrow-line{background:var(--rose)}
.referral-how h2{max-width:700px;margin-bottom:48px}
.referral-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(26px,4vw,68px)}
.referral-steps>div{border-top:1px solid rgba(41,35,31,.32);padding-top:23px}
.referral-number{font:700 12px var(--sans);letter-spacing:.15em;color:var(--evergreen)}
.referral-steps h3{font:400 clamp(24px,2.4vw,33px)/1.25 var(--serif);margin:22px 0 14px}
.referral-steps p,.referral-simple{font-size:16px;line-height:1.7;color:var(--ink-soft);margin:0}
.referral-simple{border-top:1px solid rgba(41,35,31,.24);padding-top:23px;margin-top:48px;font-style:italic}
.referral-form-section{background:var(--parchment);color:var(--espresso);padding:clamp(80px,9vw,125px) 0;scroll-margin-top:40px}
.referral-form-layout{align-items:start}
.referral-form-layout h2{font-size:clamp(44px,4.9vw,72px)}
.referral-form-layout>div:first-child>p:not(.eyebrow){font-size:16px;line-height:1.75;color:var(--ink-soft);max-width:520px;margin:0 0 18px}
.referral-form-card{background:var(--ivory);padding:clamp(25px,3vw,44px);min-width:0}
.referral-form-card label{display:block;font-size:15px;font-weight:700;margin:0 0 9px}
.referral-form-card label span{font-size:13px;font-weight:400;color:var(--ink-soft)}
.referral-form-card input:not(.referral-check),.referral-form-card textarea{width:100%;min-height:52px;border:1px solid #857b70;background:#fffaf2;color:var(--espresso);border-radius:0;padding:12px 14px;font:400 16px/1.5 var(--sans);margin:0 0 23px}
.referral-form-card textarea{resize:vertical;min-height:105px}
.referral-form-card input:focus-visible,.referral-form-card textarea:focus-visible,.referral-form-card button:focus-visible{outline:3px solid var(--evergreen);outline-offset:3px}
.referral-form-card h3{font:400 27px/1.3 var(--serif);border-top:1px solid rgba(41,35,31,.24);padding-top:25px;margin:5px 0 9px}
.referral-form-card .form-helper{font-size:13px;line-height:1.6;color:var(--ink-soft);margin:0 0 22px}
.referral-check{position:absolute;left:-9999px;width:1px;height:1px}
.referral-form-card .form-error{border-left:3px solid #903e35;background:#f6e8de;color:#632d25;padding:12px 14px;font-size:14px;line-height:1.5;margin:0 0 17px}
.referral-form-card .button{max-width:100%}
#referral-success h3{border:0;padding:0;margin:0 0 18px;font-size:34px}
#referral-success>p:not(.eyebrow){font-size:15px;line-height:1.7;color:var(--ink-soft);margin:0 0 23px}
#referral-success #referral-link{font-size:14px}
#referral-success #referral-message{font-size:14px;line-height:1.6;min-height:170px}
#referral-success #share-status{margin:16px 0 0}
.referral-share{background:transparent;color:var(--espresso);border:0;border-bottom:1px solid currentColor;padding:0 0 5px;min-height:0;margin-top:6px}
.referral-share:focus-visible{outline:3px solid var(--evergreen);outline-offset:4px}
.share-status{min-height:1.5em;font-size:13px;line-height:1.5;color:var(--ink-soft);margin:12px 0 0}
.referral-terms{background:var(--espresso);color:var(--ivory);padding:47px 0 68px}
.referral-terms-inner{max-width:1390px}
.referral-terms details{max-width:820px;border-top:1px solid var(--dark-rule);border-bottom:1px solid var(--dark-rule);padding:20px 0}
.referral-terms summary{font-size:15px;font-weight:700;cursor:pointer}
.referral-terms summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.referral-terms ul{font-size:14px;line-height:1.7;color:var(--warm-muted);padding-left:20px;margin:20px 0 5px}
.referral-terms li{margin-bottom:9px}
@media(max-width:850px){.referral-hero-layout,.referral-form-layout{display:block}.referral-hero-layout>div:first-child,.referral-form-layout>div:first-child{margin-bottom:37px}.referral-steps{gap:25px}}
@media(max-width:600px){.referral-hero,.referral-how,.referral-form-section{padding:70px 0 77px}.referral-hero h1,.referral-page h2{font-size:clamp(43px,10.5vw,57px)}.referral-hero-copy p{font-size:16px}.referral-steps{display:block}.referral-steps>div{padding:22px 0 26px}.referral-simple{margin-top:12px}.referral-form-card{padding:27px 20px}.referral-form-card .button,.referral-hero .button{width:100%}}
