/* Canvas 8 supplies the grid and utilities. These are Kelly-specific styles. */
:root{--forest:#123c30;--deep:#0b2922;--cream:#f7f4ec;--gold:#d7a568;--ink:#25392e;--cnvs-body-font:Arial,Helvetica,sans-serif;--cnvs-primary-font:Arial,Helvetica,sans-serif;--cnvs-themecolor:#123c30;--cnvs-body-color:#25392e;--cnvs-body-bg:#f7f4ec}
html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}#wrapper{background:var(--cream)}a{color:inherit}a:hover{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ac702b;outline-offset:6px}p{line-height:1.8}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h2{font-size:clamp(36px,4.1vw,59px);line-height:1.13;margin:0}h2 em{color:#8b6134;font-weight:400}button{font:inherit}.container{max-width:1200px}.section-space{padding:100px 0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.19em;margin-bottom:26px;line-height:1.5}.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--cream);padding:12px}.skip-link:focus{top:12px}
.site-header{background:#faf9f6;border-bottom:1px solid #e5e5db}.header-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:17px}.kelly-crest{display:block;width:80px;height:82px;flex-shrink:0;background:url('../images/wordpress-reference.png') 13.97% 3.19% / 1200% auto no-repeat}.brand-name{font-family:Georgia,serif;font-size:27px;letter-spacing:.17em;line-height:1.15}.brand-name>span{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.23em;margin-top:8px}#main-nav{display:flex;gap:42px;align-items:center;font-size:13px;font-weight:700}#main-nav>a{padding:12px 0}#main-nav .nav-cta{border:1px solid #c8cfc8;padding:14px 24px;display:flex;gap:34px}#main-nav>a:hover{color:#94622d}.menu-toggle{display:none;border:1px solid #aab5ad;background:transparent;padding:9px 12px;color:var(--forest)}
.hero{position:relative;overflow:hidden;background:var(--deep);color:var(--cream);min-height:700px}.hero-photo{position:absolute;inset:0 0 0 32%;background:url('../images/wordpress-reference.png') 66% 13.18% / auto 415.42% no-repeat}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b2922 3%,rgba(11,41,34,.97) 26%,rgba(11,41,34,.61) 52%,rgba(11,41,34,.09) 85%),linear-gradient(0deg,rgba(11,41,34,.7),transparent 35%)}.hero-content{position:relative;z-index:1;padding-top:72px;padding-bottom:140px}.hero .eyebrow{color:#e0bb84;display:flex;align-items:center;gap:14px}.small-rule{width:30px;height:1px;background:var(--gold)}.hero h1{font-size:clamp(66px,7vw,100px);line-height:.99;color:var(--cream);margin:0 0 28px}.hero h1 em{color:var(--gold)}.hero-description{font-size:16px;color:#e0e6de;margin-bottom:30px}.kg-button{padding:17px 23px;display:inline-flex;gap:30px;align-items:center;font-size:12px;font-weight:700;line-height:1.6}.gold{background:var(--gold);color:var(--deep)}.gold:hover{background:#ebbc80;color:var(--deep)}.hero-link{padding:17px 4px;font-size:12px;color:var(--cream);border-bottom:1px solid #84958a}.hero-link:hover{color:var(--gold)}.hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:1;border-top:1px solid #ffffff26;padding:22px 0;font-size:10px;letter-spacing:.14em}.hero-bottom a{letter-spacing:0;font-size:12px;color:var(--cream)}
.lead-copy{font-family:Georgia,serif;font-size:27px;line-height:1.35;margin-bottom:20px}.about p:not(.eyebrow):not(.lead-copy){font-size:15px;color:#5c675f}.text-link{font-size:12px;font-weight:700;border-bottom:1px solid #aeb7aa;padding-bottom:8px;display:inline-flex;gap:26px}.text-link:hover{color:#8b6134}.tradition-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d5dbd0;margin-top:60px;padding-top:27px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.gallery-section{background:#eaece3}.gallery-intro{font-size:14px;color:#576357;margin:0}.gallery-feature{display:block;position:relative;overflow:hidden}.trophy-image{display:block;aspect-ratio:2.7;background:url('../images/wordpress-reference.png') 50% 13.18% / auto 415.42% no-repeat}.photo-caption{position:absolute;inset:auto 0 0;padding:60px 36px 28px;background:linear-gradient(transparent,rgba(11,41,34,.91));color:var(--cream);display:flex;align-items:center;justify-content:space-between}.photo-caption small{display:block;font-size:9px;letter-spacing:.18em;margin-bottom:6px}.photo-caption strong{font-family:Georgia,serif;font-size:30px;font-weight:400}.round-arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid #ffffff80;border-radius:50%;font-size:23px;transition:background .2s}.gallery-feature:hover .round-arrow{background:var(--forest)}.gallery-note{display:flex;justify-content:space-between;gap:20px;padding-top:22px;font-size:11px;color:#576357}
.signup-section{background:var(--forest);color:var(--cream)}.signup-section .eyebrow{color:var(--gold)}.signup-section h2{color:var(--cream)}.signup-section h2 em{color:var(--gold)}.signup-section p:not(.eyebrow){color:#d5dfd4;max-width:490px;font-size:14px;margin:24px 0 0}.event-card{padding:32px;border:1px solid #769281;background:#ffffff04}.status{font-size:9px;letter-spacing:.13em;color:#e6c38c;display:flex;gap:8px;align-items:center}.status>span{width:6px;height:6px;border-radius:50%;background:var(--gold)}.event-card h3{color:var(--cream);font-size:33px;letter-spacing:-.03em;margin:22px 0 0}.event-card .closed-label{display:block;background:#dae0d3;color:#263e30;text-align:center;font-size:12px;font-weight:700;padding:15px;margin-top:24px}.signup-section .event-card .event-footnote{font-size:11px;line-height:1.7;margin-top:18px}.site-footer{padding:48px 0 22px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px}.footer-wordmark{font-family:Georgia,serif;font-size:33px;letter-spacing:-.04em}.footer-wordmark span{font-size:11px;font-family:Arial,sans-serif;letter-spacing:.08em;display:block;text-transform:uppercase}.footer-top p{font-family:Georgia,serif;font-style:italic;font-size:18px;margin:0;color:#707867}.footer-top nav{display:flex;gap:27px;font-size:12px}.footer-bottom{border-top:1px solid #d5dbd0;padding-top:22px;margin-top:38px;font-size:10px;color:#647062}
@media(min-width:1400px){.container{max-width:1200px}}
@media(max-width:991.98px){.section-space{padding:70px 0}.hero{min-height:650px}.hero-photo{left:12%}.hero-content{padding-top:65px}.tradition-row{margin-top:40px}.gallery-intro br{display:none}.footer-top p{display:none}}
@media(max-width:575.98px){.container{padding-left:24px;padding-right:24px}.header-inner{min-height:94px;flex-wrap:wrap;gap:0}.brand-name{font-size:23px}.brand{gap:10px}.kelly-crest{width:63px;height:65px}.menu-toggle:not([hidden]){display:block}#main-nav{width:100%;gap:26px;justify-content:space-between;padding:12px 0 20px}html.js #main-nav:not(.is-open){display:none}#main-nav .nav-cta{padding:10px 14px;gap:14px}.hero-photo{left:0;opacity:.58;background-position:60% 13.18%}.hero:after{background:linear-gradient(90deg,rgba(11,41,34,.95),rgba(11,41,34,.35)),linear-gradient(0deg,#0b2922,transparent 70%)}.hero-content{padding-top:55px;padding-bottom:120px}.hero h1{font-size:72px}.hero-bottom span{max-width:180px;font-size:8px}.hero-bottom a{font-size:10px;align-self:center}.hero .eyebrow{font-size:9px}.hero-description{font-size:15px}.kg-button{padding:15px 18px}.section-space{padding:58px 0}.tradition-row{flex-direction:column;gap:18px}.trophy-image{aspect-ratio:1.15;background-position:57% 13.18%}.photo-caption{padding:65px 22px 22px}.photo-caption strong{font-size:25px}.gallery-note{flex-direction:column;align-items:flex-start}.event-card{padding:26px}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-bottom{gap:12px;margin-top:28px}.site-footer{padding-top:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Shared navigation stays usable through narrow tablets as well as phones. */
#main-nav .nav-cta{white-space:nowrap}
@media(max-width:767.98px){.header-inner{flex-wrap:wrap;gap:0}.menu-toggle:not([hidden]){display:block}#main-nav{width:100%;gap:12px;flex-wrap:wrap;justify-content:space-between;padding:12px 0 20px}html.js #main-nav:not(.is-open){display:none}#main-nav .nav-cta{padding:10px 14px;gap:14px}}
@media(min-width:576px) and (max-width:1239.98px){.about .row.g-5,.signup-section .row.g-5{--bs-gutter-x:1.5rem}}
