*{box-sizing:border-box}body{margin:0;background:#fff;color:#263f30;font:17px/1.6 system-ui,sans-serif}header,main,footer{max-width:1120px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ded5c7}a{color:#173f35}nav{display:flex;gap:24px}.brand{font:bold 25px 'Segoe UI',system-ui,sans-serif;color:#263f30;text-decoration:none}h1{font:clamp(38px,6vw,68px)/1.08 'Segoe UI',system-ui,sans-serif;max-width:850px}h2{font:32px/1.2 'Segoe UI',system-ui,sans-serif}h3{margin-top:0}p{max-width:760px}.eyebrow{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#173f35}.hero{padding:40px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.card{background:#f6f1e7;border:1px solid #ded5c7;border-radius:16px;padding:26px;margin:20px 0}.grid .card{margin:0}button,.button{font:inherit;border:1px solid #b6bcae;border-radius:9px;padding:12px 20px;cursor:pointer;background:#fffaf3;color:#263f30;display:inline-block;text-decoration:none;margin:6px 8px 6px 0}button.primary,.button.primary{background:#c6e66b;color:#173f35;border-color:#a7c855}button:disabled{opacity:.5;cursor:wait}label{display:block;margin:14px 0}input,select{display:block;width:100%;padding:12px;border:1px solid #b6bcae;border-radius:7px;background:white;font:inherit;color:#263f30}form{max-width:650px}.muted,small{color:#657367;font-size:14px}#message{position:sticky;top:0;padding:12px 20px;background:#e3ead9;z-index:1}#message:empty{display:none}.error{color:#9b251b}table{width:100%;text-align:left;border-collapse:collapse}td,th{padding:12px;border-bottom:1px solid #ded5c7}footer{margin-top:40px;border-top:1px solid #ded5c7}details{padding:12px 0}summary{cursor:pointer;font-weight:600}:focus-visible{outline:3px solid #577c66;outline-offset:3px}@media(max-width:600px){header{align-items:flex-start;gap:12px}nav{gap:12px;font-size:14px}.card{padding:18px}table{font-size:13px}}
.feature-image{display:block;width:100%;height:auto;margin-bottom:24px;font-family:system-ui,sans-serif}.features{padding:20px 0}.features h2{max-width:620px}.features .card{padding:18px}.features .card h3,.features .card p{margin-left:8px;margin-right:8px}.features .card p{font-size:16px}

body:has(.account-back) header{position:sticky;top:0;z-index:2;background:#f6f0e6;flex-wrap:wrap;gap:12px}.account-back{margin:0}

html{color-scheme:light;-webkit-text-size-adjust:100%;text-size-adjust:100%}
.auth-layout>*,.grid>*,#content{min-width:0}input,select{min-width:0;max-width:100%}
@media(max-width:600px){
 body{font-size:16px}main{padding:20px}.grid{grid-template-columns:minmax(0,1fr)}
 header nav{flex-wrap:wrap;align-items:center}header nav a{display:inline-flex;align-items:center;min-height:44px}
 .card{overflow-wrap:anywhere}button,.button{max-width:100%;white-space:normal;min-height:44px}
 table{display:block;overflow-x:auto;max-width:100%;overscroll-behavior-x:contain}td,th{min-width:100px}
 #message{position:relative;overflow-wrap:anywhere}body:has(.account-back) header{position:static}
}

/* OrderSprig account shell and dedicated authentication layout. */
body{color:#26312d;font-family:'Segoe UI',Arial,sans-serif}header .brand{display:flex;align-items:center;gap:10px;font:800 27px 'Segoe UI',Arial,sans-serif;color:#173f35;letter-spacing:-1px}header .alpha-label{font:700 10px 'Segoe UI',sans-serif;letter-spacing:1.5px;text-transform:uppercase;background:#e5edd1;border-radius:5px;padding:5px 8px;color:#173f35}header nav a{color:#173f35;text-decoration:none;font-weight:600;font-size:14px}header nav a:hover{text-decoration:underline}h1,h2{font-family:'Segoe UI',Arial,sans-serif;font-weight:750;letter-spacing:-1.2px;color:#173f35}a{color:#245a47}button.primary,.button.primary{background:#c6e66b;border-color:#c6e66b;color:#142e26;font-weight:700}button.primary:hover,.button.primary:hover{background:#d4ed90}header{max-width:1400px;border:0;padding:26px 40px}footer{font-size:14px}body.auth-page main{max-width:1240px;padding:30px 40px 50px}body.auth-page main>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.auth-story{background:#173f35;color:#edf2e7;border-radius:24px;padding:48px;min-height:620px;display:flex;flex-direction:column}.auth-kicker{font-size:11px;letter-spacing:2px;font-weight:700;color:#c6e66b}.auth-story h2{color:#fff;font-size:44px;line-height:1.12;margin:28px 0 10px}.auth-story>p{color:#d8e2db;line-height:1.7;font-size:17px}.auth-benefits{display:grid;gap:15px;margin-top:24px;font-size:16px}.auth-story-foot{display:flex;gap:16px;align-items:center;margin-top:auto;padding-top:45px;font-size:13px;color:#d8e2db}.auth-story-foot img{background:#f6f1e7;padding:7px;border-radius:10px;width:48px;height:54px}.auth-forms{padding:8px 0}.auth-forms .card{background:#f6f1e7;border:1px solid #e8e1d5;border-radius:18px;margin:0 0 18px;padding:32px}.auth-forms h2{font-size:32px;margin:0 0 12px}.auth-forms p{font-size:15px;color:#5b6962}.auth-forms form{max-width:none;margin-top:24px}.auth-forms label{font-size:14px;font-weight:600;margin:18px 0}.auth-forms input{min-height:50px;border-color:#d2d9d0;border-radius:9px;margin-top:7px;font-size:16px;font-weight:400}.auth-forms input:focus{outline:3px solid #c6e66b70;border-color:#51765c}.auth-forms button.primary{width:100%;min-height:52px;margin:10px 0 4px}.auth-forms details.card{padding:20px 26px;font-size:14px}.auth-forms section.card>p:last-child{border-top:1px solid #deded2;padding-top:20px;margin-bottom:0}.auth-page #message:not(:empty){max-width:1160px;position:relative;margin:0 auto;border-radius:10px}.auth-page footer{max-width:1160px;margin-top:0;display:flex;justify-content:space-between}.auth-page footer:after{content:'OrderSprig · Alpha';color:#657367}.auth-page :focus-visible{outline:3px solid #739c29;outline-offset:3px}@media(max-width:900px){.auth-layout{gap:24px}.auth-story{padding:32px;min-height:580px}.auth-story h2{font-size:36px}.auth-forms .card{padding:26px}}@media(max-width:700px){header{padding:20px;flex-wrap:wrap}header .brand{font-size:24px}body.auth-page main{padding:15px 20px 30px}.auth-layout{grid-template-columns:1fr;gap:20px}.auth-story{min-height:0;padding:28px}.auth-story h2{font-size:32px;margin:16px 0 0}.auth-story>p{margin-bottom:0}.auth-benefits,.auth-story-foot{display:none}.auth-forms{padding:0}.auth-forms .card{padding:25px}.auth-page footer{margin:0 20px;padding:20px 0}.auth-page #message:not(:empty){margin:0 20px}}

/* Put the account action first on phones; keep the brand story secondary. */
@media(max-width:600px){
 header{padding:18px 20px;gap:10px}header .brand{font-size:24px;gap:8px}header nav{width:100%;justify-content:space-between}
 body.auth-page main{padding:10px 20px 30px}.auth-layout{gap:24px}.auth-forms{grid-row:1}.auth-story{grid-row:2;padding:24px}
 .auth-story h2{font-size:28px}.auth-story>p{font-size:15px}.auth-forms .card{padding:23px 20px}.auth-forms h2{font-size:29px}
 .auth-forms details.card{padding:18px 20px}.auth-forms input{font-size:16px}.auth-page footer{gap:12px;flex-wrap:wrap}
}

/* Compact, branded account navigation; scoped away from the public website. */
body.account-page header{max-width:none;min-height:64px;padding:8px 24px;gap:18px;flex-wrap:nowrap;background:#173f35;border-bottom:3px solid #c6e66b;color:#fff}
body.account-page header .brand{color:#fff;font-size:23px;white-space:nowrap;letter-spacing:-.7px;gap:8px}
body.account-page header .brand img{width:26px;height:32px;background:#f6f1e7;border-radius:6px;padding:3px}
body.account-page header .alpha-label{background:#c6e66b;color:#173f35;padding:4px 6px;font-size:9px}
body.account-page .account-back{margin:0;padding:6px 12px;min-height:40px;font-size:14px;border-color:#6d8b7f;background:transparent;color:#fff;white-space:nowrap}
body.account-page .account-tagline{margin-left:auto;font-size:13px;color:#dce9d3;letter-spacing:.2px}
body.account-page header nav{width:auto;gap:16px}body.account-page header nav:empty{display:none}body.account-page header nav a{color:#fff}
body.account-page.signed-in main{padding-top:24px}body.account-page.signed-in main>h1{margin:12px 0 22px;font-size:clamp(32px,4vw,46px)}
@media(max-width:700px){body.account-page header{padding:8px 12px;gap:12px;flex-wrap:wrap}body.account-page .account-tagline{display:none}body.account-page header .brand{font-size:21px}body.account-page header nav{margin-left:auto}}

.subscription-nav{display:flex;flex-wrap:wrap;gap:20px}.subscription-current{border-top:5px solid #c6e66b}.subscription-badge{display:inline-block;padding:4px 12px;border-radius:20px;background:#e1edc3;color:#173f35;font-size:14px;font-weight:700}.subscription-amount{font-size:44px;font-weight:750;line-height:1.2;margin:18px 0}.subscription-amount span{display:block;font-size:14px;font-weight:400;margin-top:8px}.subscription-totals{max-width:650px}.subscription-totals>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #ded5c7}.subscription-totals dd{margin:0;white-space:nowrap}.subscription-total{font-weight:700}.subscription-venues{padding:0;list-style:none}.subscription-venues li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #ded5c7;overflow-wrap:anywhere}.subscription-venues span{font-size:14px;color:#657367}

 .auth-forms label.remember-login{display:flex;align-items:center;gap:10px;font-weight:400}.auth-forms .remember-login input{flex:0 0 auto;width:20px;height:20px;min-height:0;margin:0;accent-color:#173f35}
