:root{--green:#173b2b;--deep:#0d291d;--cream:#f5f0e5;--paper:#fbfaf6;--gold:#c3a35a;--ink:#23332b;--muted:#6e7b74;--line:#d8d8cd}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif}.top{height:76px;position:sticky;top:0;z-index:30;background:rgba(251,250,246,.94);backdrop-filter:blur(14px);border-bottom:1px solid #e4e2d8;display:flex;align-items:center;justify-content:space-between;padding:0 4vw}.brand{display:flex;align-items:center;gap:10px;color:var(--green);text-decoration:none;font-family:"DM Serif Display",serif;font-size:19px}.brand img{width:42px;height:42px;object-fit:contain}.brand b{color:var(--gold)}nav{display:flex;gap:21px}nav a{font-size:12px;font-weight:700;text-decoration:none;color:var(--green);letter-spacing:.02em}nav a:hover{color:#9c7832}.menu{display:none;border:0;background:none;font-size:25px}.hero{min-height:calc(100vh - 76px);padding:7vw 8vw 6vw;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;overflow:hidden;background:radial-gradient(circle at 82% 45%,#e8dfc8 0,transparent 34%),linear-gradient(135deg,#fbfaf6 0,#f2ecdf 100%)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:11px;color:#9d7d3b}.hero h1,.heading h2,.prize-copy h2{font:400 clamp(54px,7vw,104px)/.88 "DM Serif Display",serif;color:var(--green);margin:18px 0 26px}.hero h1 em{color:var(--gold);font-style:italic}.lead{font-size:18px;line-height:1.7;max-width:650px;color:#52635a}.actions{display:flex;gap:12px;margin:32px 0}.btn{display:inline-block;padding:13px 19px;border:1px solid #c9c9bd;border-radius:99px;text-decoration:none;color:var(--green);font-size:13px;font-weight:800}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.facts{display:flex;gap:34px;margin-top:42px;color:var(--muted);font-size:12px}.facts b{font:400 30px "DM Serif Display";display:block;color:var(--green)}.hero-art{text-align:center}.hero-art img{width:min(90%,530px);filter:drop-shadow(0 28px 28px rgba(30,42,35,.15))}.marquee{padding:17px 4vw;background:var(--green);color:#fff;display:flex;justify-content:space-around;gap:20px;font:400 19px "DM Serif Display";letter-spacing:.08em}.marquee i{color:var(--gold)}.section{padding:105px 7vw}.heading{max-width:800px;margin-bottom:50px}.heading h2,.prize-copy h2{font-size:clamp(48px,6vw,82px);margin:9px 0 15px}.heading>p:last-child{color:var(--muted);font-size:17px;line-height:1.6}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;min-height:235px}.card.feature{background:var(--cream)}.card .num{font:400 40px "DM Serif Display";color:#d4c59f}.card h3,.course h3,.timeline h3,.darkcard h3,.bring h3,.award h3{font:400 27px "DM Serif Display";color:var(--green);margin:12px 0}.card p,.course p,.timeline p,.darkcard p{line-height:1.7;color:#617068}.card a{color:#8d6b28;font-weight:800;font-size:13px}.dark{background:var(--deep);color:white}.heading.light h2,.heading.light p:last-child{color:white}.rounds{display:grid;gap:12px}.rounds article{display:grid;grid-template-columns:120px 1fr 110px;align-items:center;border-top:1px solid #385344;padding:27px 0}.rounds article:last-child{border-bottom:1px solid #385344}.rounds .day{color:var(--gold);font-weight:800;font-size:12px;letter-spacing:.12em}.rounds h3{font:400 31px "DM Serif Display";margin:0}.rounds p{color:#aebdb4}.rounds strong{font:400 68px "DM Serif Display";color:#fff;text-align:right}.compact{margin-top:35px}.darkcard{border:1px solid #385344;border-radius:20px;padding:25px}.darkcard h3{color:white}.darkcard p{color:#b6c1ba}.darkcard.gold{background:#b8944b;border-color:#b8944b}.darkcard.gold p{color:#fff}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.course{background:white;border:1px solid var(--line);border-radius:28px;overflow:hidden}.course-photo{height:320px;background-position:center;background-size:cover;position:relative}.photo-a{background-image:linear-gradient(0deg,rgba(9,35,24,.25),rgba(9,35,24,.02)),url('assets/kaggeholm.png')}.photo-b{background-image:linear-gradient(0deg,rgba(9,35,24,.25),rgba(9,35,24,.02)),url('assets/birka.jpeg')}.course-photo span{position:absolute;left:22px;bottom:22px;background:white;border-radius:99px;padding:9px 13px;font-weight:800;font-size:11px}.course-copy{padding:28px}.warm{background:var(--cream)}.timeline{border-top:1px solid #cfc7b5}.timeline article{display:grid;grid-template-columns:130px 300px 1fr;gap:25px;padding:25px 0;border-bottom:1px solid #cfc7b5;align-items:start}.timeline b{font-size:11px;letter-spacing:.14em;color:#997a3d}.timeline h3{margin:0}.timeline p{margin:0}.bring{margin-top:40px;background:var(--green);color:white;border-radius:25px;padding:30px 35px;display:grid;grid-template-columns:1fr 2fr;align-items:center}.bring h3{color:white;margin:0}.bring span{font-size:27px;color:var(--gold)}.bring p{line-height:1.8}.history-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.history-grid figure{margin:0;position:relative;border-radius:20px;overflow:hidden;aspect-ratio:1.2;background:#ddd}.history-grid img{width:100%;height:100%;object-fit:cover;transition:.4s}.history-grid figure:hover img{transform:scale(1.035)}.history-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:35px 18px 17px;background:linear-gradient(transparent,rgba(7,28,19,.88));color:white;display:flex;justify-content:space-between;align-items:end}.history-grid figcaption b{font:400 22px "DM Serif Display"}.history-grid figcaption span{font-size:11px;font-weight:700;color:#e4cf98}.history-grid .bonus{outline:3px solid var(--gold);outline-offset:-3px}.history-note{margin-top:25px;border-left:4px solid var(--gold);padding:16px 20px;background:#f5f0e5}.prizes{background:linear-gradient(120deg,#f3ecdc,#fbfaf6);display:grid;grid-template-columns:1.05fr .95fr;align-items:center}.prize-art{text-align:center}.prize-art img{width:min(90%,500px);filter:drop-shadow(0 24px 24px rgba(25,45,34,.14))}.award{display:grid;grid-template-columns:90px 1fr;align-items:center;border-top:1px solid #d5cbb4;padding:18px 0}.award span{font-size:11px;font-weight:800;letter-spacing:.12em;color:#98783c}.award h3{margin:0}.award.subtle{border-bottom:1px solid #d5cbb4}.secret{margin-top:30px;color:var(--muted)}footer{padding:30px 7vw;background:#0b2419;color:white;display:flex;justify-content:space-between;font-size:12px}footer span{color:#aab8af}@media(max-width:900px){nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fbfaf6;padding:20px 6vw;flex-direction:column;border-bottom:1px solid #ddd}nav.open{display:flex}.menu{display:block}.hero,.prizes{grid-template-columns:1fr}.hero-art{margin-top:35px}.grid3,.course-grid{grid-template-columns:1fr}.history-grid{grid-template-columns:1fr 1fr}.timeline article{grid-template-columns:90px 1fr}.timeline article p{grid-column:2}.bring{grid-template-columns:1fr}.compact{grid-template-columns:1fr}.section{padding:75px 6vw}}@media(max-width:560px){.brand span{font-size:15px}.hero{padding:65px 6vw}.hero h1{font-size:57px}.facts{gap:18px}.marquee span:nth-of-type(even),.marquee i:nth-of-type(even){display:none}.history-grid{grid-template-columns:1fr}.rounds article{grid-template-columns:80px 1fr 50px}.rounds strong{font-size:42px}.timeline article{display:block}.timeline h3{margin:8px 0}.course-photo{height:230px}.heading h2,.prize-copy h2{font-size:51px}footer{display:block}footer span{display:block;margin-top:7px}}
.history-link{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
.history-link:focus-visible{outline:4px solid var(--gold);outline-offset:-4px}
.history-link::after{
  content:"↗";position:absolute;top:14px;right:14px;width:34px;height:34px;
  display:grid;place-items:center;border-radius:50%;background:rgba(251,250,246,.94);
  color:var(--green);font-weight:800;opacity:0;transform:translateY(4px);
  transition:.25s;box-shadow:0 5px 18px rgba(0,0,0,.14)
}
.history-grid figure:hover .history-link::after,
.history-link:focus-visible::after{opacity:1;transform:none}
.wiki-hint{margin:18px 0 0;color:var(--muted);font-size:13px;font-weight:700}
@media (hover:none){.history-link::after{opacity:1;transform:none}}

.island-map-wrap{margin:0 0 42px}
.map-title-row{margin-bottom:18px}
.map-title-row h3{font:400 31px "DM Serif Display";color:var(--green);margin:5px 0 8px}
.map-title-row p:last-child{margin:0;color:var(--muted);line-height:1.6;max-width:780px}
.island-map{position:relative;overflow:hidden;border-radius:26px;border:1px solid var(--line);background:#173b2b;box-shadow:0 18px 50px rgba(23,59,43,.12)}
.island-map>img{display:block;width:100%;height:auto}
.island-hotspot{position:absolute;text-decoration:none;transform:translate(-50%,-50%);z-index:3}
.island-hotspot span{display:block;padding:8px 11px;border-radius:999px;background:rgba(251,250,246,.93);border:1px solid rgba(23,59,43,.22);color:var(--green);font-weight:800;font-size:12px;box-shadow:0 4px 18px rgba(0,0,0,.16);white-space:nowrap}
.island-hotspot:hover span{background:var(--green);color:#fff}
.island-hotspot.ekero{left:70%;top:43%}
.island-hotspot.faringso{left:57%;top:23%}
.island-hotspot.lovon{left:84%;top:26%}
.island-hotspot.munson{left:32%;top:26%}
.island-hotspot.adelso{left:24%;top:35%}
.island-hotspot.helgo{left:56%;top:49%}
.home-pin{position:absolute;left:58%;top:51%;transform:translate(-50%,-50%);z-index:4;display:flex;align-items:center;gap:8px;text-decoration:none}
.home-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--green);color:#fff;border:3px solid var(--gold);font-size:23px;box-shadow:0 6px 22px rgba(0,0,0,.25)}
.home-label{display:block;background:rgba(23,59,43,.94);color:#fff;padding:7px 10px;border-radius:10px;border:1px solid var(--gold);font-size:11px;line-height:1.25;white-space:nowrap}
@media(max-width:900px){.island-hotspot span{font-size:10px;padding:6px 8px}.home-icon{width:34px;height:34px;font-size:19px}.home-label{font-size:9px}}
@media(max-width:560px){.island-hotspot span{font-size:8px;padding:4px 6px}.home-label{display:none}.home-icon{width:30px;height:30px;font-size:17px}.island-map{border-radius:18px}}

.sunday-note{margin:18px 0 24px;padding:18px 20px;border-radius:16px;background:var(--green);color:#fff}.sunday-note b{font-size:11px;letter-spacing:.13em;color:var(--gold)}.sunday-note p{margin:7px 0 0;line-height:1.6}

.course-guide-preview{position:relative;overflow:hidden;background:#eef0e8}
.course-guide-preview iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:white}
.course-guide-preview span{z-index:3}
