.page-width{max-width:1200px;padding:0 36px;margin:auto}.breadcrumbs{display:flex;gap:14px;flex-wrap:wrap;padding:24px 0;font-size:13px;color:var(--muted)}.breadcrumbs a{color:var(--teal)}.island-hero{margin:0 24px;height:440px;position:relative;border-radius:9px;overflow:hidden;color:white}.island-hero>img{height:100%;object-position:center 58%}.island-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#063b4bb0,transparent 85%)}.island-hero>div{position:absolute;z-index:1;bottom:52px;left:max(40px,calc((100vw - 1128px)/2))}.island-hero .eyebrow{color:white}.island-hero h1{font-size:60px;letter-spacing:.14em;margin:4px 0 12px}.island-hero p{font-size:17px}.page-tabs{display:flex;gap:42px;border-bottom:1px solid var(--line);padding:24px 0;font-size:15px}.page-tabs a{padding:5px 0}.island-intro{padding:65px 0;display:grid;grid-template-columns:1fr 1fr;gap:18px 50px}.island-intro .eyebrow{grid-column:1/-1;margin:0}.island-intro>p:last-child{line-height:2.2;color:var(--muted)}.island-results{padding:25px 0 65px}.island-chips{display:flex;gap:10px;flex-wrap:wrap}.island-chips button{padding:10px 20px;border:1px solid var(--line);border-radius:28px;font-size:14px}.island-chips button[aria-pressed=true]{background:var(--teal);color:white;border-color:var(--teal)}.island-results .spot-grid{grid-template-columns:repeat(3,1fr)}.island-map-section{display:grid;grid-template-columns:1fr 1.6fr;gap:45px;padding:40px 0 75px;border-top:1px solid var(--line);align-items:center}.island-map-section p:not(.eyebrow){margin:15px 0 22px}#page-map{height:330px;border-radius:9px;z-index:0;background:#dcefeb}.spot-hero{height:440px;max-width:1200px;margin:0 auto;position:relative;padding:0 36px}.spot-hero img{height:100%;border-radius:9px}.spot-hero>span{position:absolute;bottom:18px;left:55px;background:#143b41bc;color:white;font-size:12px;padding:5px 12px;border-radius:4px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:64px;padding-top:46px}.detail-layout h1{font-size:34px;line-height:1.5}.detail-lead{line-height:2;margin:23px 0}.prototype-banner{padding:15px 18px;border-left:3px solid var(--teal);background:var(--light);font-size:14px;color:var(--muted)}.info-section{padding-top:38px}.info-section h2{font-size:24px;margin-bottom:20px}.info-table{margin:0}.info-table>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:15px}.info-table dt{font-weight:600}.info-table dd{margin:0;color:var(--muted)}.trip-panel{align-self:start;position:sticky;top:30px;background:var(--light);padding:28px;border-radius:9px}.trip-panel h2{font-size:21px}.trip-panel p:not(.eyebrow){margin:18px 0;font-size:14px;line-height:1.9}.trip-panel .primary-button,.outline-button{display:block;width:100%;text-align:center;margin-bottom:12px}.outline-button{padding:11px;border:1px solid var(--teal);border-radius:5px;color:var(--teal);font-size:14px}.trip-panel small{display:block;font-size:12px;color:var(--muted);margin-top:16px}.related{padding-top:75px;padding-bottom:75px}.missing{padding-top:90px;padding-bottom:100px}.missing h1{font-size:28px}.missing p{margin:25px 0}.related .spot-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.detail-layout{grid-template-columns:1fr;gap:30px}.trip-panel{position:static}.trip-panel p:not(.eyebrow){margin:10px 0}.island-map-section{gap:25px}}
@media(max-width:700px){.page-width{padding-left:22px;padding-right:22px}.breadcrumbs{font-size:12px;gap:8px;padding:18px 0}.island-hero{margin:0 12px;height:360px}.island-hero>div{left:24px;bottom:30px}.island-hero h1{font-size:43px}.island-hero p{font-size:14px}.page-tabs{gap:20px;font-size:13px;justify-content:space-between}.island-intro{padding:38px 0;display:block}.island-intro h2{font-size:27px;margin:15px 0 22px}.island-intro>p:last-child{font-size:14px}.island-results{padding:20px 0 40px}.island-results .spot-grid,.related .spot-grid{grid-template-columns:repeat(2,1fr)}.island-chips{gap:8px}.island-chips button{padding:8px 15px;font-size:13px}.island-map-section{grid-template-columns:1fr;padding:32px 0 45px}.island-map-section h2{font-size:26px}#page-map{height:290px}.spot-hero{padding:0 12px;height:290px}.spot-hero>span{left:26px;font-size:11px}.detail-layout{padding-top:25px;gap:28px}.detail-layout h1{font-size:27px}.trip-panel{padding:22px}.detail-lead{font-size:15px}.info-table>div{grid-template-columns:95px 1fr;font-size:14px}.related{padding-top:45px;padding-bottom:45px}.related h2{font-size:22px}.related .section-heading{display:block}.related .text-button{display:inline-block;margin-top:12px}.prototype-banner{font-size:13px}}
/* Community reports: ordinary POST forms also work without JavaScript. */
.community-page{max-width:820px;margin:0 auto;padding:35px 24px 90px}.community-card{background:#fff;border:1px solid #d5e8e4;border-radius:22px;padding:40px;box-shadow:0 12px 50px #004e4a08}.community-card h1{font-size:clamp(26px,4vw,36px);line-height:1.5;margin:12px 0 16px}.community-target{font-weight:800;color:#007d7a}.community-form{display:grid;gap:12px;margin-top:28px}.community-form>label{font-weight:750;margin-top:10px}.community-form label>span{font-weight:400;font-size:14px;color:#546969;margin-left:8px}.community-form>input,.community-form>select,.community-form>textarea{width:100%;min-width:0;min-height:48px;border:1px solid #a9c3bf;border-radius:10px;background:#fff;color:#173f3d;font:inherit;font-size:16px;padding:12px;box-sizing:border-box}.community-form textarea{resize:vertical}.community-form :focus-visible{outline:3px solid #00a7a0;outline-offset:3px}.community-hint{font-size:14px;line-height:1.8;color:#546969;margin:0 0 6px}.community-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.8;padding:12px 0}.community-consent input{width:22px;height:22px;flex-shrink:0;margin-top:3px;accent-color:#007d7a}.community-form button{min-height:52px;font-size:18px;margin-top:8px}.community-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.community-errors{border:2px solid #b8463b;background:#fff7f4;border-radius:12px;padding:16px;margin:24px 0}.community-errors h2{font-size:18px}.community-errors a{color:#96382f}.community-panel{border-left:5px solid #00a29a;background:#eef8f5;border-radius:0 16px 16px 0;padding:25px;margin:25px 0}.community-panel h2{font-size:22px;line-height:1.6}.community-panel p{line-height:1.8}.community-freshness{font-weight:750;color:#007d7a;font-size:16px}.community-panel .outline-button{min-height:48px;display:inline-flex;align-items:center;font-size:16px}
@media(max-width:600px){.community-page{padding:24px 16px 105px}.community-card{padding:24px 18px;border-radius:16px}.community-panel{padding:20px}.community-panel h2{font-size:20px}}
.community-form label{display:block}.community-form .wpcf7-form-control-wrap{display:block;margin-top:8px}.community-form input:not([type=checkbox]):not([type=submit]),.community-form select,.community-form textarea{width:100%;min-width:0;min-height:48px;box-sizing:border-box;border:1px solid #a9c3bf;border-radius:10px;padding:12px;background:white;font:inherit;font-size:16px;color:#173f3d}.community-form fieldset{min-width:0;border:1px solid #d5e8e4;border-radius:12px;padding:18px}.community-form fieldset label{margin-top:16px}.community-form legend{font-weight:750}.community-form .wpcf7-list-item{margin:0}.community-form input[type=checkbox]{width:22px;height:22px;vertical-align:middle;margin-right:8px;accent-color:#007d7a}.community-form input[type=submit]{min-height:52px;font-size:18px;cursor:pointer}.community-card .wpcf7-response-output{border-radius:12px;margin:20px 0;padding:18px;line-height:1.8}.community-form .wpcf7-not-valid-tip{font-size:14px;margin-top:6px}

/* Scoped correction proposals */
.lgc-structured [hidden] { display:none !important; }
.lgc-structured .lgc-kind .wpcf7-radio { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.lgc-structured .lgc-kind .wpcf7-list-item { margin:0; }
.lgc-structured .lgc-kind .wpcf7-list-item label { display:flex; align-items:center; gap:10px; border:1px solid #d5e5e4; padding:14px; border-radius:12px; font-size:16px; font-weight:700; cursor:pointer; }
.lgc-structured .lgc-kind input[type=radio] { width:20px; height:20px; flex-shrink:0; accent-color:#008d88; }
.lgc-structured .lgc-kind label:has(input:checked) { background:#e4f7f5; border-color:#008d88; }
.lgc-structured fieldset { min-width:0; }
.lgc-structured fieldset legend { font-size:18px; font-weight:700; }
@media(max-width:480px) { .lgc-structured .lgc-kind .wpcf7-radio { grid-template-columns:1fr; } }
.lgc-structured .lgc-kind .wpcf7-list-item-label { font-size:16px; font-weight:700; color:inherit; }
.lgc-structured textarea[name^=proposal_] { min-height:130px; height:150px; }
.lgc-structured .community-current { padding:12px 16px; border-radius:10px; background:#f0f7f6; white-space:normal; line-height:1.7; }

/* Course planning extends the existing saved dialog. */
#saved-dialog { width:min(760px,calc(100vw - 32px)); max-width:760px; max-height:calc(100dvh - 40px); }
#saved-dialog [hidden] { display:none !important; }
#saved-dialog #saved-heading { padding-right:48px; overflow-wrap:anywhere; }
.mood-home { padding-top:42px!important; padding-bottom:42px!important; }
.mood-home h2 { margin-bottom:12px; }
.mood-home>p:not(.eyebrow) { font-size:17px; margin-bottom:22px; }
.mood-home-links { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); grid-auto-rows:1fr; gap:14px; }
.mood-word { display:inline-block; white-space:nowrap; }
.mood-chip-name { min-width:0; }
.mood-chip>span[aria-hidden] { flex-shrink:0; }
.mood-chip { display:flex; justify-content:space-between; align-items:center; gap:8px; border:2px solid var(--mood-color,#00878d); background:white; color:var(--ink); border-radius:10px; padding:18px 20px; font-size:18px; font-weight:800; transition:transform .18s,box-shadow .18s; }
.mood-rainy { --mood-color:#2497c1; }.mood-family { --mood-color:#e4ba2a; }.mood-solo { --mood-color:#48a77c; }.mood-sunset { --mood-color:#d97073; }.mood-date { --mood-color:#e78b32; }
.mood-filter { flex:1 0 100%; min-width:0; border:0; padding:0; margin:0; }
.mood-search-form>label { align-items:stretch; }
.mood-search-form>label select { max-width:none; }
.mood-filter legend { font-size:18px; font-weight:800; margin-bottom:12px; }
.mood-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.filter-bar .mood-option { display:block; position:relative; min-width:0; flex:none; cursor:pointer; }
.filter-bar .mood-option input { position:absolute; width:1px; height:1px; min-width:0; padding:0; opacity:0; }
.mood-option span { display:flex; align-items:center; justify-content:center; text-align:center; height:100%; min-height:52px; padding:12px 8px; border:2px solid var(--mood-color,#9ab9b8); border-radius:8px; background:white; font-size:16px; font-weight:800; transition:background .18s,transform .18s; }
.mood-option input:checked+span { background:#143b41; color:white; border-color:var(--mood-color,#143b41); }
.mood-option input:focus-visible+span { outline:3px solid #00878d; outline-offset:3px; }
.filter-bar .mood-note { font-size:14px; color:#496669; line-height:1.7; margin:12px 0 0; }
@media(hover:hover) { .mood-chip:hover { transform:translateY(-3px); box-shadow:0 8px 18px #143b4117; } .mood-option:hover span { transform:translateY(-2px); } }
@media(max-width:767px) { .mood-home-links { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } .mood-chip { font-size:16px; padding:16px 12px; } .mood-options { grid-template-columns:repeat(2,minmax(0,1fr)); } .mood-option span { padding:12px 6px; letter-spacing:0; } #filter-form.mood-search-form>label { flex:1 0 100%; min-width:0; width:100%; } }
@media(prefers-reduced-motion:reduce) { .mood-chip,.mood-option span { transition:none; } .mood-chip:hover,.mood-option:hover span { transform:none; } }
.course-panel { margin-top:28px; padding:26px; border:1px solid #c9e3df; border-radius:18px; background:#f0f8f5; }
.course-panel h3 { font-size:25px; margin:6px 0 14px; line-height:1.5; overflow-wrap:anywhere; }
.course-panel p { line-height:1.8; }
.course-title-label { display:block; font-size:16px; font-weight:750; margin:20px 0 8px; }
#course-title,#course-share-url { width:100%; min-width:0; padding:13px 14px; background:white; border:1px solid #8eb9b2; border-radius:10px; color:inherit; font:inherit; font-size:16px; }
.course-list { list-style:none; padding:0; margin:22px 0; }
.course-stop { display:grid; grid-template-columns:34px minmax(0,1fr); gap:12px; align-items:center; padding:18px 0; border-bottom:1px solid #c9dfda; }
.course-number { display:grid; place-items:center; width:32px; height:32px; border-radius:50%; background:#008a83; color:white; font-weight:800; }
.course-stop-name { font-size:17px; font-weight:750; overflow-wrap:anywhere; }
.course-stop-actions { grid-column:2; display:flex; gap:8px; flex-wrap:wrap; }
.course-action { border:1px solid #bed7d0; border-radius:8px; min-width:44px; min-height:44px; padding:9px 13px; background:white; color:#174b46; font:inherit; font-size:15px; font-weight:700; cursor:pointer; transition:background .15s,border-color .15s; }
.course-action:hover:not(:disabled) { background:#d9eee5; border-color:#008a83; }
.course-action:disabled { opacity:.55; cursor:default; }
.course-action:focus-visible,.course-panel input:focus-visible { outline:3px solid #008a83; outline-offset:3px; }
.course-add { margin:4px 0 18px; }
.course-hint,#course-share-result p { font-size:14px; color:#4e6863; }
#course-copy { width:100%; font-size:17px; font-weight:800; min-height:50px; }
#course-copy:disabled { opacity:.5; cursor:default; }
#course-share-result { margin-top:20px; }
#course-share-result label { display:block; font-weight:750; margin-bottom:8px; }
#course-status { min-height:1.8em; font-weight:700; color:#006d67; }
@media(max-width:600px) { #saved-dialog .detail-body { padding:22px 18px; } .course-panel { padding:20px 16px; } .course-panel h3 { font-size:22px; } }

/* Moderated visitor memories stay separate from official listing information. */
.community-experiences{padding:28px;border-radius:24px;background:#eef8f6;border:1px solid #d1ece5;scroll-margin-top:110px}.community-experiences h2{font-size:clamp(26px,4vw,36px)}.experience-list{display:grid;gap:18px;margin:24px 0}.experience-card{background:#fff;border-radius:18px;padding:22px;min-width:0}.experience-card header{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}.experience-card header strong{font-size:18px}.experience-card header span{font-size:14px;color:#546b69}.experience-card p{white-space:normal;overflow-wrap:anywhere;line-height:1.9}.experience-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.experience-photos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;transition:transform .2s}.experience-photos a:hover img{transform:scale(1.03)}.experience-photos a:focus-visible{outline:3px solid #138f86;outline-offset:3px}.experience-empty{font-size:17px;line-height:1.9}.community-experiences .primary-button{white-space:normal;text-align:center}.community-experiences .sample-note{margin-bottom:0}@media(max-width:600px){.community-experiences{padding:20px 16px}.experience-card{padding:18px}.experience-photos{gap:6px}.community-experiences .primary-button{display:flex;width:100%;box-sizing:border-box;font-size:16px}}

.lgc-confirmation .wpcf7-checkbox{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.lgc-confirmation .wpcf7-checkbox label{display:flex;align-items:center;min-height:48px;margin:0;padding:10px;border:1px solid #a9c3bf;border-radius:10px;font-weight:700;cursor:pointer}.lgc-confirmation .community-current{background:#f0f7f6;padding:12px;border-radius:8px;line-height:1.7;margin:6px 0 18px}.lgc-confirmation input:disabled{opacity:.45;cursor:not-allowed}.community-panel .primary-button{margin:8px 8px 8px 0;white-space:normal;text-align:center}
@media(max-width:600px){.lgc-confirmation .wpcf7-checkbox{grid-template-columns:repeat(2,minmax(0,1fr))}.community-panel .primary-button{display:flex;width:100%;box-sizing:border-box;font-size:16px;justify-content:center}}
.lgc-confirmation .wpcf7-checkbox label{padding:8px;gap:8px}.lgc-confirmation .wpcf7-checkbox input{flex:0 0 22px;margin:0}.lgc-confirmation .wpcf7-list-item-label{font-size:16px;font-weight:700;margin:0;color:inherit}
.business-notice{margin:20px 0;padding:20px 24px;border:1px solid #aed4ca;border-left:5px solid #247f6e;border-radius:12px;background:#eff8f5;font-size:16px;line-height:1.7}.business-notice>strong{display:block;font-size:22px;font-weight:800}.business-notice p{margin:8px 0}.business-notice .business-note{font-size:14px}.business-badge{display:inline-block;margin:8px 0 0;padding:5px 10px;border:1px solid #aed4ca;border-radius:6px;background:#eff8f5;color:#195e50;font-size:14px;font-weight:750;line-height:1.6}.business-temporary_closed{background:#fff6df;border-color:#deb956;color:#704e00}.business-closed{background:#fff0ee;border-color:#d99189;color:#873e37}.business-unverified{font-size:15px;color:#536f69;margin:16px 0}@media(max-width:600px){.business-notice{padding:16px}.business-notice>strong{font-size:20px}}

.nearby-spots{margin-top:64px;margin-bottom:64px}.nearby-info{padding:12px 16px}.nearby-distance{font-size:16px;font-weight:700;margin:0 0 6px}.nearby-unverified{font-size:14px;color:#5b6669;margin:0 0 8px}.nearby-info .text-button{font-size:16px}.nearby-item{min-width:0}.nearby-spots .related-heading p{line-height:1.8}@media(max-width:600px){.nearby-spots{margin-top:40px;margin-bottom:40px}.nearby-info{padding:10px 8px}}
.spot-detail .nearby-spots .spot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;overflow:visible}
@media(max-width:999px){.spot-detail .nearby-spots .spot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.spot-detail .nearby-spots .spot-grid{grid-template-columns:minmax(0,1fr);gap:24px}}
