:root{--ink:#1f3136;--deep:#173c48;--accent:#bb8752;--paper:#fffdf9;--mist:#f3f1ec;--line:#e8e4dc;--muted:#67777a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.55}button,select{font:inherit}button{cursor:pointer}a{color:#176277}.site-header{height:73px;padding:0 clamp(18px,4vw,50px);display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;letter-spacing:.18em;color:var(--deep)}.brand-mark{font-family:Georgia,serif;font-size:33px;border:1px solid var(--deep);border-radius:50%;width:46px;height:46px;text-align:center;line-height:44px}.brand strong,.brand small{display:block;font-weight:600;line-height:1.2}.brand small{font-size:10px;letter-spacing:.42em}.text-button{background:transparent;border:0;color:var(--deep);text-decoration:underline}.start{max-width:1180px;min-height:calc(100vh - 147px);margin:auto;display:grid;grid-template-columns:1fr 1fr}.start-photo{min-height:470px;background:linear-gradient(150deg,rgba(13,48,58,.05),rgba(13,48,58,.55)),url('https://images.unsplash.com/photo-1539037116277-4db20889f2d4?auto=format&fit=crop&w=1100&q=85') center/cover;position:relative}.photo-credit{position:absolute;left:35px;bottom:35px;color:white;letter-spacing:.04em}.start-content{padding:clamp(28px,6vw,86px);align-self:center}.eyebrow{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.19em;margin:0 0 13px;text-transform:uppercase}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.13}h1{font-size:clamp(35px,5.3vw,57px);margin:0 0 22px}h1 em{font-weight:400;color:var(--accent)}h2{font-size:35px;margin:0}h3{font-size:23px;margin:0 0 12px}.start-content>p:not(.eyebrow){color:var(--muted)}label{display:block;font-weight:bold;margin-top:30px;margin-bottom:8px}select{width:100%;padding:15px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink)}.primary{background:var(--deep);color:white;border:0;padding:15px 22px;width:100%;margin-top:16px;letter-spacing:.03em}.primary:hover{background:#286071}.disclaimer,.fine{font-size:12px!important;color:var(--muted)}.hero{background:var(--deep);color:white;text-align:center;padding:36px 20px 37px}.hero h1{font-size:clamp(29px,6vw,46px);margin-bottom:6px}.hero p:last-child{margin:0;color:#cfdfdb}.tabs{display:flex;justify-content:center;gap:0;background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}.tabs button{padding:16px clamp(8px,3vw,23px);border:0;border-bottom:3px solid transparent;background:white;font-size:13px;color:var(--muted)}.tabs button.active{border-color:var(--accent);color:var(--deep);font-weight:700}.page{max-width:790px;margin:auto;padding:30px 18px 50px}.section-header{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.year{color:var(--muted);font-size:12px;letter-spacing:.12em}.date-scroll{display:flex;overflow-x:auto;gap:7px;padding:0 0 14px;margin-bottom:8px}.date-scroll button{min-width:70px;background:white;border:1px solid var(--line);color:var(--deep);padding:7px;border-radius:4px}.date-scroll button.active{background:var(--deep);color:white;border-color:var(--deep)}.date-scroll strong,.date-scroll small{display:block}.date-scroll small{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.day-heading{color:var(--deep);font-family:Georgia,serif;font-size:23px;margin:20px 0 15px}.event{display:flex;gap:15px;align-items:center;width:100%;text-align:left;background:white;border:1px solid var(--line);border-radius:5px;padding:15px;margin:10px 0;box-shadow:0 2px 9px #20394307}.time{font-weight:bold;color:var(--deep);width:60px;flex-shrink:0;font-size:13px}.event-main{flex:1}.event-title{font-weight:bold;font-size:15px}.event-sub{font-size:12px;color:var(--muted)}.tag{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#9a713e}.arrow{font-size:24px;color:var(--accent)}.intro{color:var(--muted)}.explore-card{display:grid;grid-template-columns:125px 1fr;gap:15px;align-items:center;background:white;border:1px solid var(--line);padding:9px;margin:14px 0;cursor:pointer;border-radius:5px}.explore-picture,.detail-image{background:linear-gradient(145deg,#7b9786,#2c4953);object-fit:cover}.explore-picture{width:125px;height:110px}.explore-card h3{font-size:19px;margin:0 0 7px}.explore-card p{color:var(--muted);margin:0;font-size:12px}.panel{background:#f8f7f3;padding:23px;border:1px solid var(--line);margin-top:18px}.panel p{margin:8px 0}.modal{position:fixed;inset:0;z-index:10;display:flex;justify-content:center;align-items:end}.modal[hidden],section[hidden],main[hidden],button[hidden]{display:none!important}.modal-backdrop{position:absolute;inset:0;background:#18252ac4}.modal-card{z-index:1;position:relative;background:var(--paper);width:min(100%,680px);max-height:92vh;overflow-y:auto;border-radius:14px 14px 0 0;padding:22px 22px 35px}.close{position:absolute;right:16px;top:10px;background:#fff;border:1px solid var(--line);border-radius:50%;width:37px;height:37px;font-size:24px;z-index:2}.detail-image{width:100%;height:210px;margin:0 0 20px;border-radius:5px}.details{white-space:pre-wrap}.details a{overflow-wrap:anywhere}.meta{color:var(--muted);font-size:13px}footer{padding:23px 18px;background:#112f3a;color:white;text-align:center;letter-spacing:.16em;font-size:11px}footer span{display:block;letter-spacing:0;color:#bacaca;font-size:12px;margin-top:4px}@media(max-width:650px){.start{display:block}.start-photo{min-height:210px}.start-content{padding:28px 23px 40px}.hero{padding:29px 12px}.tabs button{flex:1;font-size:12px;padding:15px 5px}.explore-card{grid-template-columns:95px 1fr}.explore-picture{width:95px;height:93px}} 

.explore-picture img{width:100%;height:100%;object-fit:cover}.detail-image{object-fit:cover;display:block;background:#e8e4dc}.text-button{font-size:13px}#syncStatus{margin-top:14px}button:disabled{opacity:.55;cursor:wait}


/* Helicon refinement, October 2026. Brand-consistent editorial typography and touch sizing. */
:root{--ink:#203239;--deep:#173c48;--accent:#b88450;--paper:#fcfaf6;--mist:#f5f2eb;--line:#e6e2d9;--muted:#66777b}
html{scroll-behavior:smooth}body{font-size:16px;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}a{color:var(--deep);text-underline-offset:3px}a:hover{color:#a8733f}
.site-header{height:82px;border-bottom:1px solid #e9e6df;box-shadow:0 1px 3px #1c384309}.brand{gap:12px;letter-spacing:.19em}.brand-mark{width:51px;height:51px;line-height:48px;border:1.5px solid var(--deep);font-size:35px}.brand strong{font-size:16px;letter-spacing:.24em}.brand small{font-size:10px;margin-top:3px}.text-button{text-underline-offset:4px;min-height:42px}
.hero{padding:36px 20px 39px;background:var(--deep)}.hero h1{max-width:850px;margin:0 auto 11px;font-size:clamp(30px,5vw,51px);line-height:1.12}.hero .eyebrow{font-size:11px;letter-spacing:.24em;margin-bottom:17px}.hero p:last-child{font-size:15px;line-height:1.5}
.tabs{box-shadow:0 1px 8px #1935400a}.tabs button{min-height:54px;white-space:nowrap;font-size:14px;transition:color .15s,border-color .15s}.tabs button:hover{color:var(--deep)}.page{padding-top:36px}.section-header{margin-bottom:27px;gap:12px}h2{font-size:clamp(34px,5vw,42px)}.eyebrow{letter-spacing:.2em}.date-scroll{gap:9px;padding:0 0 14px}.date-scroll button{border:1px solid #dcded9;min-height:64px;min-width:76px;border-radius:7px}.date-scroll button:hover{border-color:var(--accent)}.date-scroll strong{font-size:17px;margin-top:1px}.date-scroll small{font-size:11px}.day-heading{font-size:26px;margin:22px 0 17px}
.event{min-height:88px;border-radius:9px;padding:17px 16px;gap:14px;box-shadow:0 2px 12px #20394309;transition:border-color .2s,box-shadow .2s,transform .2s}.event:hover{border-color:#cab79f;box-shadow:0 6px 18px #20394312;transform:translateY(-1px)}.time{font-size:14px;min-width:57px;width:57px}.event-title{display:inline-block;font-size:16px;color:var(--deep);line-height:1.4;margin-top:2px}.event-sub{display:inline-block;font-size:13px;line-height:1.65;margin-top:2px}.tag{font-size:10px;letter-spacing:.14em}.arrow{font-size:26px}.explore-card{border-radius:9px;overflow:hidden;transition:box-shadow .2s,border-color .2s}.explore-card:hover{border-color:#cab79f;box-shadow:0 5px 16px #20394312}.explore-picture,.explore-picture img{border-radius:5px}.panel{border-radius:7px;background:#f6f3ed}.modal-card{border-radius:18px 18px 0 0;padding:27px 23px max(35px,env(safe-area-inset-bottom))}.detail-image{height:auto;max-height:300px;aspect-ratio:16/9}.modal-card h2{font-size:clamp(32px,5vw,43px);line-height:1.16;margin-bottom:16px}.modal-card .meta{font-size:14px;line-height:1.65;margin-bottom:25px}.details{white-space:normal;line-height:1.75;font-size:16px}.details p{margin:0 0 15px}.details strong{color:var(--ink)}.details p:has(strong:first-child){margin-top:21px}.details a{text-decoration-thickness:1px}.close{width:43px;height:43px;right:13px;top:12px}footer{padding-bottom:max(23px,env(safe-area-inset-bottom))}
@media(max-width:650px){.site-header{height:80px;padding:0 17px}.brand-mark{height:47px;width:47px;font-size:32px;line-height:44px}.brand strong{font-size:14px}.hero{padding:33px 17px 35px}.hero h1{font-size:clamp(30px,7vw,42px)}.hero p:last-child{font-size:14px}.tabs{justify-content:space-around}.tabs button{font-size:13px;padding:14px 7px;min-height:59px}.page{padding:30px 17px 46px}.section-header{margin-bottom:23px}.date-scroll button{min-width:72px}.event{padding:15px 12px;gap:11px}.time{width:49px;min-width:49px}.event-title{font-size:15px}.event-sub{font-size:12px}.modal-card{padding:25px 20px max(32px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.event,.explore-card{transition:none}.event:hover{transform:none}}

/* Website-matched visual language, based on the supplied Helicon Arts 2026 course-page PDF.
   Distinct from the navy PWA HOME-SCREEN ICON, which is retained intentionally. */
:root{--ink:#232b30;--deep:#163e4c;--accent:#bc2672;--paper:#fff;--mist:#f8f9fa;--line:#e3e8e9;--muted:#626d74;--brand-blue:#006f96;--brand-magenta:#bb236e}
body{background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.62}
h1,h2,h3,.day-heading{font-family:Arial,Helvetica,sans-serif;font-weight:500;letter-spacing:-.025em;line-height:1.2}
h1{font-size:clamp(29px,5.2vw,43px)}h2{font-size:clamp(28px,4vw,35px)}h3{font-size:22px}
.site-header{height:79px;padding:0 clamp(18px,4vw,50px);background:#fff;border-bottom:1px solid #edf0f0;box-shadow:none}
.brand{gap:0;letter-spacing:normal}.brand-logo{width:178px;height:auto;display:block;object-fit:contain}
.text-button{color:var(--brand-blue);font-size:14px;font-weight:500;text-decoration-color:#8ac1d2;text-underline-offset:4px}
a{color:var(--brand-blue)}a:hover{color:var(--brand-magenta)}
.start-photo{background-image:linear-gradient(150deg,rgba(0,0,0,0),rgba(0,0,0,.22)),url('https://images.unsplash.com/photo-1539037116277-4db20889f2d4?auto=format&fit=crop&w=1100&q=85')}
.start-content{background:white}.start-content h1 em{font-style:normal;color:var(--brand-magenta)}.start-content p:not(.eyebrow){color:var(--muted)}
.eyebrow{color:var(--brand-magenta);letter-spacing:.14em;font-size:11px}
.primary{background:var(--brand-blue)}.primary:hover{background:var(--deep)}
.hero{background:#fff;color:#252b2f;text-align:left;padding:27px max(20px,calc((100vw - 790px)/2)) 32px;border-bottom:1px solid var(--line)}
.hero .eyebrow{font-size:11px;color:var(--brand-magenta);letter-spacing:.12em;margin:0 0 9px}
.hero h1{font-size:clamp(27px,5vw,40px);max-width:790px;margin:0 0 9px;line-height:1.2}
.hero p:last-child{color:var(--muted);font-size:14px}
.tabs{background:#fff;box-shadow:none;border-bottom:1px solid #e6eaea}.tabs button{background:white;color:#55636b;border-bottom-width:3px;font-weight:500}
.tabs button.active{color:var(--brand-blue);border-color:var(--brand-magenta);font-weight:700}
.page{padding-top:31px}.section-header{margin-bottom:22px}.section-header h2{color:#232b30}
.date-scroll button{border-color:#dfe6e8;border-radius:4px;color:#34454b}.date-scroll button.active{background:var(--brand-blue);color:white;border-color:var(--brand-blue)}
.day-heading{font-size:24px;color:#222e33;font-weight:500}
.event{box-shadow:none;border-radius:5px;border:1px solid #e2e8eb;min-height:82px}
.event:hover{border-color:#a9cbd9;box-shadow:0 3px 11px #1b4b6010}
.event-title{color:var(--brand-blue);font-weight:700;font-size:16px}
.time{color:#263f48}.tag{color:#a16d40;letter-spacing:.08em}.arrow{color:var(--brand-magenta)}
.explore-card{border-radius:5px;box-shadow:none}.explore-card h3{color:var(--brand-blue);font-size:20px}
.panel{background:#f8fafb;border-radius:4px;border-color:#e7ebee}.panel h3{font-weight:600}
.modal-card{background:white}.modal-card h2{font-weight:500}.details{font-size:16px;line-height:1.7}.details strong{font-weight:700}
footer{background:#f6f8f9;color:#364b52;border-top:1px solid #e5e9eb}footer span{color:#64777d}
@media(max-width:650px){.site-header{height:74px;padding:0 17px}.brand-logo{width:159px}.hero{padding:25px 19px 27px}.hero h1{font-size:clamp(27px,6vw,34px)}.tabs button{font-size:13px;padding:14px 5px}.event{padding:15px 12px}.date-scroll button.active{background:#006f96}}

/* Personal portal additions — brand matched */
[hidden]{display:none!important}.header-actions{display:flex;gap:14px;align-items:center}
.login-shell{min-height:calc(100vh - 160px);display:flex;align-items:center;justify-content:center;padding:35px 18px;background:#f8f9fa}
.login-panel{background:#fff;border:1px solid #e3e8e9;border-radius:7px;padding:clamp(25px,5vw,48px);max-width:520px;width:100%;box-shadow:0 12px 40px #163e4c0b}
.login-panel h1{margin-bottom:14px}.login-panel>p{color:#64777d}.login-panel label{margin-top:18px}
.login-panel input{display:block;width:100%;border:1px solid #cdd8dc;border-radius:4px;padding:14px 13px;font:inherit;color:#203139;background:white}
.login-panel input:focus-visible{outline:2px solid #006f96;outline-offset:2px}.login-panel button{margin-top:24px}
#loginMessage{min-height:23px;color:#a21b51!important;margin-top:14px}
.account-fields{margin-top:12px}.account-field{padding:14px 0;border-bottom:1px solid #e3e8e9;display:grid;grid-template-columns:135px 1fr;gap:12px;overflow-wrap:anywhere}
.account-field:last-child{border-bottom:0}.account-field span{color:#62717a}.account-field strong{font-weight:500}
.history-card{background:white;border:1px solid #e3e8e9;border-radius:5px;padding:17px 19px;margin:12px 0}.history-card h3{color:#176277;font-size:18px;font-weight:600;margin:0 0 4px}.history-card p:last-child{color:#64777d;font-size:13px;margin:0}
#courseHistory>h3{font-size:23px;margin:27px 0 14px}.muted{color:#64777d}
@media(max-width:650px){.tabs{overflow-x:auto;justify-content:flex-start}.tabs button{flex:0 0 auto;min-width:96px;padding:12px 9px}.account-field{grid-template-columns:1fr;gap:1px}.site-header .text-button{font-size:12px}.brand-logo{max-width:145px}}
