:root{--navy:#08233f;--harbor:#0f5b78;--ocean:#1684a7;--sea-glass:#8bc7bd;--dune:#ead8b7;--sand:#f7edda;--foam:#fffdf7;--sunrise:#f4b86a;--gold:#c79b37;--red:#b54a48;--green:#1d7d5a;--slate:#506274;--ink:#102032;--line:#08233f24;--shadow:0 18px 52px #08233f29;color:var(--ink);background:var(--sand);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{background:radial-gradient(circle at 8% 2%, #f4b86a80, transparent 26rem), linear-gradient(180deg, #fdf6e9 0%, var(--sand) 42%, #e7f2ef 100%);min-width:320px;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.site-shell{width:min(100%,1180px);margin:0 auto;padding:10px 10px 92px}.topbar{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf7eb;border-radius:22px;justify-content:space-between;align-items:center;gap:10px;min-height:64px;margin-bottom:10px;padding:10px;display:flex;position:sticky;top:8px;box-shadow:0 12px 30px #08233f1a}.brand-lockup{min-width:0;color:var(--navy);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand-lockup strong{letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:.98rem;line-height:1.05;display:block}.brand-lockup small{max-width:160px;color:var(--slate);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;letter-spacing:.1em;font-size:.61rem;font-weight:800;display:block;overflow:hidden}.brand-mark{border:2px solid var(--gold);background:linear-gradient(180deg, var(--harbor), var(--navy));width:44px;height:44px;color:var(--foam);border-radius:50%;flex:none;place-items:center;font-family:Georgia,serif;font-weight:900;display:grid;position:relative;overflow:hidden}.brand-mark:after{content:"";background:#8bc7bdd1;border-radius:999px;width:34px;height:10px;position:absolute;bottom:6px;right:-9px}.brand-mark span{z-index:1;position:relative}.primary-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px;display:none}.primary-nav a{min-height:40px;color:var(--navy);border-radius:999px;align-items:center;padding:0 10px;font-size:.82rem;font-weight:850;text-decoration:none;display:inline-flex}.primary-nav a:hover{background:#1684a71f}.section-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf7e0;border-radius:26px;margin:12px 0;padding:22px 16px;position:relative;overflow:hidden}.hero{border-top:6px solid var(--harbor);background:radial-gradient(circle at 86% 12%,#f4b86a80,#0000 7rem),linear-gradient(160deg,#fffdf7fa 0%,#f7eddaf5 50%,#d3ebe8eb 100%);padding-top:20px}.shoreline{opacity:.42;pointer-events:none;background:radial-gradient(60px 16px at 12% 34%,#ffffffe6 42%,#0000 44%),radial-gradient(70px 18px at 38% 42%,#ffffffd1 42%,#0000 44%),radial-gradient(80px 20px at 70% 38%,#ffffffd6 42%,#0000 44%),linear-gradient(#0000,#1684a747);height:92px;position:absolute;bottom:-34px;left:-10%;right:-10%}.hero-grid,.two-column,.spotlight-panel{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.hero-copy{z-index:1;position:relative}h1,h2,h3{color:var(--navy);margin:0 0 12px;font-family:Georgia,Times New Roman,serif;line-height:1.02}h1{letter-spacing:-.062em;max-width:11ch;font-size:clamp(2.55rem,14vw,5.4rem)}h2{letter-spacing:-.04em;font-size:clamp(1.7rem,8vw,3rem)}h3{letter-spacing:-.02em;font-size:1.22rem}p{color:var(--slate);font-size:.98rem;line-height:1.62}.lead{color:#31485d;max-width:680px;margin:0 0 14px;font-size:clamp(1rem,4.6vw,1.28rem);line-height:1.55}.eyebrow,.card-label{color:var(--red);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:10px;font-size:.72rem;font-weight:900;display:inline-flex}.eyebrow:before,.card-label:before{content:"⚓";letter-spacing:0}.season-card,.ballot-card,.formal-card,.pricing-card,.category-card,.profile-card,.admin-export-card,.intake-form{border:1px solid var(--line);background:#fffdf7d1;border-radius:22px}.season-card{gap:10px;padding:12px;display:flex}.season-card strong{color:var(--navy);font-size:.95rem;display:block}.season-card small{color:var(--slate);margin-top:2px;line-height:1.35;display:block}.status-dot{background:var(--sea-glass);border-radius:50%;flex:none;width:12px;height:12px;margin-top:4px;box-shadow:0 0 0 6px #8bc7bd38}.hero-actions,.button-row{grid-template-columns:1fr;gap:10px;margin-top:14px;display:grid}.button{touch-action:manipulation;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:0 18px;font-weight:900;text-decoration:none;display:inline-flex}.button.primary{background:linear-gradient(135deg, var(--navy), var(--harbor));color:var(--foam)}.button.secondary{color:var(--navy);background:#8bc7bd2e;border-color:#0f5b784d}.button.inverted{background:var(--foam);color:var(--navy)}.button.ghost{color:var(--red);background:#ffffff73;border-color:#b54a4847}.button.full{width:100%}.ballot-card{z-index:1;border-left:6px solid var(--sunrise);background:linear-gradient(#fffdf7f0,#f7eddae0);padding:16px;position:relative}.ballot-card p{margin-top:0}.mini-form{gap:8px;margin:14px 0;display:grid}.mini-form span{min-height:44px;color:var(--slate);background:#ffffff8a;border:1px dashed #0f5b7852;border-radius:14px;align-items:center;padding:0 12px;font-weight:700;display:flex}.disclaimer{color:var(--red);font-size:.86rem;font-weight:800}.town-strip{color:var(--navy);gap:10px;padding:12px 4px;font-weight:900;display:grid}.town-strip div,.chip-row{scrollbar-width:thin;-webkit-overflow-scrolling:touch;gap:8px;padding:3px 2px 8px;display:flex;overflow-x:auto}.town-strip a,.chip-row a{min-height:44px;color:var(--navy);background:#fffdf7db;border:1px solid #08233f1f;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 14px;font-size:.9rem;font-weight:850;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #08233f0f}.section-heading{max-width:760px;margin-bottom:18px}.section-heading.tight{margin-bottom:8px}.section-heading p{margin-bottom:0}.category-grid,.pricing-grid{grid-template-columns:1fr;gap:12px;display:grid}.category-card,.pricing-card,.formal-card,.profile-card,.admin-export-card{padding:16px}.category-card{background:linear-gradient(#fffdf7eb,#fffdf7c2),radial-gradient(circle at 88% 0,#1684a738,#0000 6rem)}.category-topline{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.category-number{color:var(--gold);letter-spacing:.14em;font-weight:950}.category-icon{font-size:1.8rem}.category-card small{color:var(--harbor);margin:-2px 0 8px;font-weight:900;display:inline-flex}.category-card p{margin:0 0 12px;font-size:.92rem}.category-card a{min-height:44px;color:var(--red);align-items:center;font-weight:900;text-decoration:none;display:inline-flex}.spotlight-panel{background:linear-gradient(135deg,#08233ff5,#0f5b78eb),radial-gradient(circle at 12% 18%,#f4b86a57,#0000 9rem)}.spotlight-panel h2,.spotlight-panel p{color:var(--foam)}.spotlight-panel .eyebrow{color:var(--sunrise)}.spotlight-list{gap:10px;display:grid}.spotlight-list p{background:#ffffff14;border:1px solid #ffffff2e;border-radius:16px;margin:0;padding:12px}.methodology-list{counter-reset:method;margin:0;padding:0;list-style:none}.methodology-list li{border:1px solid var(--line);color:#314155;background:#fbf6ea;border-radius:18px;min-height:58px;margin-bottom:10px;padding:14px 14px 14px 54px;line-height:1.5;position:relative}.methodology-list li:before{counter-increment:method;content:counter(method);background:var(--navy);width:28px;height:28px;color:var(--sunrise);border-radius:50%;place-items:center;font-weight:950;display:grid;position:absolute;top:14px;left:14px}.compact-list li{font-size:.92rem}ul{color:var(--slate);padding-left:20px;line-height:1.65}.price{color:var(--red);font-weight:950}.form-section{background:radial-gradient(circle at 100% 0,#8bc7bd4d,#0000 14rem),#fffdf7e6}.inset-form{box-shadow:none;margin-top:16px;padding:0}.intake-form{background:#fffdf7e6;gap:14px;padding:16px;display:grid}.form-copy p{margin:0}.intake-form label{color:var(--navy);gap:7px;font-size:.92rem;font-weight:900;display:grid}.required{color:var(--red)}.intake-form input:not([type=checkbox]),.intake-form select,.intake-form textarea,.export-box{width:100%;min-height:52px;color:var(--ink);background:#ffffffe0;border:1px solid #08233f2e;border-radius:16px;outline:none;padding:12px 13px}.intake-form textarea{resize:vertical;min-height:122px}.intake-form input:focus,.intake-form select:focus,.intake-form textarea:focus,.export-box:focus{border-color:var(--ocean);box-shadow:0 0 0 4px #1684a724}.form-grid{grid-template-columns:1fr;gap:12px;display:grid}.consent-row{background:#8bc7bd24;border-radius:16px;align-items:start;padding:12px;line-height:1.45;color:var(--slate)!important;grid-template-columns:auto 1fr!important;gap:10px!important;font-weight:750!important}.consent-row input{width:22px;height:22px;accent-color:var(--harbor);margin:0}.form-status{border-radius:14px;margin:0;padding:12px;font-weight:850}.form-status.pending{color:#6f4a13;background:#f4b86a3d}.form-status.success{color:var(--green);background:#1d7d5a21}.form-status.error{color:var(--red);background:#b54a4821}.profile-card{background:linear-gradient(#fffdf7f2,#f7eddad9),radial-gradient(circle at 12% 0,#f4b86a47,#0000 10rem)}.profile-badge{color:var(--red);text-transform:uppercase;letter-spacing:.08em;background:#b54a481f;border-radius:999px;margin-bottom:12px;padding:8px 10px;font-size:.76rem;font-weight:950;display:inline-flex}dl{gap:10px;margin:14px 0;display:grid}dl div{border:1px solid var(--line);background:#ffffff94;border-radius:14px;padding:10px}dt{color:var(--navy);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:950}dd{color:var(--slate);margin:4px 0 0;line-height:1.45}.admin-export-card{background:#fffdf7f0}.admin-toolbar{gap:12px;display:grid}.admin-toolbar p{margin:0}.segmented-control{background:#08233f14;border-radius:16px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}.segmented-control button{min-height:42px;color:var(--navy);background:0 0;border:0;border-radius:12px;font-weight:950}.segmented-control button.active{background:var(--navy);color:var(--foam)}.export-box{resize:vertical;min-height:240px;margin-top:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.45}.site-footer{color:var(--slate);gap:8px;padding:18px 4px 8px;font-size:.9rem;display:grid}.site-footer strong{color:var(--navy)}.mobile-action-bar{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#08233ff0;border:1px solid #ffffff8c;border-radius:22px;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;display:grid;position:fixed;bottom:10px;left:10px;right:10px;box-shadow:0 14px 40px #08233f47}.mobile-action-bar a{min-height:48px;color:var(--foam);border-radius:16px;justify-content:center;align-items:center;font-size:.85rem;font-weight:950;text-decoration:none;display:inline-flex}.mobile-action-bar a:first-child{background:linear-gradient(135deg, var(--red), var(--sunrise));color:var(--navy)}@media (width>=520px){.site-shell{padding:16px 16px 96px}.primary-nav{display:flex}.hero-actions,.button-row{grid-template-columns:repeat(2,minmax(0,max-content))}.category-grid,.pricing-grid,.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=860px){.site-shell{padding:24px}.topbar{margin-bottom:22px;padding:14px 18px;top:14px}.brand-lockup strong{font-size:1.08rem}.brand-lockup small{max-width:none}.section-panel{border-radius:30px;margin:22px 0;padding:clamp(34px,5vw,58px)}.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);align-items:center;gap:clamp(26px,5vw,56px)}.two-column,.spotlight-panel{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);align-items:start;gap:clamp(24px,5vw,54px)}h1{max-width:860px;font-size:clamp(4rem,7vw,5.9rem)}.lead{font-size:1.28rem}.town-strip{grid-template-columns:auto 1fr;align-items:center;padding-inline:10px}.category-grid,.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.intake-form{padding:22px}.admin-toolbar{grid-template-columns:1fr auto;align-items:start}.site-footer{grid-template-columns:auto 1fr auto;align-items:center}.mobile-action-bar{display:none}}
