.spot-jumps{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 2rem}.spot-jumps a{border:1px solid var(--line);border-radius:30px;padding:.6rem 1rem;text-decoration:none;background:white;font-weight:700}.spot-jumps a:hover{border-color:var(--sea)}
.gallery-section{margin:3rem 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.gallery-grid figure{margin:0;min-width:0;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.gallery-grid img{display:block;width:100%;height:250px;object-fit:cover}.gallery-grid figcaption{padding:1rem;font-size:.875rem;line-height:1.6}.gallery-note{color:var(--muted);font-size:.875rem}.gallery-section h2,.comments h2{font-size:clamp(1.6rem,3vw,2.5rem)}
.author-memory{border-left:4px solid var(--sea);background:#edf4ef;padding:1.2rem 1.5rem;margin:2rem 0}.author-memory h2{font-size:1.25rem;margin:0 0 .7rem}.author-memory p{margin:.5rem 0}.island-story{margin-top:2.5rem}.price-table-wrap{overflow:auto}.price-table{border-collapse:collapse;width:100%;font-size:1rem}.price-table th,.price-table td{text-align:left;padding:.8rem;border-bottom:1px solid var(--line)}
.comments{margin:3rem 0;border-top:1px solid var(--line);padding-top:3rem;scroll-margin-top:6rem}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem}.review-form{padding:1.5rem;background:white;border:1px solid var(--line);border-radius:20px;align-self:start}.review-form label{display:block;font-weight:700;margin-bottom:.4rem}.review-form input,.review-form textarea{font:inherit;width:100%;border:1px solid #a4b5b6;border-radius:10px;background:white;padding:.85rem;color:var(--ink);box-sizing:border-box}.review-form textarea{min-height:180px;resize:vertical}.review-form .field{margin-bottom:1.2rem}.review-form .help{font-size:.875rem;color:var(--muted);margin:.4rem 0 1rem}.review-form button{cursor:pointer;font:inherit}.review-form button:disabled{opacity:.65;cursor:wait}.review-status,.review-load-status{line-height:1.6;font-size:1rem}.review-status:empty{display:none}.review{background:white;padding:1.3rem;border:1px solid var(--line);border-radius:14px;margin-bottom:1rem;overflow-wrap:anywhere}.review-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.review-header time{font-size:.875rem;color:var(--muted)}.review p{white-space:pre-wrap;line-height:1.7;margin-bottom:0}.review-count{font-size:.875rem;color:var(--muted)}.trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.comments [hidden]{display:none!important}
@media(max-width:800px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-layout{grid-template-columns:1fr}.review-form{order:0}.review-results{order:1}}@media(max-width:500px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:240px}.spot-jumps a{font-size:.875rem}.review-form{padding:1rem}}
.school-community{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.5rem}.school-community h3{font-size:1.2rem}.school-community details{background:white;border:1px solid var(--line);border-radius:12px;padding:1rem}.school-community summary{cursor:pointer;font-weight:800;color:var(--sea);font-size:1rem}.school-form label{display:block;font-weight:700;font-size:.875rem;margin:.8rem 0 .4rem}.school-form input,.school-form textarea{display:block;width:100%;box-sizing:border-box;padding:.7rem;border:1px solid #a4b5b6;border-radius:8px;font:inherit;min-width:0}.school-form textarea{min-height:110px;resize:vertical}.school-form button{font:inherit;cursor:pointer;width:100%;margin-top:.8rem}.school-form button:disabled{opacity:.65}.school-status,.school-load-status{font-size:.875rem;line-height:1.6}.visitor-school{background:white;border:1px solid var(--line);padding:1rem;border-radius:12px;margin:1rem 0;overflow-wrap:anywhere}.visitor-school p{font-size:.875rem;white-space:pre-wrap}.visitor-school small{display:block;font-size:.875rem;color:var(--muted)}
.detail h1{font-size:clamp(1.8rem,4.2vw,3.8rem);line-height:1.25;overflow-wrap:anywhere}.spotline a,.card h3 a{overflow-wrap:anywhere}
.gallery-section{margin:1.5rem 0 2rem;scroll-margin-top:6rem}.gallery-section h2{font-size:clamp(1.3rem,2.5vw,1.9rem);margin-bottom:.5rem}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.8rem}.gallery-grid figure{background:transparent;border:0;border-radius:0;overflow:visible}.gallery-grid a[data-full]{display:block;border-radius:12px;overflow:hidden;position:relative;background:#dce7e3}.gallery-grid a[data-full]:focus-visible{outline:3px solid var(--sea);outline-offset:4px}.gallery-grid a[data-full]:hover img{transform:scale(1.04)}.gallery-grid img{height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .2s}.gallery-grid figcaption{font-size:.875rem;padding:.45rem 0;line-height:1.45}.gallery-instruction{font-size:.875rem;color:var(--muted);margin:.4rem 0 1rem}.gallery-open{overflow:hidden}.photo-lightbox{border:1px solid #48656c;padding:0;background:#0c2024;color:white;max-width:1100px;width:calc(100vw - 2rem);max-height:94dvh;border-radius:16px;overflow:auto}.photo-lightbox::backdrop{background:rgba(4,15,18,.88)}.lightbox-panel{padding:1rem}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.7rem;font-size:.875rem}.photo-lightbox button{font:inherit;border:1px solid #71898b;border-radius:8px;padding:.5rem .9rem;background:#173b41;color:white;cursor:pointer;min-height:44px}.photo-lightbox button:hover{background:#23535a}.photo-lightbox button:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.lightbox-stage{position:relative;display:flex;align-items:center;justify-content:center;min-height:150px;background:#06161a}.lightbox-stage img{max-height:65dvh;max-width:100%;width:auto;height:auto;object-fit:contain}.lightbox-state{position:absolute;max-width:85%;text-align:center}.lightbox-controls{display:flex;justify-content:space-between;gap:1rem;margin:.8rem 0}.lightbox-caption{font-size:.875rem;line-height:1.6;overflow-wrap:anywhere}.lightbox-caption b{font-size:1rem}.lightbox-caption p{margin:.4rem 0}.lightbox-caption a{color:var(--lime)}.photo-lightbox [hidden]{display:none!important}@media(max-width:500px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid img{height:auto}.photo-lightbox{width:calc(100vw - .7rem);max-height:97dvh;border-radius:10px}.lightbox-panel{padding:.65rem}.lightbox-controls{gap:.5rem}.lightbox-controls button{font-size:.875rem;padding:.5rem .7rem}.lightbox-stage img{max-height:57dvh}}@media(prefers-reduced-motion:reduce){.gallery-grid img{transition:none}}

.gallery-grid figcaption{display:none}.gallery-grid{margin-top:1rem}#photos{scroll-margin-top:6rem}.detail-photo figcaption{font-size:.875rem;line-height:1.5}.detail-photo{margin:1.6rem 0}.detail-photo img{height:clamp(260px,42vw,540px)}

.author-welcome{padding:64px 0 16px}.author-welcome-grid{display:grid;grid-template-columns:minmax(220px,330px) minmax(0,1fr);gap:clamp(28px,5vw,76px);align-items:center}.author-portrait{margin:0;max-width:330px}.author-portrait img{display:block;width:100%;height:auto;border-radius:6px 6px 64px 6px}.author-portrait figcaption{font-size:12px;color:var(--muted);margin-top:12px}.author-welcome-text{max-width:760px;min-width:0}.author-welcome h2{font:600 clamp(25px,3vw,40px)/1.25 var(--display);letter-spacing:-1px;margin:16px 0 22px}.author-welcome-text p{color:var(--muted);margin:0 0 18px}.author-welcome-text .welcome-lead{font-size:19px;color:var(--ink)}.author-welcome-text .author-signoff{color:var(--sea);font-weight:700;margin:24px 0 18px}.author-signoff span{display:block;color:var(--ink);font-size:20px;margin-top:4px}@media(max-width:700px){.author-welcome{padding-top:40px}.author-welcome-grid{grid-template-columns:1fr;gap:26px}.author-portrait{width:min(100%,280px)}.author-welcome h2{letter-spacing:-.6px}.author-welcome-text .welcome-lead{font-size:18px}}

.language-switch{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.language-control{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:24px;padding:4px 9px;background:var(--paper)}.language-control select{border:0;background:transparent;color:var(--ink);font:700 12px var(--body);cursor:pointer;min-height:34px;max-width:96px}.language-switch~.edition{margin-left:0}.nav{gap:22px}.navlinks{gap:20px}@media(max-width:1000px){.nav{gap:16px}.navlinks{gap:14px}}@media(max-width:700px){.nav{gap:10px}.language-switch{order:1}.navlinks{order:2;gap:10px}.language-control{padding:3px 6px;gap:3px}.language-control select{max-width:82px;font-size:11px}.logo{font-size:17px}}

@media(min-width:701px) and (max-width:1180px){.edition{display:none}}
