*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:#183d33;background:#f8faf7;font:16px/1.6 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b28534;outline-offset:3px}[hidden]{display:none!important}.concept{background:#143e32;color:white;text-align:center;padding:9px 20px;font-size:13px;letter-spacing:.06em}.concept span{letter-spacing:0;margin-left:18px}.reg-header{max-width:1280px;margin:auto;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:bold 30px Georgia,serif}.brand img{width:56px;height:56px;object-fit:contain}.brand small{display:block;font:10px Arial,sans-serif;letter-spacing:.13em}.reg-header nav{display:flex;align-items:center;gap:26px;font-size:14px}.nav-cta{padding:10px 18px;border:1px solid #173e33;text-decoration:none;border-radius:3px}.reg-hero{position:relative;background:#153d32;color:white;min-height:450px;display:flex;align-items:center}.reg-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 50%}.reg-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,35,27,.94),rgba(8,35,27,.65) 55%,rgba(8,35,27,.12))}.hero-copy{position:relative;z-index:1;max-width:1280px;width:100%;margin:auto;padding:52px 6%}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:700;margin:0 0 15px}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.08;margin:0 0 20px}h1{font-size:clamp(46px,6vw,76px)}h2{font-size:clamp(32px,4vw,44px)}h3{font-size:18px;line-height:1.3;margin:0 0 8px}p{margin:0 0 18px}.hero-lead{font-size:20px;line-height:1.5}.hero-fine{font-size:13px;max-width:500px;margin:18px 0 0;color:#dde6dc}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:#173f33;color:white;border:1px solid #173f33;border-radius:3px;padding:14px 23px;font-weight:600;text-decoration:none;cursor:pointer;min-height:48px}.button.light{background:#fff;color:#163e32;border-color:#fff}.button.secondary{background:transparent;color:#173f33}.button:disabled{opacity:.65;cursor:wait}.field-line{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #d3ddd2;padding:28px 0}.field-line div{display:flex;align-items:center;gap:18px;padding:0 28px}.field-line div+div{border-left:1px solid #d3ddd2}.field-line strong{font:42px Georgia,serif}.field-line span{font-size:14px;line-height:1.4;max-width:140px}.section{max-width:1200px;padding:65px 35px;margin:auto}.week-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:80px}.muted{color:#586a61;font-size:14px}.week-list{padding:0;margin:0;list-style:none}.week-list li{display:grid;grid-template-columns:110px 1fr;gap:22px;padding:20px 0;border-top:1px solid #d3ddd2}.week-list li>span{font:25px Georgia,serif}.week-list small{display:block;font:11px Arial,sans-serif;letter-spacing:.03em;margin-top:8px}.week-list p{color:#586a61;font-size:15px;margin:0}.final-day{border-bottom:2px solid #af8d4c}.entry-layout{max-width:1280px;display:grid;grid-template-columns:1fr 1.8fr;gap:55px;border-top:1px solid #d3ddd2}.entry-aside{padding-top:15px}.aside-note{border-top:1px solid #d3ddd2;padding-top:22px;margin-top:26px}.aside-note p{font-size:15px}.form-panel{background:white;border:1px solid #d3ddd2;box-shadow:0 10px 35px #143e3208;border-radius:5px;padding:34px}.form-heading h2{font-size:32px}.disclosure{background:#eef2eb;padding:16px;font-size:14px;border-left:3px solid #a78443}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.full{grid-column:1/-1}fieldset{border:0;padding:25px 0 30px;margin:0;min-width:0}fieldset+fieldset{border-top:1px solid #d3ddd2}legend{font:24px Georgia,serif;padding:0}legend span{font:13px Arial,sans-serif;color:#937133;margin-right:10px}label{display:block;font-size:14px;font-weight:600}input,select,textarea{display:block;width:100%;padding:11px 12px;border:1px solid #b6c5bc;border-radius:3px;background:white;color:#173f33;margin-top:7px;min-width:0}textarea{resize:vertical}input:disabled{background:#edf1ed}label small{display:block;color:#586a61;font-size:12px;font-weight:400;margin-top:7px}.check{display:flex;align-items:flex-start;gap:10px;font-weight:400}.check input{width:18px;height:18px;flex-shrink:0;margin:4px 0 0;accent-color:#173f33}.small{font-size:13px}.optional{font-size:12px;color:#687c70;font-weight:400}.form-bottom{border-top:1px solid #d3ddd2;padding-top:23px}.form-bottom .button{width:100%;margin-bottom:12px}.form-bottom .check{margin-bottom:22px}#form-error,.error{color:#a02c28;font-size:14px}.invalid{border-color:#a02c28}.field-error{display:block;color:#a02c28;font-size:12px;margin-top:5px}.trap{position:absolute;left:-9999px}.reg-footer{background:#173f33;color:white;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:35px 6%;font-size:13px}.reg-footer p{margin:0}.reg-footer .brand{font-size:24px}#receipt{padding:25px 0}dl{margin:20px 0}dt{font-size:12px;color:#586a61}dd{margin:0 0 15px;overflow-wrap:anywhere}.admin-main{max-width:1250px;margin:auto;padding:45px 5%}.login-panel{max-width:460px;margin:50px auto;background:white;border:1px solid #d3ddd2;padding:30px;border-radius:5px}.login-panel .button{width:100%;margin-top:18px}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:24px}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-stats{display:flex;gap:40px;border-block:1px solid #d3ddd2;padding:20px 0;margin:22px 0}.admin-stats strong{font:34px Georgia,serif;display:block}.admin-stats span{font-size:13px}.admin-filters{display:grid;grid-template-columns:2fr 1fr auto;align-items:end;gap:15px;margin:22px 0}.table-wrap{overflow-x:auto;background:white;border:1px solid #d3ddd2;border-radius:4px}table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}th{background:#eaf0e8;font-size:12px;letter-spacing:.02em;padding:13px}td{padding:16px 13px;border-top:1px solid #d3ddd2;vertical-align:top}td small{display:block;color:#586a61}td button{background:none;border:0;padding:0;color:#173f33;text-decoration:underline;font-weight:600;cursor:pointer;text-align:left}.status{background:#eaf0e8;padding:5px 8px;border-radius:3px;white-space:nowrap;font-size:12px}.empty-state{text-align:center;padding:50px 20px}.empty-state h3{font:28px Georgia,serif}.detail-panel{margin-top:25px;padding:25px;background:white;border:1px solid #d3ddd2}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 25px}.detail-grid dd{white-space:pre-wrap}.detail-panel .admin-heading h2{font-size:30px}.admin-notice{font-size:14px;margin:20px 0}
@media(max-width:760px){.concept span{display:block;margin:3px 0 0;line-height:1.4}.reg-header{padding:16px 5%;flex-wrap:wrap}.reg-header nav{gap:18px;flex-wrap:wrap}.brand{font-size:26px}.reg-hero{min-height:430px}.hero-copy{padding:38px 6%}.hero-lead{font-size:18px}.field-line{padding:18px 5%;gap:16px}.field-line div{padding:0;display:block}.field-line div+div{border:0}.field-line strong{font-size:32px;display:block}.field-line span{font-size:12px}.section{padding:40px 6%}.week-layout,.entry-layout{grid-template-columns:1fr;gap:25px}.week-layout h2 br,.entry-aside h2 br{display:none}.week-list li{grid-template-columns:90px 1fr;gap:12px}.form-panel{padding:24px 18px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.reg-footer{align-items:flex-start;flex-direction:column;gap:16px}.admin-heading{align-items:flex-start;flex-direction:column}.admin-filters{grid-template-columns:1fr}.admin-stats{gap:24px}.detail-grid{grid-template-columns:1fr 1fr}.admin-main{padding:30px 5%}.admin-actions .button{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.registration-intro{max-width:1280px;margin:auto;padding:24px 35px 26px;border-bottom:1px solid #d3ddd2}
.registration-intro h1{font-size:clamp(32px,4vw,52px);margin-bottom:12px}
.registration-intro h1 span{color:#617664}
.registration-intro>p:not(.eyebrow){margin-bottom:7px}
.registration-intro .intro-date{font-size:14px;color:#586a61}
.registration-layout{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:42px;padding-top:28px;border-top:0;align-items:start}
.registration-layout .form-panel{padding:25px 30px}
.registration-layout .form-heading h2{font-size:28px;margin-bottom:13px}
.registration-layout .disclosure{padding:10px 13px;margin-bottom:10px;font-size:13px}
.registration-layout .compact-aside{padding-top:0}
.entry-course{display:block;width:100%;height:160px;object-fit:cover;border-radius:3px;margin-bottom:24px}
.compact-aside h2{font-size:34px;line-height:1.15;margin-bottom:12px}
.value-list{list-style:none;padding:0;margin:20px 0}
.value-list li{padding:17px 0;border-top:1px solid #d3ddd2}
.value-list strong{display:block;font-size:16px;margin-bottom:5px}
.value-list span{display:block;font-size:14px;color:#586a61}
.compact-aside details{border-block:1px solid #d3ddd2;padding:16px 0}
.compact-aside summary{font-size:16px;font-weight:600;cursor:pointer}
.compact-week{margin-bottom:0}
.compact-week dt{font-size:14px;font-weight:600;color:#173f33}
.compact-week dd{font-size:14px;margin-top:4px;color:#586a61}
.entry-terms{font-size:13px;margin-top:20px}
@media(max-width:760px){.registration-intro{padding:20px 6%}.registration-intro .eyebrow{font-size:11px}.registration-intro h1 span{display:block}.registration-layout{grid-template-columns:1fr;padding-top:22px;gap:32px}.registration-layout .form-panel{padding:23px 18px}.entry-course{height:180px}.reg-header nav .nav-cta{padding:7px 12px}}
.reg-header .primary-menu{gap:6px;flex-wrap:wrap;justify-content:flex-end}
.primary-menu a{display:block;padding:10px 12px;text-decoration:none;border-radius:3px;white-space:nowrap}
.primary-menu a:hover{background:#e5ede2}
.primary-menu a[aria-current=page]{background:#173f33;color:white}
.registration-intro h1 span{display:block;margin-top:5px;color:#173f33}
@media(max-width:1000px){.reg-header:has(.primary-menu){flex-direction:column;align-items:flex-start;gap:15px}.reg-header .primary-menu{justify-content:flex-start;width:100%}}
@media(max-width:600px){.reg-header .primary-menu{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-top:1px solid #d3ddd2;padding-top:12px}.primary-menu a{font-size:14px;padding:9px 10px}.primary-menu a[aria-current=page]{grid-column:1/-1;text-align:center}.registration-intro h1{font-size:32px;line-height:1.12}}

.entry-course{height:auto;aspect-ratio:3/2;object-position:50% 50%}

/* Distinct people and competition photography, after the entry form on mobile. */
.entry-course{aspect-ratio:933/700;height:auto}.entry-action{margin:26px 0 20px}.entry-action img{display:block;width:100%;height:auto;aspect-ratio:1000/563;border-radius:3px}
