@font-face{font-family:Grandstander;src:url("fonts/Grandstander.ttf") format("truetype");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url("fonts/NunitoSans.ttf") format("truetype");font-style:normal;font-weight:200 1000;font-display:swap}
:root{--bg:#06101f;--ink:#f5f0e5;--muted:#bacbdb;--gold:#f0c46e;--edge:#30475c;--surface:#0b1a2c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font:17px/1.6 "Nunito Sans",ui-rounded,sans-serif}button,input,select{font:inherit}a{color:inherit;text-underline-offset:5px}button,.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:12px 21px;min-height:48px;border:1px solid var(--gold);border-radius:30px;cursor:pointer;background:var(--gold);color:#102136;text-decoration:none;font-weight:700}button:hover,.button:hover{background:#ffda92}button.secondary,.button.secondary{background:transparent;color:var(--ink);border-color:var(--edge)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9edefa;outline-offset:4px}.skip{position:fixed;top:-200px;background:var(--gold);color:#07152b;padding:12px;z-index:10}.skip:focus{top:10px}.prototype{font-size:13px;text-align:center;padding:8px 14px;background:#102338;color:#d6e2ed;border-bottom:1px solid var(--edge)}header{max-width:1280px;padding:15px 32px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:22px}.logo{display:block;width:245px;flex-shrink:0}.logo img{width:100%;height:auto;display:block}nav{display:flex;gap:26px;align-items:center}nav a{font-size:15px;text-decoration:none}nav a[aria-current=page]{color:var(--gold)}.language{min-width:48px;padding:8px 12px;border-color:var(--edge);color:var(--ink);background:transparent;font-size:14px}.language:hover{background:#182f47}.hero{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:620px;min-height:min(740px,78vh);padding:70px 26px 90px;text-align:center;overflow:hidden;background:#07172c}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(180deg,#06101f55,#06101f0a 35%,#06101fcc 90%,#06101f),url('mesh-invitation-v01.png');background-size:cover;background-position:center;z-index:-2}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,#06101f8c 0,#06101f55 34%,transparent 72%)}h1{font-size:clamp(36px,5.2vw,66px);line-height:1.12;letter-spacing:-1.5px;margin:0 0 24px;font-weight:780;max-width:800px;text-wrap:balance}h2{font-size:clamp(28px,3.6vw,40px);line-height:1.2;letter-spacing:-.7px;margin:0 0 20px}p{margin:0 0 20px}.hero p{max-width:480px;color:#f2f1eb;font-size:19px;text-shadow:0 2px 10px #000}.hero .button{margin-top:14px;box-shadow:0 6px 30px #0005}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--gold);font-size:13px;font-weight:650;margin:0 0 15px}.intro-line{max-width:760px;text-align:center;margin:0 auto;padding:44px 24px 16px;color:var(--muted)}.gallery{max-width:1120px;margin:auto;padding:24px 24px 65px}.gallery-head{max-width:680px;margin:24px 0 38px}.gallery-head p{color:var(--muted)}.creatures{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:25px 16px}.presence{display:flex;flex-direction:column;border:0;background:none;min-width:0;border-radius:16px;padding:10px 5px 14px;min-height:170px;color:var(--muted);font-weight:500}.presence:hover{background:#102237;color:white}.presence .creature-shadow{width:100%;height:140px;object-fit:contain;opacity:.93}.presence:hover .creature-shadow{}.presence span{font-size:13px;letter-spacing:1.3px;margin-top:10px}.presence small{font-size:13px;letter-spacing:0;color:var(--muted)}.promise{border-top:1px solid #23394b;max-width:1050px;margin:15px auto 45px;padding:36px 24px;display:flex;align-items:center;justify-content:space-between;gap:30px}.promise p{max-width:520px;color:var(--muted);margin:0}.bonus-layout{max-width:1120px;margin:45px auto 70px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:55px;padding:0 28px;align-items:start}.bonus-story{padding-top:20px}.bonus-story p{color:var(--muted);max-width:530px}.bonus-story h1{font-size:44px}.bonus-illustration{width:100%;height:auto;border-radius:15px;display:block;margin-top:30px}.format{display:flex;gap:10px;font-size:14px;color:var(--muted);margin-top:24px}.format span{border:1px solid var(--edge);padding:6px 12px;border-radius:20px}.request{padding:30px;background:var(--surface);border:1px solid var(--edge);border-radius:18px}.request h2{font-size:27px}.request .note{font-size:14px;color:var(--muted)}label{display:block;font-size:16px;font-weight:600;margin-bottom:7px}input[type=email],select{width:100%;min-height:48px;padding:11px 13px;background:#06101f;color:var(--ink);border:1px solid #66809a;border-radius:8px}fieldset{margin:18px 0 20px;padding:0;border:0}.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;font-weight:400;margin-top:22px;line-height:1.5}.check input{min-width:23px;width:23px;height:23px;margin:2px 0 0;accent-color:var(--gold)}.request button[type=submit]{width:100%;margin-top:23px}.error{color:#ffb8b0;font-size:15px}.success{max-width:740px;margin:70px auto 110px;padding:30px}.success p{color:var(--muted)}.success h1{font-size:44px}.success .button{margin-top:15px}footer{max-width:1200px;margin:auto;padding:25px 28px 40px;border-top:1px solid var(--edge);display:flex;flex-wrap:wrap;gap:15px 32px;justify-content:space-between;font-size:14px;color:var(--muted)}dialog{position:fixed;max-width:560px;width:calc(100vw - 35px);max-height:90vh;overflow:auto;border:1px solid #53738d;border-radius:22px;background:#0a1b2e;color:var(--ink);padding:36px;text-align:center}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog .close{position:absolute;right:12px;top:12px;width:44px;height:44px;padding:0;border:0;background:transparent;color:var(--ink);font-size:27px}dialog img{display:block;width:190px;height:200px;object-fit:contain;margin:10px auto 23px}dialog p{color:var(--muted)}dialog h2{font-size:30px}dialog #privacy-copy{text-align:left;font-size:16px}dialog #privacy-copy p{margin:14px 0}.svg-filters{position:absolute;pointer-events:none}
@media(max-width:800px){header{padding:17px 20px;gap:14px}.logo{width:180px}nav{gap:12px}nav a{font-size:14px}.hero{min-height:570px;padding:75px 22px 70px}.hero:before{background-size:auto 100%;background-position:center}.hero p{font-size:17px}.creatures{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 10px}.presence .creature-shadow{height:115px}.presence{min-height:150px}.bonus-layout{grid-template-columns:1fr;gap:30px;margin-top:25px;padding:0 20px}.bonus-story h1{font-size:38px}.bonus-illustration{margin-top:20px}.request{padding:24px}.promise{align-items:flex-start;flex-direction:column;gap:22px}.gallery{padding:20px}.gallery-head{margin-top:15px}footer{padding:25px 20px 35px}.success{margin:40px auto 80px;padding:25px}.success h1{font-size:37px}}
@media(max-width:430px){.logo{width:148px}header{padding:16px 14px}nav{gap:10px}nav a{max-width:120px;line-height:1.35}.language{min-width:44px}.prototype{font-size:12px}.hero{min-height:540px}.creatures{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 7px}.presence .creature-shadow{height:105px}.gallery-head h1{font-size:36px}.presence{min-height:145px}dialog{padding:30px 22px}.promise .button{width:100%}.bonus-story h1{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

header nav a,footer a{display:inline-flex;align-items:center;min-height:44px}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}.hero:before{background-image:linear-gradient(180deg,#06101f55,#06101f0a 35%,#06101fcc 90%,#06101f)}.request .note{font-size:16px}.check input{min-width:24px;width:24px;height:24px}@media(max-width:800px){.hero-art{object-fit:cover;object-position:center}}

@media(min-width:801px){.hero{min-height:min(620px,72vh);padding-top:55px;padding-bottom:65px}.hero-art{object-position:center 35%}}

/* Titoli disegnati, testo quieto: revisione tipografica del 16 ottobre. */
h1,h2{font-family:Grandstander,"Nunito Sans",sans-serif;font-optical-sizing:auto;font-weight:730;letter-spacing:-.035em}h1{line-height:1.09;font-size:clamp(38px,5.4vw,68px)}h2{line-height:1.14}.hero h1{max-width:840px}.eyebrow{font-weight:750;letter-spacing:.13em}nav a,.button,button{font-weight:750}.presence{font-family:"Nunito Sans",sans-serif;font-weight:600}.presence small{font-weight:500}.request h2{font-weight:680;letter-spacing:-.025em}dialog h2{letter-spacing:-.03em}

.presence span span{font-size:20px;line-height:1;margin:0 0 0 5px;color:#d7c28e}.presence{padding-bottom:12px}.presence .creature-shadow{}@media(max-width:800px){.bonus-illustration{max-height:145px;object-fit:cover;object-position:center 45%}.bonus-layout{gap:24px}}

/* Il dipinto incornicia la lettura: centro quieto, luce ai lati. */
.hero:after{background:radial-gradient(ellipse 65% 76% at 50% 42%,#06101ff5 0%,#06101fe8 42%,#06101f7a 72%,#06101f12 100%)}.hero h1{position:relative;text-shadow:0 3px 18px #000a}.hero p{color:#fff8ec;text-shadow:0 2px 12px #000}.hero-art{filter:brightness(.88)}@media(max-width:800px){.hero:after{background:radial-gradient(ellipse 92% 72% at 50% 40%,#06101ff5 0%,#06101fe6 48%,#06101f66 82%,transparent 100%)}}

main:focus{outline:none}.presence .creature-shadow{}.promise .button{white-space:nowrap;text-align:center;flex-shrink:0}

/* Tre gesti della Rete: soglia continua, sentiero, presenze che rispondono. */
body{background:radial-gradient(ellipse at 90% 2%,#0c2744 0,transparent 32%),#06101f}
.prototype{position:relative;z-index:9;background:#091728d9;border:0;font-size:12px;color:#c4d3e1}
header{position:relative;z-index:8;max-width:1320px;padding:18px 36px}
body[data-route=inizio] header{position:absolute;top:35px;left:50%;transform:translateX(-50%);width:100%;background:transparent}
body[data-route=inizio] header .language{background:#06101f66;backdrop-filter:blur(8px)}
body[data-route=inizio] header nav a{text-shadow:0 2px 14px #000}
.hero{min-height:min(850px,calc(100svh - 35px));padding:155px 28px 145px;overflow:hidden;background:#06101f}
.hero-art{object-position:center 35%;filter:none;transform:translateY(var(--depth,0px)) scale(1.12);will-change:transform}
.hero:before{z-index:-2;background:linear-gradient(180deg,#06101fbf 0%,#06101f22 18%,transparent 65%,#06101f 100%)}
.hero:after{background:radial-gradient(ellipse 60% 62% at 50% 48%,#06101ff5 0%,#06101fdf 40%,#06101f7a 70%,transparent 100%)}
.hero-copy{position:relative;z-index:1;max-width:900px;margin:auto}
.hero h1{font-size:clamp(40px,5.3vw,72px);max-width:880px;margin:0 auto 28px;line-height:1.10;letter-spacing:-.04em;text-shadow:0 3px 20px #0009}
.hero p{margin:0 auto 24px;font-size:19px;line-height:1.55;max-width:490px}
.button{background:linear-gradient(140deg,#ffe9ad,#efbf63);border-color:#ffdc90;box-shadow:0 4px 24px #0003;transition:transform .22s ease,box-shadow .22s ease}
.button:hover{background:linear-gradient(140deg,#fff0c5,#ffcf7a);transform:translateY(-2px);box-shadow:0 7px 30px #cba25c22}
.hero .button{padding:15px 25px;gap:18px;margin-top:12px;box-shadow:0 0 45px #efc46e1f,0 5px 22px #0007}
.follow-light{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:1;display:flex;align-items:center;gap:10px;min-height:44px;color:#e0d4ae;text-decoration:none;font-size:14px;white-space:nowrap}
.follow-light{line-height:1}.follow-chevron{display:block;flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.threshold{position:relative;isolation:isolate;max-width:1220px;margin:0 auto;padding:74px 35px 70px;text-align:center;scroll-margin-top:28px}
.threshold:focus{outline:none}
.threshold:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 60%,#103f623d,transparent 68%)}
.threshold h2{max-width:820px;margin:0 auto 50px;font-size:clamp(29px,3.7vw,44px);line-height:1.2}
.threshold .eyebrow{font-size:13px;color:#c6b88e;letter-spacing:.15em}
.whispers{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;align-items:stretch}
.whisper{position:relative;display:flex;flex-direction:column;align-items:center;gap:0;width:100%;padding:0;background:transparent;border:0;border-radius:28px;color:var(--ink);font-weight:500}
.whisper:hover{background:transparent}
.whisper-shape{position:relative;display:block;width:185px;height:195px}
.whisper .creature-shadow{width:185px;height:185px;object-fit:contain;transition:transform .3s ease;transform-origin:50% 70%}
.whisper:hover .creature-shadow,.whisper:focus-visible .creature-shadow{transform:translateY(-5px) rotate(-1deg);}
.whisper-copy{font-family:Grandstander,"Nunito Sans",sans-serif;font-size:22px;font-weight:600;line-height:1.35;color:#eeeadd;margin:12px 0 10px}
.whisper-invite{font-size:14px;color:#c7b589;min-height:44px;display:flex;align-items:center;gap:7px;margin-top:auto}
.embedded-gallery{padding-top:48px;padding-bottom:70px;border:0}
.embedded-gallery .gallery-head{margin:0 auto 44px;text-align:center;max-width:620px}
.embedded-gallery h2{font-size:clamp(30px,3.8vw,45px)}
.presence{transition:background .25s ease,transform .25s ease}
.presence:hover,.presence:focus-visible{background:radial-gradient(ellipse at 50% 45%,#16506d55,transparent 72%);transform:translateY(-5px)}
.presence .creature-shadow{transition:transform .25s ease}
.presence:hover .creature-shadow,.presence:focus-visible .creature-shadow{transform:rotate(-3deg)}
.promise{position:relative;isolation:isolate;overflow:hidden;max-width:1140px;min-height:280px;margin:10px auto 60px;padding:55px 46px;border:0;border-radius:25px;background:radial-gradient(ellipse at 90% 35%,#285d8755,transparent 65%),linear-gradient(120deg,#102a3c,#0b192c 65%)}
.promise:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0b2038 0%,#0b2038cc 45%,#0b203822 100%),url('mesh-invitation-v01.png') right 65%/cover;opacity:.65;pointer-events:none}
.promise h2{max-width:680px;font-size:clamp(29px,3.4vw,41px);line-height:1.18}
.promise p{max-width:600px;color:#d7e1ea}
.promise .button.secondary{background:#06101fbf;border-color:#ccba84;color:#ffdf91;box-shadow:0 0 25px #e1bd6810;white-space:nowrap}
footer{border-color:#183347}
@media(max-width:800px){
 body[data-route=inizio] header{top:35px;padding:15px 20px}
 .hero{min-height:min(840px,calc(100svh - 35px));padding:145px 26px 125px}
 .hero-art{object-position:center 45%;transform:translateY(var(--depth,0px)) scale(1.08)}
 .hero:after{background:radial-gradient(ellipse 95% 66% at 50% 48%,#06101ff5 0%,#06101fde 44%,#06101f77 78%,transparent 100%)}
 .hero h1{font-size:clamp(39px,6.9vw,58px);max-width:660px}
 .hero p{font-size:18px}
 .threshold{padding:60px 24px 45px}
 .threshold h2{margin-bottom:32px}
 .whispers{gap:20px}
 .whisper-shape{width:145px;height:160px}
 .whisper .creature-shadow{width:145px;height:155px}
 .whisper-copy{font-size:19px}
  .promise{border-radius:0;padding:40px 25px;margin-bottom:30px;gap:28px;min-height:260px}
 .promise .button{width:auto;min-width:150px}
}
@media(max-width:540px){
 body[data-route=inizio] header{top:52px;padding:13px 16px}
 .hero{min-height:min(840px,calc(100svh - 52px));padding:143px 20px 114px}
 .hero h1{font-size:clamp(37px,9.8vw,48px);line-height:1.12;max-width:420px}
 .hero p{font-size:17px;max-width:310px}
 .hero .button{font-size:16px;padding:14px 22px;gap:14px}
 .follow-light{bottom:25px}
 .threshold{padding:52px 23px 30px}
 .threshold h2{font-size:29px;margin-bottom:35px}
 .whispers{grid-template-columns:1fr;gap:32px;max-width:340px;margin:auto}
   .whisper{padding:0 10px}
 .whisper-shape{width:170px;height:175px}
 .whisper .creature-shadow{width:170px;height:175px}
 .whisper-copy{font-size:22px;margin-top:9px}
 .whisper-invite{margin-top:4px}
 .embedded-gallery{padding-top:44px}
 .promise{padding:35px 24px;gap:24px}
 .promise p{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{transition:none!important;animation:none!important}
 .hero-art{transform:scale(1.08);will-change:auto}
 .whisper:hover .creature-shadow,.whisper:focus-visible .creature-shadow,.presence:hover,.presence:focus-visible,.presence:hover .creature-shadow,.presence:focus-visible .creature-shadow,.button:hover{transform:none}
}

.creature-shadow{display:block;fill:#214566;stroke:none}.dialog-shadow{width:190px;height:200px;margin:10px auto 23px}.dialog-shadow .creature-shadow{width:100%;height:100%;}

.hero p{max-width:600px}.threshold h2{margin-bottom:22px}.learning-intro{max-width:720px;margin:0 auto 42px;font-size:18px;line-height:1.65;color:#c5d4e1}.bonus-story .book-purpose{font-size:17px;color:#d2dce5}.hero-copy{width:100%}@media(max-width:540px){.hero p{max-width:330px;font-size:17px}.learning-intro{font-size:17px;margin-bottom:34px}.threshold h2{margin-bottom:20px}}

/* Più paesaggio: contrasto locale, non una coltre su tutta la scena. */
.hero:before{background:linear-gradient(180deg,#06101f80 0%,#06101f08 22%,transparent 68%,#06101f38 84%,#06101f 100%)}
.hero:after{background:radial-gradient(ellipse 45% 38% at 50% 46%,#06101fb8 0%,#06101f77 43%,#06101f24 76%,transparent 100%)}
.hero h1{text-shadow:0 2px 4px #06101fd9,0 0 15px #06101f9c;-webkit-text-stroke:.45px #06101f85;paint-order:stroke fill}
.hero p{text-shadow:0 2px 5px #06101f,0 0 2px #06101f;max-width:620px}
@media(max-width:800px){.hero:after{background:radial-gradient(ellipse 86% 40% at 50% 46%,#06101fc9 0%,#06101f80 45%,#06101f22 80%,transparent 100%)}}
@media(max-width:540px){.hero p{max-width:330px}}

/* La sfumatura resta ferma; il dipinto si muove solo dentro la sua finestra. */
.hero-landscape{position:absolute;inset:0;clip-path:inset(0 0 3px 0);z-index:-3;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(#000 0%,#000 68%,transparent 96%);mask-image:linear-gradient(#000 0%,#000 68%,transparent 96%);mask-repeat:no-repeat}
.hero-landscape .hero-art{z-index:0}

/* Il bordo della scena sfuma sul medesimo fondo della sezione successiva. */
body{background:#06101f}

/* L01: a quiet, separate space for adults; invitations remain part of the page. */
[hidden]{display:none!important}.parent-invitation{max-width:1120px;margin:1rem auto 4rem;padding:2rem clamp(1.3rem,4vw,3rem);display:flex;align-items:center;gap:3rem;border-block:1px solid #ebcb7b30;background:linear-gradient(105deg,#17314755,transparent 85%)}
.parent-invitation h2{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.1;margin:.4rem 0 1rem}.parent-invitation p{max-width:60ch}.parent-invitation .button{flex-shrink:0;font-size:.95rem;max-width:24rem;text-align:center}
.parent-area{max-width:1200px;margin:5rem auto;padding:0 clamp(1.2rem,5vw,4rem);display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.parent-intro h1{font-size:clamp(2.8rem,5vw,4.7rem);line-height:1.05}.parent-intro>p{font-size:1.1rem;line-height:1.65;color:#e0e8f1}.parent-area .request{margin:0}.request a{color:#f6dc99}.request button:disabled{opacity:.6;cursor:wait}.hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.bonus-adult{align-self:center;max-width:32rem}.bonus-adult h2{font-size:2.5rem}.privacy-page{max-width:820px;margin:4rem auto;padding:0 1.5rem}.privacy-page h1{font-size:3rem}.privacy-page h2{font-size:1.5rem;margin-top:2rem}.privacy-page p{line-height:1.7;color:#d9e3ed}.privacy-page a{color:#f5d78a}.service-page{display:grid;place-items:center;min-height:100vh}.service-content{max-width:740px;padding:3rem 1.5rem}.service-content h1{font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.1}.service-content p{font-size:1.1rem;line-height:1.6}.service-content a{color:#f5d78a}.service-content form{margin:2rem 0}.service-content img{max-width:85%;height:auto}
@media(max-width:760px){.parent-invitation{margin-inline:1rem;flex-direction:column;align-items:flex-start;gap:1rem}.parent-area{grid-template-columns:1fr;gap:2rem;margin:2.5rem auto}.parent-area .request{width:100%}.parent-invitation .button{width:100%}.bonus-adult{padding-bottom:3rem}}


/* L02: il luogo introduce, la promessa guida. Il paesaggio resta visibile. */
body[data-route=inizio] header{top:8px}
body.local-preview[data-route=inizio] header{top:43px}
.hero h1{max-width:980px;font-size:clamp(44px,5.05vw,70px);line-height:1.08;margin-bottom:25px}
.hero-location{display:block;font-size:clamp(23px,2.1vw,30px);line-height:1.35;letter-spacing:-.02em;color:#eee8d8;margin-bottom:19px;font-weight:580}
.hero-adventure{display:block}
.hero-finale{color:#ffe2a0}
.hero-copy{max-width:1050px}
header nav .adult-link{color:#f5dca2}
@media(max-width:800px){
 .hero h1{font-size:clamp(40px,6.9vw,58px)}
 header nav{gap:15px}
 header nav a{font-size:14px}
}
@media(max-width:540px){
 header,body[data-route=inizio] header{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 5px;padding:10px 18px}
 header .logo{grid-column:1/6;grid-row:1;width:153px}
 header nav{display:contents}
 header .language{grid-column:6;grid-row:1;justify-self:end}
 header nav a{grid-row:2;justify-content:center;font-size:13px;white-space:nowrap;min-height:44px}
 header nav a:nth-child(1){grid-column:1/3;justify-content:flex-start}
 header nav a:nth-child(2){grid-column:3/5}
 header nav a:nth-child(3){grid-column:5/7;justify-content:flex-end;border-bottom:0}
 body[data-route=inizio] header{top:4px}
 body.local-preview[data-route=inizio] header{top:48px}
 .hero{padding:145px 20px 108px;min-height:min(840px,100svh)}
 .hero h1{font-size:clamp(35px,9.6vw,48px);line-height:1.1;max-width:460px}
 .hero-location{font-size:21px;line-height:1.35;margin-bottom:16px}
 .hero p{max-width:320px;font-size:17px}
}

/* Narrative clues need reading space on small screens, rather than display-title sizing. */
#creature-title{font-size:clamp(20px,2.2vw,26px);line-height:1.35;font-weight:600;letter-spacing:-.02em;text-wrap:pretty}
@media(max-width:600px){#creature{padding:26px 22px}#creature .dialog-shadow{width:140px;height:148px;margin:8px auto 16px}#creature .eyebrow{margin-bottom:12px}}

/* Keep the parent invitation readable when its gold button is hovered or keyboard-focused. */
.parent-invitation .button.secondary:hover,.parent-invitation .button.secondary:focus-visible{color:#102136}
