/* Identity approved by the organizer: sun, water, forest green, ivory and lime. */
:root{--paper:#f5f1e6;--card:#fffdf7;--ink:#163a30;--green:#0d3027;--lime:#dbea86;--muted:#627269;--line:#dedfd2;--radius:18px;--display:Georgia,'Times New Roman',serif}
body{background:var(--paper)}
h1,.hero h2{font-family:var(--display);font-weight:400;letter-spacing:-.045em;line-height:1.08}
h1{font-size:clamp(2.15rem,6.5vw,3.3rem)}
h2{font-weight:600;letter-spacing:-.025em}
.brand-wrap{flex-shrink:0;line-height:0}
.brand-logo{display:block;width:174px;height:auto;object-fit:contain}
.brand-logo-dark{display:none}
.auth-art .brand-logo-light,.sidebar .brand-logo-light,.ticket-head .brand-logo-light{display:none}
.auth-art .brand-logo-dark,.sidebar .brand-logo-dark,.ticket-head .brand-logo-dark{display:block}
.auth-inner>.brand-wrap{margin-bottom:30px}
.auth-inner .brand-logo{width:220px;max-width:100%}
.auth-tag{background:transparent;border:1px solid #cdd4bc;border-radius:999px;color:var(--green);letter-spacing:1.1px;font-size:.59rem;padding:8px 12px}
.auth-inner h1{margin-bottom:14px}
.auth-art{background:var(--green);color:var(--paper);isolation:isolate}
.auth-art .brand-wrap{position:relative;z-index:1}
.auth-art .brand-logo{width:260px;max-width:100%}
.auth-art h1{position:relative;z-index:1;font-size:clamp(3.7rem,5.3vw,5.5rem);margin-top:clamp(110px,20vh,220px);max-width:580px}
.auth-art p{position:relative;z-index:1;color:#d5ddc8}
.auth-art:after{display:none}
.auth-emblem{position:absolute;width:450px;max-width:75%;right:-55px;top:50px;opacity:.16;z-index:0;pointer-events:none}
.auth-art .eyebrow{position:relative;z-index:1;line-height:1.8}
.btn{border-radius:10px;transition:background .16s,color .16s,box-shadow .16s}
.btn:hover:not(:disabled){box-shadow:0 3px 12px #0d302718}
.btn.lime{background:var(--lime);color:var(--green)}
.btn.secondary{background:transparent;border-color:#cdd4c5;color:var(--green)}
.field input,.field select{background:#fffdf9;border-color:#d7ddcf;border-radius:10px;min-height:48px}
.topbar{background:#f5f1e6f5;border-color:var(--line)}
.topbar .brand-logo{width:154px}
.hero{background:var(--green);color:var(--paper);padding:28px 24px;min-height:250px;isolation:isolate}
.hero>div{position:relative;z-index:1}
.hero:after{display:none}
.hero .eyebrow{color:var(--lime);font-size:.6rem;letter-spacing:2.4px}
.hero h2{font-size:clamp(2.6rem,8vw,4.5rem);max-width:80%;margin:14px 0}
.hero p{color:#d4ddcc;line-height:1.7;font-size:.8rem;max-width:80%}
.hero-emblem{position:absolute;width:245px;height:auto;right:-45px;top:0;opacity:.21;z-index:0;pointer-events:none}
.hero-date{color:#e9ecd9;font-size:.72rem}
.hero-bottom{gap:16px;flex-wrap:wrap}
.metric,.panel,.order-card,.lounge-card{border-color:var(--line);box-shadow:0 2px 8px #0d302703}
.metric.accent{background:#e9efce}
.metric strong{font-variant-numeric:tabular-nums;letter-spacing:-.045em}
.progress{background:#e6e9da}.progress span{background:var(--green)}
.bottom-nav{background:#fffdf7f5;border-color:var(--line);padding-bottom:max(8px,env(safe-area-inset-bottom))}
.bottom-nav button.active{color:var(--green)}
.ticket{background:var(--card);border-color:#d7ddcf}
.ticket-head{background:var(--green);color:var(--paper);padding:22px 24px}
.ticket-head .brand-wrap{margin-bottom:17px}
.ticket-head .brand-logo{width:200px;max-width:100%}
.ticket-head .eyebrow{font-size:.56rem;letter-spacing:2px;color:#d1ddbf}
.ticket-name{font-family:var(--display);font-size:1.6rem;font-weight:400}
.ticket-status{background:#e9efce;color:var(--green)}
.verification-auth .auth-inner>.brand-wrap{display:flex}
.boot{font-family:var(--display);font-weight:400}.boot img{width:240px;max-width:70vw;height:auto}.boot p{font-family:Arial,sans-serif}
@media(min-width:768px){.hero{padding:34px;min-height:275px}.hero-emblem{width:360px;right:5%;top:-40px}.hero h2{max-width:75%}}
@media(min-width:1024px){.sidebar{background:var(--green);padding-top:30px}.sidebar .brand-wrap{margin:0 0 38px}.sidebar .brand-logo{width:184px}.sidebar nav button.active{background:var(--lime);color:var(--green)}.auth-main{padding:50px}.auth-inner>.brand-wrap{display:flex}.auth-art{padding:48px}.hero-emblem{opacity:.35}.ticket-head .brand-wrap{display:flex}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}
