:root{font-family:Arial,sans-serif;color:#20423d;background:#f4f7f4;line-height:1.6}
*{box-sizing:border-box}
body{margin:0}
body>header{padding:24px 6%;display:flex;align-items:center;gap:32px;background:white;border-bottom:1px solid #dbe4dc}
.logo{font-size:38px;line-height:1;color:#164c3c}
.logo span{display:block;font-size:9px;letter-spacing:3px;margin-top:6px}
body>main{max-width:1140px;margin:70px auto;padding:0 28px;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.intro h1,.card>h1{font-size:44px;line-height:1.15;margin:20px 0}
.intro h2,.card>h2{font-size:23px;margin-top:0}
.eyebrow{letter-spacing:3px;font-size:12px}
.intro>p{max-width:420px}
.intro ol{padding-left:22px;margin:32px 0}
.intro li{padding:6px}
.intro aside{border-top:1px solid #d2dfd4;padding-top:24px;margin-top:36px}
.intro a,#registration a,.card>a{color:#174d3d;font-weight:bold}
.card{background:white;border:1px solid #d5e0d7;border-radius:9px;padding:32px;box-shadow:0 10px 30px #1b483508;min-width:0}
.card .cl-rootBox,.card .cl-cardBox,.card .cl-card{width:100%;max-width:100%;min-width:0}
/* Keep GIBA form styles outside Clerk's self-contained sign-in/sign-up UI. */
#registration fieldset{border:0;padding:0;margin:0}
#registration label{display:block;margin:18px 0;font-size:14px}
#registration label>input:not([type=checkbox]){display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #bdcfc4;border-radius:4px;font:inherit}
input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #92af78;outline-offset:3px}
#registration label span{color:#5f766e}
#registration .consent{display:flex;gap:10px}
.consent input{flex-shrink:0;width:18px;height:18px}
#registration button,.card>button,.card>div>button{border:0;border-radius:4px;background:#174d3d;color:white;padding:15px 20px;font:inherit;font-weight:bold;width:100%;cursor:pointer;margin-top:18px}
#registration button:disabled,#registration fieldset:disabled button,.card>button:disabled,.card>div>button:disabled{opacity:.5;cursor:default}
#availability,#result{font-size:14px}
#availability:not(:empty),#result:not(:empty){background:#edf2e7;padding:12px;border-radius:4px}
.honey{position:absolute;left:-10000px}
body>footer{text-align:center;padding:25px;color:#687b72;font-size:12px}
@media(max-width:720px){body>main{grid-template-columns:1fr;gap:30px;margin:36px auto;padding:0 20px}.intro h1,.card>h1{font-size:36px}.card{padding:24px}body>header{gap:22px}.intro>p{max-width:none}.card .cl-card{padding:20px}.card .cl-formFieldInput{font-size:16px;min-height:44px}.card .cl-formButtonPrimary{min-height:44px}}
