:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#183742;background:#f5f7f6;font-synthesis:none;--teal:#136f68;--line:#dce5e3;--muted:#70858b}*{box-sizing:border-box}body{margin:0;display:grid;grid-template-columns:300px minmax(0,1fr);min-height:100vh}button,select{font:inherit}button{cursor:pointer;transition:background .15s,color .15s}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:3px solid #d99c56;outline-offset:3px}button{border:0}button:hover:not(:disabled){filter:brightness(.94)}[hidden]{display:none!important}.sidebar{padding:32px 25px 20px;border-right:1px solid var(--line);background:#fff;display:flex;flex-direction:column;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:750;letter-spacing:1.8px;color:#183742;text-decoration:none;font-size:17px;margin-bottom:20px}.brand-mark{font-size:40px;line-height:42px;color:var(--teal);font-weight:400}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:0;color:#7a8e94;margin-top:5px}.eyebrow,.section-label{font-size:10px;font-weight:700;letter-spacing:1.7px;color:#70868a}.section-label{margin-bottom:14px}.region-picker{display:grid;gap:8px;margin-top:-10px}.region{position:relative;text-align:left;background:#f6f8f7;border:1px solid #e4eae8;border-radius:8px;padding:15px 16px;color:#36515a}.region span{display:block;font-weight:650;font-size:14px}.region small{display:block;font-size:9px;letter-spacing:1.4px;margin-top:5px;color:#73858b}.region b{position:absolute;right:15px;top:17px;font-weight:400}.region.active{background:#e8f3ee;border-color:#99bbb1;color:#11655c}.layer-section{border-top:1px solid var(--line);padding-top:20px}.toggle{display:flex;align-items:center;justify-content:space-between;margin:18px 0;gap:8px;cursor:pointer}.toggle b{font-size:12px;font-weight:600;display:block}.toggle small{font-size:10px;color:#809096;display:block;margin-top:4px}.toggle input{appearance:none;width:29px;height:17px;background:#dbe3e0;border-radius:12px;position:relative;cursor:pointer;flex-shrink:0}.toggle input:before{content:"";width:11px;height:11px;border-radius:50%;background:white;position:absolute;top:3px;left:3px;transition:left .15s}.toggle input:checked{background:var(--teal)}.toggle input:checked:before{left:15px}.interval{font-size:10px;color:var(--muted);display:grid;gap:7px}.interval select{font-size:11px;padding:8px;border:1px solid var(--line);border-radius:5px;background:white;color:#38585f;max-width:100%}.legend{padding-top:4px}.gradient{height:9px;background:linear-gradient(90deg,#a6e8d1,#53c8c2 10%,#289db6 20%,#246697 40%,#274073 60%,#1b2347);border-radius:5px}.ticks{display:flex;justify-content:space-between;font-size:10px;color:#71878b;margin-top:7px}.legend-key{display:flex;gap:14px;font-size:9px;color:#71878b;margin-top:14px}.legend-key span{display:flex;align-items:center;gap:4px}.legend-key i{width:9px;height:9px;display:inline-block;border:1px solid #b8c9cb}.land{background:#d1d5c9}.missing{background:#eaf0f0}.source-card{background:#f5f8f6;border:1px solid #e2eae5;border-radius:8px;padding:15px}.source-card p{font-size:11px;line-height:1.6;color:#73868b;margin:8px 0 14px}.data-status{font-size:12px;font-weight:650;display:flex;align-items:center;gap:7px}.data-status:before{content:"";height:6px;width:6px;border-radius:100%;background:#b89c60}.data-status.ready:before{background:#3d9680}.source-card .secondary{width:100%;padding:10px 6px;font-size:11px;background:#fff}.text-button{background:none;color:#3b776d;font-size:10px;padding:9px 0;text-align:left}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:6px;font-size:8px;letter-spacing:1px;color:#7d9494;padding-top:8px}.sidebar-bottom .text-button{margin-left:auto;font-size:9px;letter-spacing:0}.local-dot{width:5px;height:5px;background:#5b9d88;border-radius:50%}main{padding:28px 32px 14px;min-width:0}header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:23px}h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:31px;margin:6px 0 0;letter-spacing:-.7px}.header-actions{display:flex;gap:8px}.primary,.secondary{border-radius:5px;padding:11px 14px;font-size:11px;font-weight:600;white-space:nowrap}.primary{background:var(--teal);color:#fff}.secondary{background:white;border:1px solid #d8e2df;color:#456168}.primary.active{background:#b17c32}#notice{padding:11px 14px;background:#fff3de;color:#78602e;border:1px solid #ebdbb8;border-radius:5px;font-size:12px;line-height:1.5;margin-bottom:12px;overflow-wrap:anywhere}.map-wrap{position:relative;border:1px solid #cedddb;border-radius:10px;overflow:hidden;height:clamp(340px,55vh,650px);background:#eaf0f0}#map{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.map-top{position:absolute;top:17px;left:18px;display:flex;gap:7px;pointer-events:none}.map-tag{background:#fffE;padding:7px 10px;border-radius:4px;font-size:8px;font-weight:700;letter-spacing:1.3px;color:#355e60;box-shadow:0 1px 4px #193b3910}.map-tag.subtle{color:#70858a;letter-spacing:0;font-weight:400;font-size:9px}.zoom{position:absolute;right:16px;top:17px;display:grid;background:white;border:1px solid #dbe4e1;border-radius:6px;box-shadow:0 2px 5px #1a443c12;overflow:hidden}.zoom button{width:33px;height:31px;background:white;color:#48686c;font-size:21px;border-bottom:1px solid #edf1ef}.zoom button:last-child{border:0;font-size:20px}.empty-state{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);text-align:center;background:#f8fbf7f0;padding:25px 26px;border:1px solid #d8e5df;border-radius:10px;max-width:370px;width:80%;box-shadow:0 8px 40px #244c3f08}.empty-icon{font-size:34px;color:#519a8a;line-height:1}.empty-state h2{font:23px Georgia,serif;margin:12px 0}.empty-state p{font-size:12px;color:#768b8c;line-height:1.65;margin-bottom:18px}.empty-state small{display:block;font-size:9px;color:#93a29c;margin-top:13px}.map-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:8px;background:#f9fbf9e8;padding:7px 12px;font-size:9px;color:#71888d;pointer-events:none}.drawing-help{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);background:#163d44;color:white;border-radius:7px;display:flex;gap:8px;align-items:center;padding:10px 12px;box-shadow:0 3px 20px #0002;white-space:nowrap;font-size:11px}.drawing-help button{padding:7px;border-radius:4px;color:#fff;background:#367c74;font-size:10px}.inspection{position:absolute;top:65px;left:18px;width:250px;background:#fffF;border:1px solid #dae5df;border-radius:8px;padding:17px;box-shadow:0 8px 30px #173d4014;font-size:11px;line-height:1.6}.inspection>button{float:right;background:none;font-size:20px;color:#73908c;line-height:1}.inspection-value{font:31px Georgia,serif;margin:10px 0;color:#1d635f}.inspection dl{display:grid;grid-template-columns:65px 1fr;gap:5px;margin:9px 0 0}.inspection dt{color:#8c9d9c}.inspection dd{margin:0;overflow-wrap:anywhere}.inspection a{color:var(--teal)}.profile-panel{margin-top:21px;border:1px solid var(--line);border-radius:9px;background:#fff;overflow:hidden}.profile-header{padding:17px 21px 0;display:flex;align-items:center;gap:18px}.profile-header h2{font:22px Georgia,serif;margin:5px 0 0}.profile-header .eyebrow{font-size:8px}.profile-header>span{font-size:10px;color:#8b9b9b;margin-left:auto}.profile-header button{padding:8px 11px;font-size:10px}.chart-wrap{height:165px;position:relative;padding:2px 10px 0}.chart-wrap canvas{width:100%;height:100%;display:block}#profile-empty{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#97aaa8;font:17px Georgia,serif;line-height:1.8;margin:0;pointer-events:none}#profile-empty span{font:10px system-ui,sans-serif;color:#a0b0ae}footer{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#8d9e9c;margin-top:14px;line-height:1.6}dialog{border:1px solid #c9dcd5;border-radius:12px;padding:25px;color:#24454b;max-width:640px;width:90vw;box-shadow:0 20px 100px #193b3b44}dialog::backdrop{background:#153e464c;backdrop-filter:blur(3px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px}.dialog-header h2{font:28px Georgia,serif;margin:7px 0 0}.dialog-header button{font-size:25px;background:none;color:#78958c}.guide-step{margin:20px 0;font-size:12px;line-height:1.8}.guide-step h3{font-size:13px;color:#1d6861;margin:0 0 6px}.guide-step a{color:var(--teal);text-underline-offset:3px}.guide-step pre{padding:12px;background:#f0f5f2;border:1px solid #dce8e1;border-radius:5px;overflow:auto;font-size:10px;white-space:pre-wrap;overflow-wrap:anywhere}.guide-step p{margin:6px 0}.source-row{border-top:1px solid var(--line);padding:12px 0;font-size:11px;line-height:1.7}.source-row b{display:block}.source-row span{color:var(--muted)}@media(min-width:1600px){main{padding:34px 50px}.sidebar{padding-top:38px}}@media(max-width:1050px){body{grid-template-columns:245px minmax(0,1fr)}.sidebar{padding:25px 17px}.brand{font-size:14px}main{padding:24px 19px}.header-actions{flex-direction:column}.header-actions button{padding:9px 12px}.map-top{right:56px;flex-wrap:wrap}.map-tag.subtle{max-width:230px}.profile-header{gap:9px}.profile-header>span{display:none}.profile-header button{margin-left:auto}footer{display:block}}@media(max-width:700px){body{display:flex;flex-direction:column}.sidebar{padding:16px;gap:12px;border:0;border-bottom:1px solid var(--line)}.brand{margin:0}.sidebar>.eyebrow,.layer-section,.legend,.source-card,.sidebar-bottom{display:none}.region-picker{grid-template-columns:1fr 1fr;margin:0}.region{padding:11px}.region span{font-size:12px}.region small{font-size:8px}.region b{top:12px;right:9px}main{padding:18px 12px}.header-actions{gap:5px}h1{font-size:27px}.map-wrap{height:52vh;min-height:350px}.map-top{top:12px;left:12px}.map-tag{font-size:7px}.map-tag.subtle{max-width:180px}.map-bottom{font-size:7px}.drawing-help{white-space:normal;width:90%;font-size:10px}.inspection{left:12px;top:70px}.empty-state{padding:20px}.empty-state h2{font-size:20px}.profile-header{padding:14px 15px 0}.chart-wrap{height:165px}.profile-header h2{font-size:21px}footer{font-size:8px}.map-top{pointer-events:auto}.map-tag:first-child{cursor:pointer}}
.measure-panel{margin-top:20px;padding:20px 22px;border:1px solid var(--line);border-radius:9px;background:#fff}.measure-panel h2{font:23px Georgia,serif;margin:5px 0 15px}.measure-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.measure-actions label{display:grid;gap:5px;font-size:10px;color:#71878b}.measure-actions select{padding:9px 12px;border:1px solid var(--line);border-radius:5px;background:#fff;color:#315d60;font-size:12px;min-width:85px}.measure-panel>p{font-size:13px;line-height:1.6;color:#265d5d;margin:16px 0 6px}.measure-panel>small{font-size:10px;color:#7a8f8d;line-height:1.7;display:block}.inspection{max-height:calc(100% - 110px);overflow:auto}.pin-records{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pin-record{font-size:10px;background:#edf5f0;color:#286560;padding:8px;border:1px solid #d8e7e0;border-radius:4px}.pin-pages{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:6px;font-size:10px}.pin-pages button{font-size:10px;background:#f3f6f4;color:#426765;padding:5px;border-radius:3px}@media(max-width:700px){.measure-panel{padding:16px}.measure-actions{align-items:stretch}.measure-actions .primary{white-space:normal}.measure-actions label{min-width:90px}.measure-panel>p{font-size:12px}}
.beach-picker{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--line);background:#fff;border-radius:8px;padding:13px 16px;margin-bottom:15px}.beach-picker>div{min-width:145px}.beach-picker label{font-size:12px;font-weight:650;display:block}.beach-picker small{font-size:10px;color:var(--muted);display:block;margin-top:4px}.beach-picker input,.beach-picker select{font:12px system-ui;color:#31575b;padding:10px;border:1px solid #d8e4df;border-radius:5px;background:#fff;min-height:38px}.beach-picker .search-label{flex:1;min-width:130px}.beach-picker input{width:100%}.beach-picker select{min-width:225px;flex:2;max-width:100%}.beach-picker>a{color:var(--teal);font-size:10px}.beach-picker p{flex-basis:100%;font-size:10px;color:#7d9290;margin:0;line-height:1.5}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.beach-picker{gap:9px;padding:12px}.beach-picker>div{flex-basis:100%}.beach-picker select{flex-basis:100%;min-width:0}.beach-picker .search-label{flex-basis:100%}.beach-picker>a{margin-left:auto}}
/* Beach discovery is the primary flow; technical layers live in details. */
.map-data{border-top:1px solid var(--line);padding-top:14px}.map-data>summary,.map-data .layer-section{border:0;padding-top:10px}.discovery,.comparison,.beach-summary{border:1px solid var(--line);border-radius:10px;background:#fff;padding:18px;margin-bottom:18px}.discovery-heading{display:flex;justify-content:space-between;gap:18px;align-items:center}.discovery-heading label{font:23px Georgia,serif}.discovery-heading p{font-size:11px;color:var(--muted);margin:6px 0}.discovery input[type=search]{font:14px system-ui;padding:12px;border:1px solid #c7d9d2;border-radius:6px;min-width:230px;width:45%;color:#244c50}.discovery-filters{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;align-items:end}.discovery-filters>label{display:grid;gap:5px;font-size:10px;color:#557578;flex:1;min-width:110px}.discovery-filters select{font:11px system-ui;border:1px solid #d6e3dd;border-radius:5px;padding:9px;background:white;color:#315d60;max-width:100%;width:100%}.discovery-filters .check-filter{display:flex;align-items:center;font-size:11px;padding-bottom:8px}.beach-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:16px 0;max-height:365px;overflow:auto;padding:2px}.beach-card{border:1px solid #dce7e0;border-radius:7px;padding:13px;background:#fcfefb;display:flex;flex-direction:column;gap:8px}.beach-card.selected{border-color:#24766c;background:#f1f9f4}.beach-open{background:none;color:#195e59;font:18px Georgia,serif;padding:0;text-align:left;white-space:normal}.beach-card small,.beach-summary small,.compare-card small{font-size:10px;color:#718986;line-height:1.5}.beach-card p,.beach-summary p,.compare-card p{font-size:12px;line-height:1.6;margin:3px 0}.tags{display:flex;gap:5px;flex-wrap:wrap}.tags span{background:#eaf3ed;border-radius:4px;padding:4px 6px;color:#466d63;font-size:9px}.compare-toggle{font-size:10px;display:flex;align-items:center;gap:5px;margin-top:auto;color:#587573}.comparison h2,.beach-summary h2{font:24px Georgia,serif;margin:0 0 10px}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.compare-card{border:1px solid var(--line);padding:14px;border-radius:6px;min-width:0}.compare-card h3{font:20px Georgia,serif;margin:0 0 7px}.compare-card a,.beach-summary a{color:var(--teal);font-size:11px;overflow-wrap:anywhere}.muted{color:#7c918c;font-size:12px}input,select{font:inherit}.beach-summary{scroll-margin-top:18px}.sidebar .region-picker{margin:0}.region-picker .region span{font-size:12px}.region-picker .region small{font-size:8px}.sidebar{align-self:start;position:sticky;top:0;max-height:100vh;overflow:auto}#source-summary{line-height:1.6}header{margin-bottom:18px}@media(max-width:1050px){.discovery-filters>label{min-width:125px}.beach-results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.sidebar{position:static;max-height:none;overflow:visible}.sidebar .region-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.map-data{display:none}.discovery,.comparison,.beach-summary{padding:14px}.discovery-heading{display:block}.discovery input[type=search]{width:100%;min-width:0;margin-top:10px}.discovery-heading label{font-size:22px}.beach-results{grid-template-columns:1fr;max-height:420px}.discovery-filters>label{min-width:calc(50% - 10px)}.comparison-grid{grid-template-columns:1fr}.discovery-filters .check-filter{min-width:100%}.map-wrap{height:50vh}}
@media(max-width:700px){.map-data{display:block}.map-data .layer-section{display:block}.map-data .legend:not([hidden]),.map-data .source-card{display:block}.sidebar .region-picker .region{min-width:0}.region small{letter-spacing:.5px}}
/* National directory, activity guides and beach-first stays. */
.primary-nav{display:flex;gap:5px;margin-bottom:8px}.primary-nav button{background:#edf4ef;color:#45675f;border-radius:5px;padding:10px 11px;font-size:12px;flex:1}.primary-nav button.active{background:#176d60;color:white}.region-picker{display:block}.state-group{border-bottom:1px solid var(--line);padding:9px 0}.state-group>summary{cursor:pointer;font-size:12px;font-weight:650;color:#385d58}.area-button{display:block;text-align:left;background:transparent;color:#5c7871;font-size:11px;padding:9px 7px;margin-top:3px;border-radius:4px;width:100%;line-height:1.5}.area-button.active{background:#e6f2e9;color:#166653;font-weight:650}.page-intro{font-size:12px;color:#718880;margin:10px 0 0;line-height:1.7}.section-heading{font:25px Georgia,serif;margin:0 0 12px;color:#254d48}.breadcrumbs{font-size:11px;color:#58766c;margin:0 0 13px}.areas-tree{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:18px 0}.state-card{padding:17px;border:1px solid var(--line);border-radius:8px;background:white;align-self:start}.state-card h2{font:23px Georgia,serif;margin:0 0 12px}.area-group{border-top:1px solid var(--line);padding:10px 0}.area-group>summary{cursor:pointer;line-height:1.5;font-size:12px}.area-group>summary small{display:block;font-size:9px;color:#7b8e84;font-weight:400;margin:5px 0 0 14px}.area-group>.secondary{margin:12px 0}.area-beaches{margin:4px 0;padding:0 0 0 17px;max-height:260px;overflow:auto}.area-beaches .text-button{font-size:11px;padding:6px 0}.recommendation-section{padding:18px 0 24px}.recommendations{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.recommendation-focus{display:flex;align-items:center;gap:9px;font-size:11px;color:#58756a;margin:12px 0}.recommendation-focus select{font:11px system-ui;padding:8px;border:1px solid var(--line);border-radius:4px;background:white;color:#315a50}.discovery-filters .camping-check{display:flex;align-items:center;font-size:11px;min-width:130px;padding-bottom:10px}.explorer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:25px 0 15px}.explorer-heading h2{font:26px Georgia,serif;margin:0}.activity-guide{background:white;border:1px solid var(--line);border-radius:9px;margin:16px 0;padding:23px;max-width:860px}.activity-guide h2{font:29px Georgia,serif;color:#245c50;margin:0 0 12px}.activity-guide h3{font-size:15px;margin:22px 0 8px;color:#315f52}.activity-guide p,.guide-intro{font-size:13px;line-height:1.85;color:#526f65}.activity-guide a{font-size:11px;color:var(--teal)}.activity-guide small{color:#7d9085;font-size:10px}.nearby-stays,.activity-facts,.social-gallery,.survey-inventory{border-top:1px solid var(--line);padding-top:17px;margin-top:18px}.nearby-stays h3,.activity-facts h3,.social-gallery h3{font:23px Georgia,serif;color:#315e50;margin:0 0 10px}.stay-filters{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:14px 0}.stay-filters select{font:11px system-ui;padding:9px;border:1px solid var(--line);border-radius:4px;background:white;color:#365e50}.stay-filters label{font-size:11px;color:#718777;display:flex;align-items:center;gap:5px}.stay-results,.social-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:12px 0}.stay-card,.social-card{border:1px solid #dce7df;padding:14px;border-radius:7px;background:#fcfdf9;min-width:0}.stay-card h4,.social-card h4{font-size:14px;color:#365e50;margin:0 0 9px}.stay-card p,.social-card p{font-size:11px!important}.stay-card small,.social-card small{display:block;font-size:10px;line-height:1.7;margin:7px 0;color:#7b8c78}.stay-card a,.social-card a{font-size:10px}.social-card .secondary{display:block;margin:10px 0}.social-card iframe{width:100%;border:0;max-width:100%;background:white;border-radius:5px}.survey-inventory summary{font-size:12px;font-weight:650;cursor:pointer;color:#375e50}.restriction{padding:10px;border-left:3px solid #ac7b34;background:#fff8e9}.guide-intro{max-width:800px}.beach-results{margin-top:14px;margin-bottom:20px}.source-card p{font-size:11px}#search-results-panel{margin-bottom:20px}@media(max-width:700px){.region-picker{display:block;max-height:220px;overflow:auto}.primary-nav{margin:4px 0}.areas-tree{grid-template-columns:1fr}.state-card{padding:14px}.activity-guide{padding:17px}.activity-guide h2{font-size:25px}.stay-results,.social-grid{grid-template-columns:1fr}.stay-filters select{flex:1;min-width:100px}.stay-filters label{flex-basis:100%}.recommendations{grid-template-columns:1fr}.explorer-heading h2{font-size:22px}.recommendation-focus{display:block}.recommendation-focus select{display:block;margin-top:6px;width:100%}.discovery-filters .camping-check{min-width:100%}.page-intro{font-size:11px}.explorer-heading .header-actions{flex-direction:row}}
.empty-state{left:12px;bottom:40px;top:auto;transform:none;text-align:left;padding:10px 13px;width:320px;max-width:calc(100% - 24px);box-shadow:0 3px 15px #244c3f10}.empty-state p{margin:0;font-size:10px;line-height:1.6}.empty-state .text-button{font-size:10px;padding:6px 0 0}

/* Keep the depth map directly accessible and ahead of location details. */
.primary-nav{flex-wrap:wrap}.primary-nav button{flex:1 1 40%}.survey-picker{display:flex;align-items:center;gap:12px;font-size:12px;color:#315d60;margin-top:20px}.survey-picker select{padding:10px;border:1px solid var(--line);border-radius:5px;background:white;color:#244c50;max-width:100%}.map-wrap{scroll-margin-top:15px}.beach-summary{margin-top:20px}@media(max-width:700px){.survey-picker{display:grid}.survey-picker select{width:100%}}
/* Compact navigation; maps, photographs and nearby stays carry the page. */
body{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding:20px 14px;gap:14px}.brand{font-size:13px;letter-spacing:1.1px;gap:8px;margin-bottom:6px}.brand-mark{font-size:31px}.brand small{font-size:9px;max-width:140px;line-height:1.5}.primary-nav{gap:4px;margin:0}.primary-nav button{padding:9px 7px;font-size:11px}.directory-menu>summary,.map-data>summary{cursor:pointer;font-size:11px;font-weight:600;color:#45675f;padding:9px 0}.state-group{padding:6px 0}.state-group>summary{font-size:11px}.area-button{font-size:10px;padding:5px 6px;margin-top:1px}.directory-menu .region-picker{max-height:45vh;overflow:auto}.map-data{padding-top:0}.toggle{margin:12px 0}.toggle small{font-size:9px}.source-card{padding:10px}main{padding:18px 20px 12px}header{margin-bottom:12px}h1{font-size:25px;margin-top:3px}.page-intro{display:none}.discovery{position:relative;padding:10px 13px;margin-bottom:12px}.breadcrumbs{font-size:10px;margin:0 0 5px}.discovery-heading{gap:12px;padding-right:88px}.discovery-heading label{font:600 12px system-ui}.discovery-heading p{font-size:10px;margin:3px 0}.discovery input[type=search]{font-size:12px;padding:9px;width:55%;min-width:160px}.search-options>summary{cursor:pointer;font-size:11px;color:#28675b;position:absolute;right:13px;top:30px;padding:8px;border:1px solid var(--line);border-radius:5px;background:#f6faf7}.search-options[open]{padding-top:9px}.discovery-filters{border-top:1px solid var(--line);padding-top:10px;margin-top:0;gap:8px}.discovery-filters>label{font-size:9px;min-width:95px}.discovery-filters select{padding:7px}.survey-picker{margin:10px 0 0;gap:9px;font-size:10px}.survey-picker select{font-size:11px;padding:7px 10px}.explorer-heading{margin:10px 0}.explorer-heading h2{font-size:25px}.explorer-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:16px;align-items:start}.explorer-layout:has(>#beach-summary[hidden]){grid-template-columns:minmax(0,1fr)}.map-column{min-width:0}.map-wrap{height:clamp(460px,72vh,900px);border-radius:9px}.beach-summary{min-width:0;margin:0;padding:16px;box-shadow:0 6px 24px #224b3e08;border-top:3px solid #237d68}.beach-overview h2{font-size:25px;margin:7px 0 5px}.beach-overview>p{font-size:11px;color:#658073}.beach-overview .depth-highlight{font-size:13px;font-weight:600;color:#1c6459;padding:10px 12px;background:#eaf5ed;border-radius:6px;margin-top:12px}.beach-summary .social-gallery{margin-top:16px;padding-top:16px}.social-gallery h3,.nearby-stays h3{font-size:23px}.beach-summary .social-grid{grid-template-columns:minmax(0,1fr)}.social-card{padding:12px;background:#f6faf6}.social-card h4{font:19px Georgia,serif;line-height:1.3}.social-card .social-preview{width:100%;min-height:155px;white-space:normal;font-size:13px;color:#fff;border:0;background:radial-gradient(ellipse at 20% 0%,#72a8a0,transparent 65%),linear-gradient(145deg,#407b75,#183f4b);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-radius:7px}.social-preview:before{content:'▧';font-size:36px;font-weight:400}.social-card iframe{min-height:520px}.social-embed:empty{display:none}.social-card>small{font-size:9px}.nearby-stays{margin-top:18px;padding-top:18px}.stay-filters{gap:6px;margin:10px 0}.stay-filters select{font-size:10px;padding:7px;min-width:0;flex:1}.stay-filters label{flex-basis:100%;font-size:10px}.stay-results{grid-template-columns:minmax(0,1fr);gap:9px}.stay-card{padding:13px;border-left:3px solid #a3824d;background:#fffdf7}.stay-card h4{font:19px Georgia,serif;line-height:1.3;color:#455d43}.stay-card>a:first-of-type{display:inline-block;background:#edf3e7;color:#395c36;border-radius:4px;padding:8px 10px;margin:4px 0;font-size:11px;font-weight:600}.beach-facts{border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.beach-facts>summary{font-size:12px;font-weight:600;color:#426a5a;cursor:pointer}.beach-facts[open]>summary{margin-bottom:12px}.survey-inventory{padding-top:12px;margin-top:14px}.measure-panel{padding:14px 16px;margin-top:12px}.measure-panel h2{font-size:21px;margin:4px 0 10px}.measure-panel>p{margin:10px 0 5px;font-size:12px}.measure-actions .primary,.measure-actions .secondary{padding:9px 10px}.section-heading{font-size:22px;margin-bottom:8px}.recommendation-section{padding:10px 0 16px}.recommendations{gap:8px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.beach-card{padding:10px 12px;gap:4px}.beach-open{font:600 14px system-ui}.beach-card p{font-size:11px;margin:0}.beach-card>small{font-size:9px}.beach-card>small:nth-of-type(2){display:none}.tags span{padding:3px 5px;font-size:8px}.compare-toggle{font-size:9px;margin-top:5px}.beach-results{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:7px;max-height:285px;margin:10px 0}.areas-tree{gap:9px;margin:12px 0;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.state-card{padding:12px}.state-card h2{font-size:20px;margin-bottom:8px}.area-group{padding:6px 0}.area-group>summary{font-size:11px}.area-group>summary small{margin-top:2px;font-size:9px}.area-beaches .text-button{padding:4px 0}.recommendation-focus{margin:8px 0}.primary-nav button[data-view=maps]{font-weight:700}
@media(min-width:1600px){main{padding:20px 28px}.explorer-layout{grid-template-columns:minmax(0,1fr) 390px}.sidebar{padding-top:22px}}
@media(max-width:1150px){body{grid-template-columns:175px minmax(0,1fr)}.sidebar{padding:16px 11px}.explorer-layout{grid-template-columns:minmax(0,1fr)}.beach-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.beach-overview,.beach-summary>.restriction,.beach-facts,.beach-summary>.survey-inventory{grid-column:1/-1}.beach-summary>.nearby-stays{grid-column:2;grid-row:2 / span 3}.beach-summary>.social-gallery{grid-column:1}.beach-summary:not(:has(.social-gallery))>.nearby-stays{grid-column:1/-1;grid-row:auto}.map-wrap{height:68vh;min-height:430px}.discovery-heading label{font-size:11px}.discovery input[type=search]{min-width:120px}.header-actions{flex-direction:row}}
@media(max-width:700px){body{display:block}.sidebar{position:static;padding:10px 12px;display:grid;grid-template-columns:1fr 1fr;gap:7px 12px;max-height:none}.brand{font-size:12px;margin:0}.brand small{display:none}.brand-mark{font-size:27px;line-height:30px}.primary-nav{grid-column:1/-1;grid-row:2;flex-wrap:nowrap}.primary-nav button{padding:9px 5px;flex:1;font-size:10px}.directory-menu{grid-column:2;grid-row:1;text-align:right;align-self:center}.directory-menu[open]{grid-column:1/-1;grid-row:3;text-align:left}.directory-menu>summary{padding:5px 0;font-size:10px}.directory-menu .region-picker{max-height:220px}.map-data{grid-column:1/-1;border:0}.map-data>summary{font-size:10px;padding:4px 0}.map-data:not([open]){margin:0}.sidebar-bottom{display:none}main{padding:10px 12px}header{margin-bottom:9px}header .eyebrow{display:none}h1{font-size:23px}.discovery{padding:8px 10px}.breadcrumbs{font-size:9px}.discovery-heading{display:flex;flex-wrap:wrap;padding-right:68px;gap:5px}.discovery-heading>div{display:none}.discovery input[type=search]{margin:0;width:100%;font-size:12px;min-width:0;padding:8px}.search-options>summary{font-size:10px;right:10px;top:23px;padding:7px 5px;max-width:65px}.search-options[open]{padding-top:8px}.discovery-filters>label{min-width:calc(50% - 8px)}.survey-picker{display:flex;font-size:9px;gap:7px}.survey-picker select{width:auto;flex:1;min-width:0;font-size:10px}.explorer-heading h2{font-size:23px}.explorer-heading .secondary{font-size:9px;padding:8px}.explorer-layout{gap:12px}.map-wrap{height:66svh;min-height:380px}.beach-summary{display:block;padding:15px}.beach-summary .social-grid{grid-template-columns:minmax(0,1fr)}.social-card .social-preview{min-height:180px}.stay-results{grid-template-columns:minmax(0,1fr)}.stay-filters select{min-width:0}.beach-results{max-height:250px;grid-template-columns:1fr}.recommendations{grid-template-columns:1fr}.recommendation-focus{display:flex}.recommendation-focus select{width:auto;margin:0;max-width:70%;font-size:10px}.areas-tree{grid-template-columns:1fr}.map-top{gap:4px}.map-bottom{flex-wrap:wrap}.measure-actions label{min-width:70px}.measure-panel>small{font-size:9px}.map-data .source-card{margin-top:10px}}

body[data-view="maps"] main>header{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.discovery-heading{padding-right:145px}.beach-summary{max-height:clamp(460px,72vh,900px);overflow:auto;scrollbar-width:thin}.place-tabs{display:flex;gap:5px;position:sticky;top:-16px;z-index:2;background:white;padding:10px 0;margin-top:10px;border-bottom:1px solid var(--line)}.place-tab{flex:1;padding:10px 8px;border-radius:5px;background:#eef3ed;color:#426654;font-size:12px;font-weight:600}.place-tab[aria-selected="true"]{background:#246e5a;color:white}.place-tabs~.social-gallery,.place-tabs~.nearby-stays{border-top:0;padding-top:10px;margin-top:0}.beach-summary .social-card>p,.beach-summary .social-card>small{font-size:10px!important}.beach-summary .social-gallery>p{font-size:10px}.beach-summary .social-card h4{font-size:17px}.beach-summary .social-preview{min-height:140px}.beach-summary>.restriction{font-size:11px;line-height:1.55}.beach-facts{clear:both}@media(max-width:1150px){.beach-summary{display:block;max-height:none}.place-tabs{position:static}.beach-summary .social-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.beach-summary .stay-results{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media(max-width:700px){.discovery-heading{padding-right:95px}.search-options>summary{max-width:90px;white-space:nowrap;font-size:9px}.beach-summary .social-grid,.beach-summary .stay-results{grid-template-columns:minmax(0,1fr)}.beach-summary .social-preview{min-height:180px}}

/* Navy ocean chart: geographic water colour is separate from surveyed depths. */
.map-wrap{background:#06162e}.map-bottom{background:#06162eea;color:#b5c8db}.map-bottom a{color:#c5ddec;pointer-events:auto;text-underline-offset:2px}.contour-legend{position:absolute;right:13px;bottom:38px;display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:5px;background:#06162ee8;color:#c2d7e7;font-size:9px;pointer-events:none}.contour-legend>span{font-size:8px;margin-right:3px}.contour-legend i{font-style:normal;border-top:2px solid var(--contour);padding-top:4px;min-width:18px;text-align:center}.gradient{background:linear-gradient(90deg,#aee7e4,#53c4da 10%,#2796c9 20%,#1d609e 40%,#173a6e 60%,#06162e)}@media(max-width:700px){.contour-legend{gap:6px;right:9px;padding:7px;bottom:47px;font-size:8px}.contour-legend>span{font-size:7px}.contour-legend i{min-width:16px}.map-bottom a{display:inline-block}}

.legend-key .land{background:#3a4b63}

.instagram-form{margin:14px 0;padding:12px;background:#f2f6f3;border-radius:6px}.instagram-form>label{display:block;font-size:11px;font-weight:600;margin-bottom:6px}.instagram-form>div{display:flex;gap:6px}.instagram-form input{min-width:0;flex:1;width:100%;padding:9px;border:1px solid var(--line);border-radius:4px;font:inherit;font-size:11px}.instagram-form button{white-space:nowrap;padding:8px;font-size:11px}.instagram-form small,.social-gallery>small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:6px}.instagram-status:empty{display:none}.instagram-status{font-size:11px!important;margin:8px 0}.social-card>.text-button{display:block;margin-top:8px}

.surface-legend{position:absolute;left:14px;top:52px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;max-width:calc(100% - 75px);padding:8px 10px;background:#06162ee8;border-radius:5px;color:#c2d7e7;font-size:9px}.surface-gradient{width:65px;height:8px;background:linear-gradient(90deg,#aee7e4,#53c4da,#2796c9,#1d609e,#173a6e,#06162e);border:1px solid #6487a0}.surface-legend a{color:#d4e9f5}.surface-legend small{font-size:9px}.surface-legend button{padding:3px 6px;font-size:9px;background:#294c66;color:white;border-radius:3px}
