/* Shared public navigation and access page visual layer. */
html{scroll-padding-top:170px}
header{background:#fff;border-radius:60px;min-height:88px;height:auto;padding:10px 16px 10px 24px;gap:24px;box-shadow:0 4px 18px #234c250a}
header .wordmark{flex-shrink:0}
header nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,2vw,28px);flex-wrap:nowrap;min-width:0;color:#234c25;font-size:13px;font-weight:700}
header nav>a,header nav>a:first-child,header nav>a:nth-child(3),header nav>a:nth-child(4){display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:44px}
header nav>a:not(.nav-cta):not(:last-child){padding:10px 3px}
header nav>a:not(.nav-cta):not(:last-child):hover{text-decoration:underline;text-underline-offset:5px}
header nav .nav-cta{background:#234c25;color:#fff;border-radius:99px;padding:15px 24px}
header nav .nav-cta:hover{background:#163c19}
header nav .nav-login,header nav>a:last-child{border:1px solid #234c25;border-radius:99px;padding:13px 23px;background:#fff;color:#234c25}
header nav .nav-login:hover,header nav>a:last-child:hover{background:#eff4d2}
header :is(a,button):focus-visible,.login-page :is(a,button,input,textarea,select):focus-visible{outline:3px solid #234c25;outline-offset:4px;box-shadow:0 0 0 2px #fff}
.inner-main{padding-top:170px}
.login-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:760px;background:#fff}
.login-panel{background:#fff;display:flex;flex-direction:column;justify-content:center;padding:170px clamp(30px,6vw,90px) 70px;min-width:0}
.login-panel h1{font-size:clamp(36px,3.7vw,56px);letter-spacing:-2px;line-height:1.05;color:#234c25;max-width:520px}
.login-panel p{color:#52634f;max-width:450px}
.login-panel .button{border-radius:99px}
.login-art{background:#d6a52f;position:relative;display:flex;align-items:center;justify-content:center;padding:170px clamp(24px,4vw,64px) 70px;overflow:hidden;min-width:0}
.login-card{background:#f5f0df;color:#234c25;border-radius:32px;padding:30px;width:min(100%,390px);box-shadow:0 22px 60px #704b2026;position:relative}
.login-card h2{font-size:36px;letter-spacing:-1.5px}
.login-card img{display:block;max-width:100%;height:auto;border-radius:22px}
.login-card .button{background:#234c25;color:#fff;border-radius:99px}
@media(max-width:1000px){header{gap:16px;padding-left:20px}header .logo-crop,header .logo-crop img{width:120px;height:48px}header nav{gap:12px;font-size:12px}header nav .nav-cta,header nav .nav-login,header nav>a:last-child{padding:13px 18px}}
@media(max-width:700px){html{scroll-padding-top:170px}header{top:25px;left:6%;right:6%;border-radius:28px;padding:12px 16px;gap:8px;flex-wrap:wrap;align-items:center}header .logo-crop,header .logo-crop img{width:120px;height:40px}header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:5px 8px;font-size:11px}header nav>a,header nav>a:first-child,header nav>a:nth-child(3),header nav>a:nth-child(4){display:inline-flex;min-height:38px;padding:8px 4px}header nav .nav-cta,header nav .nav-login,header nav>a:last-child{padding:9px 14px;min-height:38px}header nav .nav-cta span{display:none}header nav>a:nth-child(4){grid-column:1/3}header nav>a:last-child{grid-column:3} .hero{padding-top:225px}.inner-main{padding-top:170px}.login-page{grid-template-columns:1fr;min-height:0}.login-panel{padding:225px 7% 55px}.login-panel h1{font-size:43px}.login-art{padding:50px 7%;min-height:430px}.login-card{padding:26px;border-radius:28px}.login-card h2{font-size:32px}}
@media(max-width:380px){header{left:5%;right:5%;padding:11px 12px}header nav{font-size:10px;gap:5px}header nav .nav-cta,header nav .nav-login,header nav>a:last-child{padding:9px 10px}.login-panel h1{font-size:37px}}
/* Keep compact links easy to use without changing their visual hierarchy. */
footer>a:not(.wordmark),main .text-link,main .brand-secondary{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:700px){
  header nav>a,header nav>a:first-child,header nav>a:nth-child(3),header nav>a:nth-child(4),header nav>a:last-child{min-height:44px}
  form>input,form textarea{font-size:16px}
}
