@font-face{font-family:Inter;src:url("assets/inter.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#102f2b;--deep:#092823;--paper:#f8efd5;--gold:#ffc44a;--coral:#fa885e;--leaf:#b9d783;--line:#416059;--shell:1232px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--deep);color:var(--paper);font-family:Inter,"Segoe UI",sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
a,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid #4384cb;outline-offset:5px}
p,h1,h2,h3,h4,figure{margin:0}
.shell{width:min(var(--shell),calc(100% - clamp(40px,9vw,144px)));margin-inline:auto}
.skip{position:fixed;z-index:10;top:8px;left:10px;padding:10px 15px;transform:translateY(-150%);background:var(--gold);color:var(--ink)}
.skip:focus{transform:none}
.mast{background:#0b2c28;color:var(--paper);border-bottom:1px solid #648376}
.mast-inner,.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.mast-inner{min-height:76px}
.brand{display:inline-flex;gap:12px;align-items:center;font-weight:850;font-size:20px;line-height:1.04;letter-spacing:-.055em}
.brand b{font-weight:550}
.compass{width:36px;height:36px;position:relative;display:inline-block;flex:none;border:1px solid #e6b95e;border-radius:50%;transform:rotate(9deg)}
.compass::before,.compass::after{content:"";position:absolute;inset:-3px;background:var(--gold);clip-path:polygon(50% 0,60% 37%,92% 19%,68% 44%,100% 50%,66% 59%,83% 84%,60% 68%,50% 100%,40% 65%,12% 85%,33% 58%,0 50%,33% 40%,17% 14%,41% 32%)}
.compass::after{inset:39%;background:var(--ink);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
nav{display:flex;align-items:center;gap:clamp(18px,3vw,42px);font-size:.91rem;font-weight:680}
nav a,.footer-inner a{display:inline-flex;align-items:center;min-height:44px}
nav a:hover,.footer-inner a:hover,.contact-box a:hover{color:var(--gold)}
.nav-contact{gap:10px;border:1px solid #a1b998;border-radius:4px;padding:0 15px}
.cover{position:relative;isolation:isolate;background:var(--deep);overflow:hidden}
.key-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:66% 50%;z-index:-3}
.cover::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(4,29,26,.95) 0%,rgba(4,29,26,.86) 19%,rgba(4,29,26,.56) 38%,transparent 66%),linear-gradient(0deg,rgba(5,28,24,.43),transparent 25%)}
.cover-inner{min-height:clamp(535px,43vw,690px);display:flex;align-items:center;position:relative;padding-block:54px 69px}
.cover-copy{max-width:540px;width:51%}
.kicker,.place,.art-credit{font-size:.7rem;line-height:1.4;font-weight:820;letter-spacing:.14em;text-transform:uppercase}
.kicker{display:flex;align-items:center;gap:10px}
.rule{width:27px;height:3px;background:currentColor;display:inline-block;flex:none;transform:skew(-24deg)}
.light{color:#ffe18b}
h1{margin:25px 0 23px;text-transform:uppercase;font-weight:900;letter-spacing:-.082em;line-height:.87;transform:skew(-6deg);transform-origin:left bottom;color:#fff1c8}
.title-top,.title-main{display:block;width:fit-content}
.title-top{font-size:clamp(49px,5.9vw,92px);text-shadow:2px 3px 0 #264439}
.title-main{font-size:clamp(84px,9.7vw,150px);line-height:.89;color:var(--gold);text-shadow:1px 2px #965526,2px 4px #965526,3px 6px #804826,5px 9px #18372d}
.deck{max-width:440px;font-size:clamp(17px,1.48vw,22px);color:#fff5de;line-height:1.5;font-weight:530}
.action{margin-top:26px;border:2px solid #132e25;border-radius:3px;display:inline-flex;align-items:center;gap:20px;padding:13px 19px;background:var(--gold);color:var(--ink);font-weight:800;font-size:.94rem;box-shadow:3px 4px 0 #092720;transition:transform .16s,box-shadow .16s}
.action span{font-size:1.12em}
.action:hover{transform:translateY(-2px);box-shadow:3px 6px 0 #092720;background:#ffd367}
.art-credit{position:absolute;bottom:30px;right:0;color:#fff5d9;letter-spacing:.1em;background:rgba(10,41,34,.85);border:1px solid #c0b78299;border-radius:2px;padding:6px 10px;font-size:.61rem}
.art-credit span{color:var(--gold);padding-right:5px}
.guide{color:var(--ink);background:var(--paper);position:relative;padding:clamp(55px,6vw,96px) 0 clamp(65px,7vw,110px);isolation:isolate}
.guide::before{content:"";position:absolute;left:0;right:0;top:-10px;height:11px;background:var(--paper);clip-path:polygon(0 38%,4% 54%,8% 22%,13% 51%,18% 38%,22% 56%,27% 26%,33% 53%,39% 29%,46% 52%,52% 22%,58% 44%,64% 28%,71% 62%,76% 33%,83% 55%,90% 21%,96% 47%,100% 29%,100% 100%,0 100%)}
.guide-head{display:grid;grid-template-columns:1.18fr .82fr;align-items:end;gap:40px;margin-bottom:30px}
.guide .kicker{color:#456447}
.guide h2,.studio h2,.download h1{font-weight:900;font-size:clamp(43px,5.6vw,83px);line-height:.99;letter-spacing:-.075em}
.guide h2{margin-top:9px}
.guide h2 span{color:#b9562c}
.guide-head>p{font-size:clamp(15px,1.2vw,18px);line-height:1.55;color:#354b3c;max-width:480px}
.spreads{display:grid;grid-template-columns:1fr 1fr;gap:clamp(21px,3vw,46px);align-items:start}
.field-card{background:#e6efd3;border:2px solid var(--ink);border-radius:5px;box-shadow:5px 5px var(--ink);overflow:hidden}
.field-card.hunt{background:#f8dfb8}
.field-scene{position:relative;background:#2a5943;overflow:hidden}
.field-scene img{display:block;width:100%;height:auto;aspect-ratio:1.8;object-fit:cover;object-position:center 51%;transition:transform .45s ease}
.place{position:absolute;left:18px;top:17px;color:var(--ink);background:#f1d883;padding:5px 10px;border:1px solid var(--ink);font-size:.62rem;letter-spacing:.09em;font-weight:850;transform:rotate(-2deg)}
.hunt .place{background:#ffad7c;transform:rotate(1.5deg)}
.field-paper{position:relative;padding:22px clamp(18px,2vw,29px) 5px;border-top:2px solid var(--ink)}
.field-paper h3,.contact-box h3{font-size:clamp(25px,2.35vw,38px);font-weight:860;line-height:1.07;letter-spacing:-.058em}
.field-paper>p,.field-note p{margin-top:11px;font-size:1rem;line-height:1.55;color:#253e33}
details{margin-top:18px;border-top:1px solid #788677}
summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:53px;font-size:.87rem;font-weight:780}
summary::-webkit-details-marker{display:none}
.expand{position:relative;width:24px;height:24px;border:1px solid var(--ink);border-radius:50%;background:transparent;flex:none}
.expand::before,.expand::after{content:"";position:absolute;inset:10px 6px auto;height:2px;background:var(--ink)}
.expand::after{transform:rotate(90deg)}
details[open] .expand::after{transform:rotate(0)}
summary:hover .expand{background:var(--gold)}
.field-note{padding:0 0 17px}
.field-note h4{font-size:.92rem;font-weight:800}
.field-note p{margin-top:4px;font-size:.92rem}
.studio{padding:clamp(55px,6vw,87px) 0;background:#153b34;color:var(--paper);border-top:5px solid #d89c43}
.studio-inner{display:grid;grid-template-columns:1.18fr .82fr;align-items:center;gap:40px}
.studio h2{margin-top:15px;font-size:clamp(44px,4.8vw,72px)}
.studio h2 em{color:var(--gold);font-style:normal}
.contact-box{max-width:480px}
.contact-box h3{font-size:clamp(26px,2.3vw,34px)}
.contact-box p{color:#d6e3c9;margin-block:12px 14px}
.contact-box a{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-weight:740;font-size:clamp(.93rem,1.6vw,1.28rem);color:#ffe09b;border-bottom:2px solid #d5b66e;overflow-wrap:anywhere}
footer{background:#0b2c28;color:#d1dbc6;font-size:.82rem}
.footer-inner{min-height:66px}
.download{max-width:40rem;margin:clamp(50px,12vw,130px) auto;padding:0 22px}
.download h1{transform:none;text-transform:none;color:var(--paper);margin:22px 0}
.download .hint{margin-top:25px;color:#d6e3c9}
@media(hover:hover){.field-card:hover .field-scene img{transform:scale(1.018)}}
@media(max-width:760px){
  .shell{width:calc(100% - 40px)}
  .mast-inner{min-height:61px}.brand{gap:9px;font-size:17px}.compass{width:30px;height:30px}
  nav{gap:16px;font-size:.81rem;white-space:nowrap}.brand b{display:block}.studio-link{display:none}.nav-contact{padding:0 9px;min-height:44px}
  .cover-inner{min-height:0;padding:clamp(200px,52vw,320px) 0 39px;display:block}
  .cover-copy{max-width:460px;width:100%}
  .key-art{height:clamp(330px,84vw,550px);object-position:72% 35%;mask-image:linear-gradient(#000 72%,transparent)}
  .cover::before{background:linear-gradient(0deg,var(--deep) 0%,var(--deep) 25%,rgba(9,40,35,.94) 36%,rgba(9,40,35,.5) 55%,transparent 76%)}
  .art-credit{top:12px;right:-5px;bottom:auto;font-size:.55rem}
  h1{margin:13px 0 18px}
  .title-top{font-size:clamp(42px,9.2vw,58px)}.title-main{font-size:clamp(73px,15vw,100px)}
  .deck{max-width:36ch;font-size:1.02rem}.action{margin-top:18px;padding:11px 15px}
  .guide-head,.studio-inner{grid-template-columns:1fr;gap:15px}
  .guide-head{margin-bottom:25px}
  .spreads{grid-template-columns:1fr;gap:28px}
  .field-scene img{aspect-ratio:1.58}
  .studio-inner{gap:27px}
  .footer-inner{min-height:59px}
}
@media(max-width:370px){
  .shell{width:calc(100% - 30px)}.brand{font-size:15px}.compass{width:26px;height:26px}nav{gap:10px;font-size:.76rem}
  .kicker{font-size:.62rem}.footer-inner{font-size:.75rem}.art-credit{right:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
