:root{--color-canvas-cream:#faf9f7;--color-surface-ivory:#fbfaf7;--color-pure-white:#fff;--color-lavender-mist:#f4f0ff;--color-powder-blue:#d6e4f1;--color-ink-charcoal:#121722;--color-slate-gray:#777c86;--color-steel-gray:#a5a5a5;--color-hairline:#efefef;--color-electric-cobalt:#0068f9;--color-deep-cobalt:#024bb1;--color-cerulean:#0074dd;--color-vivid-violet:#6736eb;--color-forest:#046645;--color-sun-gold:#ffc928;--color-deep-gold:#e7a900;--font-roobert:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow-subtle:#00000012 0px 1px 1px 0px, #0000000a 0px -1px 1px 0px inset, #00000024 0px 0px 0px .5px inset;--shadow-lg:#0000000a 0px 20px 20px -8px;--radius-card:16px;--radius-pill:48px;font-family:var(--font-roobert)}*{box-sizing:border-box}body{background:radial-gradient(circle at 7% 12%, #0068f917, transparent 28%), radial-gradient(circle at 94% 18%, #ffc92829, transparent 24%), linear-gradient(180deg, #f7fbff 0%, var(--color-canvas-cream) 42%, #eef6ff 100%);color:var(--color-ink-charcoal);margin:0;font-size:16px;line-height:1.56}a{color:inherit}button,input{font:inherit}.site-header{z-index:30;border-bottom:1px solid var(--color-hairline);backdrop-filter:blur(14px);background:#ffffffeb;border-radius:0 0 28px 28px;grid-template-columns:auto 1fr;align-items:center;gap:24px;width:min(1760px,100% - 32px);min-height:78px;margin:0 auto;padding:14px 18px;display:grid;position:sticky;top:0;box-shadow:0 18px 44px #34547b1a}@media (width>=881px){body:has(.home-hero) .site-header,body:has(.location-hero) .site-header,body:has(.gems-hero) .site-header{margin-bottom:-78px}}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{width:44px;height:44px;color:var(--color-pure-white);background:linear-gradient(135deg,#0a69f7,#63c7ff);border-radius:60px;place-items:center;font-weight:700;display:grid;box-shadow:0 10px 24px #0068f938}.brand strong,.brand small{display:block}.brand strong{font-weight:700}.brand small{color:var(--color-slate-gray);font-size:13px;line-height:1.2}.mobile-menu-toggle{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);min-height:46px;color:var(--color-ink-charcoal);cursor:pointer;box-shadow:var(--shadow-subtle);justify-content:center;align-items:center;gap:10px;padding:10px 16px;font-size:15px;font-weight:800;display:none}.mobile-menu-toggle span:first-child{background:currentColor;border-radius:999px;width:20px;height:2px;display:block;position:relative}.mobile-menu-toggle span:first-child:before,.mobile-menu-toggle span:first-child:after{content:"";background:currentColor;border-radius:999px;width:20px;height:2px;transition:transform .16s,top .16s;position:absolute;left:0}.mobile-menu-toggle span:first-child:before{top:-7px}.mobile-menu-toggle span:first-child:after{top:7px}.site-header.is-menu-open .mobile-menu-toggle span:first-child{background:0 0}.site-header.is-menu-open .mobile-menu-toggle span:first-child:before{top:0;transform:rotate(45deg)}.site-header.is-menu-open .mobile-menu-toggle span:first-child:after{top:0;transform:rotate(-45deg)}.site-nav{justify-content:flex-end;gap:2px;display:flex;overflow:visible}.site-nav a,.nav-dropdown-trigger{border-radius:var(--radius-pill);color:var(--color-ink-charcoal);white-space:nowrap;background:0 0;border:0;padding:10px 14px;font-size:15px;font-weight:500;text-decoration:none}.site-nav a:hover,.nav-dropdown-trigger:hover,.nav-dropdown:focus-within .nav-dropdown-trigger,.nav-dropdown:hover .nav-dropdown-trigger{background:var(--color-surface-ivory);color:var(--color-electric-cobalt)}.nav-dropdown{margin-bottom:-10px;padding-bottom:10px;position:relative}.nav-dropdown-trigger{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.nav-dropdown-trigger:after{content:"";border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.nav-dropdown-menu{z-index:50;border:1px solid var(--color-hairline);background:var(--color-pure-white);min-width:210px;box-shadow:var(--shadow-subtle);border-radius:16px;padding:8px;display:none;position:absolute;top:100%;right:0}.nav-dropdown.has-rich-menu .nav-dropdown-menu{width:min(390px,100vw - 32px);padding:10px}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:grid}.nav-dropdown-menu a{border-radius:12px;gap:3px;display:grid}.nav-dropdown-menu a span{font-weight:800}.nav-dropdown-menu a small{color:var(--color-slate-gray);white-space:normal;font-size:13px;font-weight:600;line-height:1.35}.nav-dropdown-menu a:hover small{color:#34547b}.site-footer{border-top:1px solid var(--color-hairline);background:radial-gradient(circle at 8% 0%, #0068f91a, transparent 32%), linear-gradient(180deg, var(--color-canvas-cream), var(--color-pure-white));color:var(--color-slate-gray);margin-top:clamp(72px,8vw,120px);padding:0 clamp(16px,4vw,40px) 32px;font-size:14px}.footer-inner{width:min(1760px,100%);margin:0 auto;padding-top:clamp(36px,5vw,64px)}.footer-brand{border-bottom:1px solid var(--color-hairline);grid-template-columns:minmax(0,.9fr) minmax(280px,.55fr);align-items:end;gap:clamp(24px,5vw,72px);padding-bottom:32px;display:grid}.footer-logo{color:var(--color-ink-charcoal);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.footer-logo strong,.footer-logo small{display:block}.footer-logo strong{font-size:22px}.footer-logo small{color:var(--color-slate-gray);font-size:14px}.footer-brand p{color:#34547b;margin:0;font-size:clamp(18px,2vw,24px);line-height:1.35}.footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:28px 0;display:grid}.footer-links>div{border:1px solid var(--color-hairline);box-shadow:var(--shadow-subtle);background:#ffffffbd;border-radius:24px;padding:20px}.footer-links h2{color:var(--color-ink-charcoal);text-transform:uppercase;margin:0 0 14px;font-size:15px;font-weight:900}.footer-links ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.footer-disclaimer{box-shadow:var(--shadow-subtle);background:#ffffff9e;border:1px solid #d6e4f1d6;border-radius:24px;grid-template-columns:minmax(160px,.22fr) minmax(0,1fr);align-items:start;gap:clamp(14px,3vw,36px);margin-bottom:18px;padding:20px;display:grid}.footer-disclaimer h2{color:var(--color-ink-charcoal);text-transform:uppercase;margin:0;font-size:15px;font-weight:900}.footer-disclaimer p{color:#34547b;max-width:1120px;margin:0;line-height:1.6}.footer-bottom{border-top:1px solid var(--color-hairline);justify-content:space-between;align-items:center;gap:16px;padding-top:18px;display:flex}.footer-bottom p{margin:0}.footer-cookie-button{color:var(--color-ink-charcoal);cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:700}.footer-cookie-button:hover{color:var(--color-electric-cobalt)}.site-footer a{color:var(--color-ink-charcoal);font-weight:700;text-decoration:none}.site-footer a:hover{color:var(--color-electric-cobalt)}.cookie-consent[hidden]{display:none}.cookie-consent{z-index:100;pointer-events:none;justify-content:center;display:flex;position:fixed;bottom:clamp(14px,3vw,32px);left:clamp(14px,3vw,32px);right:clamp(14px,3vw,32px)}.cookie-consent-card{backdrop-filter:blur(18px);pointer-events:auto;background:radial-gradient(circle at 4% 0,#0068f91f,#0000 26%),radial-gradient(circle at 96% 100%,#ffc92833,#0000 26%),#fffffff0;border:1px solid #efefefe6;border-radius:32px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:min(980px,100%);padding:18px;display:grid;box-shadow:0 26px 70px #1217222e}.cookie-consent-icon{background:linear-gradient(135deg, var(--color-electric-cobalt), #63c7ff);width:58px;height:58px;color:var(--color-pure-white);border-radius:60px;place-items:center;font-size:17px;font-weight:900;display:grid;box-shadow:0 16px 32px #0068f93d}.cookie-consent-copy{gap:4px;display:grid}.cookie-consent-kicker{color:var(--color-electric-cobalt);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.cookie-consent h2{color:var(--color-ink-charcoal);margin:0;font-size:clamp(22px,2.2vw,30px);line-height:1.08}.cookie-consent p{color:#536174;margin:0;font-size:15px;line-height:1.45}.cookie-consent-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.cookie-consent-actions .button{border:1px solid var(--color-hairline);cursor:pointer;min-width:max-content}.cookie-consent-actions .button.primary{border-color:var(--color-electric-cobalt)}.cookie-consent-actions .button.ghost{background:var(--color-pure-white)}.home-hero{width:min(1760px,100% - 32px);min-height:680px;color:var(--color-ink-charcoal);isolation:isolate;background:linear-gradient(120deg,#fffffff0 0%,#f7fbffe0 46%,#d2ebffd1 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);align-items:center;gap:clamp(32px,6vw,110px);margin:0 auto;padding:clamp(116px,10vw,156px) clamp(20px,5vw,72px) 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #34547b1c}.home-hero:after{content:"";pointer-events:none;z-index:1;background:radial-gradient(at 18% 65%,#0068f929,#0000 36%),linear-gradient(165deg,#0000 0 34%,#0074dd21 35% 49%,#ffc92829 50% 63%,#0000 64%),linear-gradient(#0000,#faf9f7f0);height:42%;position:absolute;inset:auto -10% -2px}.hero-copy{z-index:2;width:min(760px,100%);padding-bottom:0;position:relative}.eyebrow{color:var(--color-electric-cobalt);letter-spacing:.077em;text-transform:uppercase;font-size:13px;font-weight:600}.home-hero h1,.page-heading h1{color:var(--color-ink-charcoal);letter-spacing:0;margin:12px 0 20px;font-size:clamp(48px,7vw,84px);font-weight:600;line-height:1.06}.home-hero p,.page-heading p,.panel p,.topic-card p,.method-grid p,.cta-band p{color:var(--color-slate-gray)}.home-hero p{color:#34547b;max-width:680px;font-size:18px;line-height:1.5}.home-hero .hero-explainer{color:#34547bdb;max-width:720px;margin-top:14px;font-size:16px;line-height:1.6}.home-hero .eyebrow{color:var(--color-electric-cobalt)}.home-hero h1{color:#244a78}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button,.icon-button,.filter-chips button{border-radius:var(--radius-pill);place-items:center;min-height:48px;font-size:15px;font-weight:500;text-decoration:none;display:inline-grid}.button{padding:12px 24px}.button.primary,.icon-button{background:var(--color-electric-cobalt);color:var(--color-pure-white);border:0}.home-hero .button.primary,.home-section .area-card .button.primary{background:var(--color-sun-gold);color:#233553;font-weight:800;box-shadow:0 12px 24px #e7a90038}.home-hero .button.primary:hover,.home-section .area-card .button.primary:hover{background:var(--color-deep-gold)}.button.primary:hover,.icon-button:hover{background:var(--color-deep-cobalt)}.button.ghost,.button.subtle{border:1px solid var(--color-hairline);background:var(--color-pure-white);color:var(--color-ink-charcoal)}.hero-visual{z-index:2;background:linear-gradient(#244a7800,#244a782e),url(/images/blackpool-data-hero-1200.webp) 55% 52%/cover;border:1px solid #ffffffb8;border-radius:34px;min-height:430px;position:relative;overflow:hidden;box-shadow:0 24px 58px #34547b33}.hero-visual:before,.hero-visual:after{content:"";border-radius:999px;position:absolute}.hero-visual:before{background:#ffc92861;width:240px;height:240px;top:-70px;right:-50px}.hero-visual:after{background:#0068f938;width:360px;height:180px;bottom:-90px;right:8%}.hero-visual-label,.hero-device-card{z-index:2;border-radius:var(--radius-pill);color:#244a78;backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #fff9;position:absolute;box-shadow:0 16px 34px #34547b26}.hero-visual-label{padding:9px 14px;font-size:13px;font-weight:800;top:22px;left:22px}.hero-device-card{border-radius:24px;gap:4px;min-width:220px;padding:18px;display:grid;bottom:24px;right:24px}.hero-device-card span,.hero-device-card small{color:#55708f;font-size:13px;font-weight:700}.hero-device-card strong{color:var(--color-electric-cobalt);font-size:52px;line-height:1}.hero-data-ribbon{z-index:2;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:clamp(16px,4vw,44px);display:grid;position:relative}.hero-data-ribbon a{min-height:132px;color:var(--color-ink-charcoal);backdrop-filter:blur(10px);background:#ffffffdb;border:1px solid #d6e4f1db;border-radius:16px;padding:18px;text-decoration:none;box-shadow:0 14px 28px #34547b1a}.hero-data-ribbon a:hover{border-color:var(--color-powder-blue);transform:translateY(-2px)}.hero-data-ribbon span,.hero-data-ribbon small{color:var(--color-slate-gray);font-size:13px;font-weight:600;display:block}.hero-data-ribbon strong{color:var(--color-electric-cobalt);margin:10px 0 4px;font-size:clamp(34px,4vw,48px);line-height:1;display:block}.interface-preview,.panel,.topic-card,.method-grid article,.metric-card{border:1px solid var(--color-hairline);border-radius:var(--radius-card);background:var(--color-pure-white);box-shadow:var(--shadow-subtle)}.interface-preview{align-self:center;padding:24px}.preview-header,.preview-body,.toolbar,.category-row,.outcome-list span{justify-content:space-between;align-items:center;gap:16px;display:flex}.preview-header span,.preview-label,.metric-card span,.metric-card small,dt,th{color:var(--color-slate-gray);font-size:14px;font-weight:500}.preview-header strong{background:var(--color-lavender-mist);color:var(--color-vivid-violet);border-radius:8px;padding:6px 10px;font-size:13px}.preview-tabs,.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.preview-tabs{margin:24px 0}.preview-tabs span,.filter-chips button{border-radius:var(--radius-pill);color:var(--color-ink-charcoal);background:0 0;border:0;font-weight:500}.preview-tabs span{padding:8px 16px}.preview-tabs .is-active,.filter-chips .is-active,.filter-chips button:first-child{background:var(--color-surface-ivory);box-shadow:var(--shadow-subtle)}.filter-chips button{cursor:pointer;min-height:40px;padding:8px 16px}.preview-body{align-items:stretch}.preview-body>div{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;flex:1;padding:18px}.preview-body strong,.topic-card strong,.big-number,.metric-card strong{color:var(--color-electric-cobalt);font-weight:600;line-height:1;display:block}.preview-body strong{margin:10px 0 6px;font-size:48px}.preview-body small,.topic-card small{color:var(--color-steel-gray);font-size:13px}.preview-note,.note{background:var(--color-lavender-mist);color:var(--color-slate-gray);border-radius:16px;margin-top:18px;padding:14px;font-size:14px}.home-section,.page-shell{width:min(1760px,100% - 32px);margin:0 auto}.home-section{padding:40px 0}.home-intro-grid{grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);align-items:stretch;gap:16px;margin-top:24px;display:grid}.home-live-panel{border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:24px;padding:clamp(24px,4vw,48px)}.home-live-panel h2{max-width:680px;margin:10px 0 16px;font-size:clamp(40px,5vw,64px);line-height:1.06}.home-photo-stack{grid-template-columns:.92fr 1.08fr;gap:12px;min-height:430px;display:grid}.home-photo-stack div{border:1px solid var(--color-hairline);min-height:100%;box-shadow:var(--shadow-subtle);background-image:url(/images/blackpool-data-hero-1200.webp);background-size:cover;border-radius:24px;overflow:hidden}.home-photo-stack div:first-child{background-position:18% 58%}.home-photo-stack div:last-child{background-position:78% 46%}.section-heading{text-align:center;grid-template-columns:minmax(0,1fr) minmax(0,960px) minmax(0,1fr);justify-content:center;align-items:center;gap:18px;width:min(1180px,100%);max-width:none;margin:0 auto 28px;display:grid}.section-heading:before,.section-heading:after{content:"";background:linear-gradient(90deg,#0000,#34547b38);height:1px}.section-heading:after{background:linear-gradient(90deg,#34547b38,#0000)}.section-heading .eyebrow,.section-heading h2{grid-column:2}.section-heading h2,.split-section h2,.cta-band h2{text-wrap:balance;margin:10px 0 0;font-size:clamp(40px,5vw,57px);font-weight:600;line-height:1.09}.topic-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;display:grid}.area-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.area-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);border-radius:24px;grid-template-columns:minmax(220px,.86fr) minmax(0,1fr);min-height:360px;display:grid;overflow:hidden;box-shadow:0 18px 38px #34547b1a}.area-card:first-child{grid-column:1/-1;grid-template-columns:minmax(360px,1.14fr) minmax(0,.86fr);min-height:420px}.area-card-image{background-image:linear-gradient(#1217220a,#1217226b),url(/images/blackpool-data-hero-1200.webp);background-position:50%;background-size:cover;min-height:100%;text-decoration:none;transition:transform .22s;display:block;position:relative;overflow:hidden}.area-card:hover .area-card-image{transform:scale(1.015)}.area-photo-blackpool{background-image:linear-gradient(#1217220a,#12172270),url(/images/blackpool-data-hero-1200.webp);background-position:45% 54%}.area-photo-fleetwood{background-image:linear-gradient(#1217220a,#1217226b),url(/images/fleetwood-hero-20260716-optimized.webp);background-position:50%}.area-photo-cleveleys{background-image:linear-gradient(#1217220a,#1217226b),url(/images/cleveleys-hero-20260716-optimized.webp);background-position:50%}.area-photo-st-annes{background-image:linear-gradient(#1217220a,#1217226b),url(/images/st-annes-hero-20260716-optimized.webp);background-position:50%}.area-photo-lytham{background-image:linear-gradient(#1217220a,#1217226b),url(/images/lytham-hero-20260716-optimized.webp);background-position:50%}.area-card-copy{flex-direction:column;align-items:start;padding:clamp(24px,3vw,38px);display:flex}.area-card-character{color:var(--color-electric-cobalt);letter-spacing:.077em;text-transform:uppercase;margin:0 0 14px;font-size:13px;font-weight:800}.area-card h3{margin:0 0 14px;font-size:clamp(32px,4vw,54px);line-height:1.05}.area-card p:not(.area-card-character){color:var(--color-slate-gray);margin:0;font-size:16px;line-height:1.55}.area-card .button{margin-top:auto}.topic-showcase{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.topic-feature-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);border-radius:24px;align-content:start;gap:12px;min-height:520px;padding:16px;text-decoration:none;transition:border-color .16s,transform .16s;display:grid;box-shadow:0 18px 38px #34547b17}.topic-feature-card:hover{border-color:var(--color-powder-blue);transform:translateY(-2px)}.topic-photo{background-image:linear-gradient(#12172200,#12172238),url(/images/blackpool-data-hero-1200.webp);background-size:cover;border-radius:18px;min-height:248px;display:block;overflow:hidden}.topic-photo-crime{background-position:50% 52%}.topic-photo-schools{background-position:72% 48%}.topic-photo-housing{background-position:42% 64%}.topic-photo-environment{background-position:15% 56%}.topic-photo-food-hygiene{background-position:63% 48%}.topic-kicker{color:var(--color-electric-cobalt);letter-spacing:.077em;text-transform:uppercase;font-size:13px;font-weight:700}.topic-feature-card h3{margin:0;font-size:28px;line-height:1.12}.topic-feature-card p{color:var(--color-slate-gray);margin:0}.topic-feature-card small{color:var(--color-steel-gray);align-self:end;font-size:13px;font-weight:600}.split-section{grid-template-columns:.8fr 1.2fr;align-items:start;gap:32px;display:grid}.method-grid{gap:12px;display:grid}.method-grid article{padding:24px}.method-grid span{color:var(--color-electric-cobalt);font-weight:600}.method-grid h3,.panel h2{margin:8px 0;font-size:24px;line-height:1.3}.home-gems-strip{background:radial-gradient(circle at 10% 20%, #ffb00038, transparent 28%), radial-gradient(circle at 92% 80%, #0068f924, transparent 34%), linear-gradient(135deg, var(--color-pure-white), #f4f0ff 100%);border:1px solid #d6e4f1db;border-radius:32px;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(20px,4vw,56px);padding:clamp(28px,5vw,56px);display:grid;box-shadow:0 18px 42px #34547b14}.home-gems-copy h2{text-wrap:balance;max-width:640px;margin:10px 0 16px;font-size:clamp(42px,6vw,84px);line-height:.98}.home-gems-copy p{color:#34547b;max-width:600px;margin:0 0 24px;font-size:clamp(17px,2vw,21px)}.home-gems-carousel{scroll-snap-type:x mandatory;scrollbar-color:var(--color-electric-cobalt) #d6e4f1b3;grid-auto-columns:minmax(260px,330px);grid-auto-flow:column;gap:14px;padding:6px 6px 18px;display:grid;overflow-x:auto}.home-gem-slide{background:var(--gem-colour,var(--color-electric-cobalt));min-height:430px;color:var(--color-pure-white);scroll-snap-align:start;border:1px solid #ffffffb3;border-radius:28px;text-decoration:none;transition:transform .16s,box-shadow .16s;position:relative;overflow:hidden;box-shadow:0 18px 38px #34547b2e}.home-gem-slide:hover{transform:translateY(-3px);box-shadow:0 24px 46px #34547b38}.home-gem-image,.home-gem-image img{width:100%;height:100%;display:block}.home-gem-image{position:absolute;inset:0}.home-gem-image img{object-fit:cover}.home-gem-slide:after{content:"";background:linear-gradient(#12172200 30%,#121722c7 100%),linear-gradient(135deg,#0068f91f,#ffb0001a);position:absolute;inset:0}.home-gem-body{z-index:2;gap:8px;display:grid;position:absolute;bottom:18px;left:18px;right:18px}.home-gem-body small,.home-gem-body em{width:max-content;max-width:100%;color:var(--color-ink-charcoal);text-transform:uppercase;background:#ffffffe0;border-radius:999px;padding:7px 10px;font-size:12px;font-style:normal;font-weight:900}.home-gem-body strong{color:var(--color-pure-white);text-shadow:0 2px 16px #00000059;font-size:34px;line-height:.98}.home-gem-body em{background:var(--color-electric-cobalt);color:var(--color-pure-white)}.home-events-block{background:radial-gradient(circle at 12% 16%,#0068f924,#0000 30%),radial-gradient(circle at 94% 74%,#ffc9283d,#0000 32%),linear-gradient(135deg,#ffffffeb,#f4f0ffc2);border:1px solid #d6e4f1db;border-radius:32px;padding:clamp(26px,4vw,44px);box-shadow:0 18px 42px #34547b14}.home-events-header{justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px;display:flex}.home-events-header h2{text-wrap:balance;max-width:760px;margin:10px 0;font-size:clamp(38px,5vw,68px);line-height:1}.home-events-header p{color:#34547b;max-width:760px;margin:0;font-size:clamp(16px,1.6vw,19px)}.home-events-header .button{flex:none}.home-events-carousel{--event-gap:14px;grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--event-gap) * 4)) / 5);gap:var(--event-gap);scroll-snap-type:x mandatory;scrollbar-color:var(--color-electric-cobalt) #d6e4f1b3;padding:4px 4px 18px;display:grid;overflow-x:auto}.home-event-card{min-height:315px;color:var(--color-ink-charcoal);scroll-snap-align:start;box-shadow:var(--shadow-subtle);background:#ffffffeb;border:1px solid #efefefe6;border-radius:22px;grid-template-rows:auto auto 1fr auto auto;gap:9px;padding:10px 10px 14px;text-decoration:none;transition:transform .16s,box-shadow .16s;display:grid;overflow:hidden}.home-event-card:hover{transform:translateY(-3px);box-shadow:0 20px 42px #34547b29}.home-event-card img{aspect-ratio:1.28;object-fit:cover;background:var(--color-powder-blue);border-radius:16px;width:100%;display:block}.home-event-card span{color:var(--color-electric-cobalt);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900;line-height:1.25}.home-event-card strong{color:var(--color-ink-charcoal);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:clamp(18px,1.4vw,22px);line-height:1.05;display:-webkit-box;overflow:hidden}.home-event-card small,.home-event-card em{color:var(--color-slate-gray);font-size:13px;font-style:normal;font-weight:800}.home-event-card em{background:var(--color-lavender-mist);width:max-content;max-width:100%;color:var(--color-vivid-violet);border-radius:999px;padding:6px 9px;font-size:12px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:100%;margin:40px auto;display:grid}.metric-card{min-height:152px;padding:24px}.metric-card strong{margin:16px 0 8px;font-size:48px}.cta-band{text-align:center;background:linear-gradient(135deg, var(--color-canvas-cream) 0%, #d5ecff 64%, var(--color-electric-cobalt) 100%);margin-top:40px;padding:72px 16px}.weather-band{background:linear-gradient(135deg, var(--color-canvas-cream) 0%, #d5ecff 64%, var(--color-electric-cobalt) 100%);margin:40px 0;padding:40px 16px}.weather-band-inner{grid-template-columns:minmax(0,.9fr) minmax(280px,.72fr);gap:16px;max-width:1200px;margin:0 auto;display:grid}.weather-copy{min-height:220px;box-shadow:var(--shadow-subtle);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #ffffffb3;border-radius:24px;align-content:center;padding:clamp(22px,3vw,34px);display:grid}.weather-copy h2{max-width:680px;margin:8px 0 12px;font-size:clamp(36px,5vw,56px);line-height:1.06}.weather-copy p{max-width:640px;color:var(--color-slate-gray);margin:0 0 12px;font-size:16px}.weather-copy small{color:var(--color-slate-gray);font-weight:700}.weather-current-card,.weather-metrics article,.weather-day-card{box-shadow:var(--shadow-subtle);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #ffffffbd}.weather-current-card{border-radius:24px;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:160px;padding:20px;display:grid}.weather-icon{background:linear-gradient(135deg, var(--color-pure-white), var(--color-lavender-mist));border-radius:22px;place-items:center;width:72px;height:72px;font-size:38px;display:grid}.weather-current-card span,.weather-metrics span,.weather-day-card span{color:var(--color-slate-gray);font-size:14px;font-weight:700}.weather-current-card strong{color:var(--color-ink-charcoal);margin:6px 0;font-size:clamp(40px,5vw,56px);line-height:1;display:block}.weather-current-card p{color:var(--color-slate-gray);margin:0}.weather-metrics{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.weather-metrics article{border-radius:18px;min-height:104px;padding:16px}.weather-metrics strong{color:var(--color-electric-cobalt);margin-top:12px;font-size:clamp(24px,3vw,34px);line-height:1;display:block}.weather-days{grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.weather-day-card{border-radius:18px;gap:7px;min-height:134px;padding:14px;display:grid}.weather-day-card i{font-size:28px;font-style:normal}.weather-day-card strong{color:var(--color-ink-charcoal);font-size:19px}.weather-day-card small{color:var(--color-slate-gray);font-weight:700;line-height:1.35}.cta-band h2,.cta-band p{max-width:760px;margin-left:auto;margin-right:auto}.source-badge{color:var(--color-slate-gray);flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 0;font-size:13px;font-weight:500;display:inline-flex}.source-badge span,.source-badge time,.status-pill{background:var(--color-surface-ivory);border-radius:100px;padding:6px 10px}.ofsted-badge{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);width:max-content;max-width:100%;color:var(--color-slate-gray);border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-weight:900;line-height:1.2;display:inline-flex}.ofsted-details{width:max-content;max-width:100%;position:relative}.ofsted-details summary{cursor:pointer;list-style:none}.ofsted-details summary::-webkit-details-marker{display:none}.ofsted-details summary:after{content:"i";width:18px;height:18px;color:inherit;background:#fffc;border-radius:999px;place-items:center;font-size:12px;font-weight:900;display:inline-grid}.ofsted-details-card{z-index:20;background:var(--color-pure-white);width:min(360px,86vw);color:var(--color-ink-charcoal);border:1px solid #d6e4f1e6;border-radius:18px;margin-top:10px;padding:16px;position:relative;box-shadow:0 24px 60px #1217222e}.ofsted-details-card strong{margin-bottom:10px;font-size:15px;display:block}.ofsted-details-card dl{gap:8px;margin:0;display:grid}.ofsted-details-card dl div{border-bottom:1px solid var(--color-hairline);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:8px;display:grid}.ofsted-details-card dl div:last-child{border-bottom:0;padding-bottom:0}.ofsted-details-card dt,.ofsted-details-card dd{margin:0}.ofsted-details-card dt{color:var(--color-slate-gray);font-size:13px;font-weight:700}.ofsted-details-card dd{color:var(--color-ink-charcoal);text-align:right;font-size:13px;font-weight:900}.ofsted-badge.is-outstanding,.ofsted-badge.is-good{color:#046645;background:#04664517;border-color:#04664533}.ofsted-badge.is-ri,.ofsted-badge.is-new-framework{color:#7b5a00;background:#ffc92824;border-color:#ffc92859}.ofsted-badge.is-inadequate{color:#bf3b28;background:#e24a331c;border-color:#e24a3340}.ofsted-badge.is-unmatched,.ofsted-badge.is-neutral{background:#777c8614;border-color:#777c8633}.page-shell{width:min(1760px,100% - 32px);margin:0 auto;padding:56px 0 80px}.page-heading{isolation:isolate;background:linear-gradient(120deg,#fffffff0 0%,#f7fbffe0 48%,#d2ebffc7 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:24px;padding:clamp(42px,6vw,72px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 58px #34547b1a}.page-heading:after{z-index:-1;content:"";pointer-events:none;background:radial-gradient(at 18% 65%,#0068f929,#0000 36%),linear-gradient(165deg,#0000 0 34%,#0074dd21 35% 49%,#ffc92829 50% 63%,#0000 64%),linear-gradient(#0000,#faf9f7f0);height:46%;position:absolute;inset:auto -10% -2px}.page-heading h1{color:#244a78;max-width:820px;font-size:clamp(44px,5.6vw,70px)}.page-heading p{color:#34547b;max-width:760px;font-size:18px}.content-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px;margin:16px 0;display:grid}.content-grid-wide{grid-template-columns:minmax(0,1.65fr) minmax(300px,.55fr)}.map-feature-layout{grid-template-columns:minmax(280px,.4fr) minmax(0,.6fr);align-items:stretch;gap:18px;margin:16px 0 32px;display:grid}.not-found-page{padding-top:24px}.not-found-hero{background:linear-gradient(105deg,#ffffffeb 0%,#f7fbffdb 48%,#d6e4f194 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;align-items:center;min-height:560px;position:relative;overflow:hidden;box-shadow:0 24px 68px #34547b29}.not-found-hero:after{content:"";pointer-events:none;background:radial-gradient(circle at 72% 12%,#ffc92857,#0000 34%),linear-gradient(165deg,#0000 0 36%,#0068f924 37% 50%,#ffc9282b 51% 65%,#0000 66%);height:34%;position:absolute;inset:auto -8% -2px}.not-found-hero>div,.not-found-code{z-index:1;position:relative}.not-found-code{color:var(--color-electric-cobalt);letter-spacing:0;flex-wrap:wrap;justify-content:end;align-items:center;gap:clamp(8px,1vw,14px);font-size:clamp(92px,11vw,178px);font-weight:800;line-height:.82;display:flex}.not-found-code span{aspect-ratio:1;width:clamp(72px,8vw,128px);box-shadow:var(--shadow-subtle);background:#ffffffc7;border:1px solid #d6e4f1d6;border-radius:30px;place-items:center;display:grid}.not-found-code span:nth-child(2){color:#233553;transform:translateY(18px)rotate(4deg)}.not-found-code small{color:#34547b;text-align:right;flex-basis:100%;max-width:360px;margin-left:auto;font-size:clamp(16px,1.5vw,22px);font-weight:800;line-height:1.25}.not-found-panel{margin-top:16px}.not-found-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.not-found-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);min-height:180px;color:var(--color-ink-charcoal);box-shadow:var(--shadow-subtle);border-radius:18px;align-content:start;gap:10px;padding:22px;text-decoration:none;display:grid}.not-found-card:hover{border-color:var(--color-powder-blue);transform:translateY(-2px)}.not-found-card h3{margin:0;font-size:22px;line-height:1.15}.not-found-card p{color:var(--color-slate-gray);margin:0}.map-feature-layout>*{min-width:0}.map-feature-copy{align-content:start;gap:14px;padding:clamp(22px,3vw,34px);display:grid}.map-feature-copy h2{margin:0;font-size:clamp(30px,3.2vw,48px);line-height:1}.map-feature-copy p{color:var(--color-slate-gray);margin:0;font-size:17px}.map-feature-notes{gap:10px;margin-top:6px;display:grid}.map-feature-notes span{border:1px solid var(--color-hairline);background:var(--color-pure-white);color:var(--color-slate-gray);border-radius:16px;padding:12px 14px;font-weight:700;line-height:1.35;display:block}.map-feature-notes strong{color:var(--color-electric-cobalt)}.map-feature-summary{gap:12px;margin-top:4px;display:grid}.map-feature-summary article{border:1px solid var(--color-hairline);background:linear-gradient(135deg, #ffffffeb, var(--color-surface-ivory));border-radius:18px;padding:14px}.map-feature-summary article>span{color:var(--color-slate-gray);font-size:13px;font-weight:800;display:block}.map-feature-summary article>strong{color:var(--color-electric-cobalt);margin-top:6px;font-size:24px;line-height:1;display:block}.map-feature-summary p{margin-top:8px;font-size:14px}.crime-map-layout{gap:16px;margin:16px 0 32px;display:grid}.crime-map-layout.map-feature-layout{grid-template-columns:minmax(300px,.35fr) minmax(0,.65fr)}.crime-map-panel{padding:16px}.crime-summary-strip{grid-template-columns:minmax(220px,.9fr) minmax(220px,.9fr) minmax(320px,1.2fr);gap:16px;display:grid}.crime-summary-strip .panel{min-height:100%}.crime-summary-strip-highlight{border:1px solid var(--color-hairline);background:linear-gradient(135deg, var(--color-canvas-cream) 0%, #d5ecff 58%, var(--color-electric-cobalt) 100%);border-radius:24px;padding:16px}.crime-summary-strip-highlight .panel{backdrop-filter:blur(10px);background:#ffffffc7;border-color:#ffffffb8}.crime-summary-strip h2,.crime-summary-strip .big-number{margin-top:8px}.crime-outcomes-card{align-content:start;gap:8px;display:grid}.panel{padding:24px}.panel-large{padding:16px}.mock-map{border:1px solid var(--color-hairline);isolation:isolate;background:radial-gradient(circle at 18% 24%,#0068f91f,#0000 28%),linear-gradient(110deg,#d6e4f1 0 34%,#fbfaf7 34% 100%);border-radius:16px;min-height:520px;position:relative;overflow:hidden}.map-compact{min-height:480px}.map-grid{background-color:#0000;background-image:linear-gradient(90deg,#12172212 1px,#0000 1px),linear-gradient(#12172212 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:68px 68px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:-12%;transform:rotate(-9deg)}.coast{clip-path:polygon(0 0,74% 0,58% 18%,76% 35%,48% 58%,70% 100%,0 100%);background:linear-gradient(90deg,#d6e4f1,#fff);width:36%;position:absolute;inset:-8% auto -8% -10%}.promenade,.route{background:#12172224;border-radius:100px;position:absolute}.promenade{background:var(--color-pure-white);width:10px;height:96%;top:2%;left:28%;transform:rotate(5deg)}.route-one{width:48%;height:7px;top:22%;left:34%;transform:rotate(-16deg)}.route-two{width:42%;height:7px;top:58%;left:42%;transform:rotate(18deg)}.ward{border:1px solid var(--color-hairline);min-width:124px;min-height:76px;color:var(--color-ink-charcoal);text-align:center;box-shadow:var(--shadow-subtle);background:#ffffffc2;border-radius:16px;place-items:center;font-size:14px;font-weight:600;text-decoration:none;display:grid;position:absolute}.ward-north{top:14%;left:38%}.ward-central{top:34%;left:52%}.ward-active{background:var(--color-electric-cobalt);color:var(--color-pure-white);top:47%;left:41%}.ward-south{top:64%;left:60%}.map-pin{border:3px solid var(--color-pure-white);background:var(--color-electric-cobalt);width:18px;height:18px;box-shadow:var(--shadow-lg);border-radius:50%;position:absolute}.map-crime .map-pin{width:54px;height:54px;box-shadow:none;background:radial-gradient(circle,#0068f98c,#0068f912 72%);border:0}.map-schools .map-pin{background:var(--color-forest)}.map-housing .map-pin{background:var(--color-vivid-violet)}.map-environment .map-pin{background:var(--color-cerulean)}.map-population .map-pin{background:var(--color-electric-cobalt)}.pin-one{top:38%;left:47%}.pin-two{top:45%;left:59%}.pin-three{top:66%;left:66%}.pin-four{top:62%;left:36%}.map-scale{background:var(--color-pure-white);color:var(--color-slate-gray);border-radius:100px;padding:6px 10px;font-size:13px;font-weight:600;position:absolute;bottom:16px;right:16px}.mini-metrics{grid-template-columns:1fr 1fr;gap:12px;margin:18px 0;display:grid}.fact-list,.source-list,.outcome-list,.category-list{gap:10px;margin:16px 0 0;display:grid}.fact-list div,.source-list div{border-top:1px solid var(--color-hairline);grid-template-columns:128px 1fr;gap:12px;padding-top:12px;display:grid}dd{margin:0;font-weight:600}.bar-chart{align-items:end;gap:8px;height:124px;margin:18px 0;display:flex}.bar-chart.tall{height:176px}.bar-chart span{background:linear-gradient(180deg, var(--color-electric-cobalt), var(--color-powder-blue));border-radius:100px 100px 0 0;flex:1;min-width:12px}.text-link{color:var(--color-electric-cobalt);font-weight:500;text-decoration:none}.text-link:hover{text-decoration:underline}.big-number{margin:18px 0 10px;font-size:clamp(44px,5vw,64px)}.compact-heading{text-align:left;width:auto;max-width:880px;margin:0 0 20px;display:block}.section-heading.compact-heading:before,.section-heading.compact-heading:after{display:none}.section-heading.compact-heading .eyebrow,.section-heading.compact-heading h2{grid-column:auto}.compact-heading h2{margin:8px 0;font-size:clamp(32px,4vw,48px);line-height:1.08}.compact-heading p{max-width:760px;color:var(--color-slate-gray);margin:0}.housing-page .page-heading{background:linear-gradient(115deg,#fffffff0 0%,#f7fbffd1 56%,#d6ecffa8 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1db;border-radius:28px;grid-template-columns:1fr;gap:18px;margin-bottom:18px;padding:clamp(28px,5vw,56px);box-shadow:0 24px 58px #34547b1a}.housing-page .page-heading h1{color:#244a78;max-width:760px;margin-bottom:16px;font-size:clamp(46px,5.4vw,72px)}.housing-page .page-heading p{color:#34547b;max-width:720px}.housing-page .page-heading .source-badge{justify-self:start}.housing-hero-panel{border:1px solid var(--color-hairline);background:linear-gradient(135deg,#ffffffe6 0%,#dff0ff 64%,#0068f933 100%);border-radius:24px;grid-template-columns:1fr;gap:14px;margin-bottom:18px;padding:clamp(24px,4vw,40px);display:grid;box-shadow:0 18px 42px #34547b1a}.housing-stat-main,.housing-stat-grid article{box-shadow:var(--shadow-subtle);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #ffffffb3;border-radius:16px}.housing-stat-main{grid-template-columns:minmax(0,.85fr) minmax(260px,.45fr);align-items:end;gap:18px;padding:clamp(24px,4vw,40px);display:grid}.housing-stat-main .big-number{grid-row:2;margin:0;font-size:clamp(46px,5vw,64px)}.housing-stat-main .eyebrow{grid-column:1/-1}.housing-stat-main p:not(.big-number){max-width:680px;color:var(--color-slate-gray);grid-area:2/2;margin:0;font-size:18px}.housing-stat-main p strong{color:var(--color-ink-charcoal)}.housing-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.housing-stat-grid article{align-content:start;min-height:168px;padding:22px;display:grid}.housing-stat-grid span,.housing-card-grid span{color:var(--color-slate-gray);font-size:14px;font-weight:600}.housing-stat-grid strong,.housing-card-grid strong{color:var(--color-electric-cobalt);margin:14px 0 8px;font-size:clamp(28px,3vw,40px);line-height:1;display:block}.housing-stat-grid p,.housing-card-grid p{color:var(--color-slate-gray);margin:0;font-size:14px}.housing-map-panel{padding:clamp(18px,3vw,28px)}.housing-map{border:1px solid var(--color-hairline);background:var(--color-powder-blue);border-radius:16px;min-height:min(680px,100vh - 150px);position:relative;overflow:hidden}.housing-map-canvas{width:100%;min-height:min(680px,100vh - 150px)}.housing-map-status,.housing-map-legend{z-index:2;border:1px solid var(--color-hairline);box-shadow:var(--shadow-subtle);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:100px;position:absolute}.housing-map-status{max-width:min(620px,100% - 32px);color:var(--color-slate-gray);padding:10px 14px;font-weight:600;line-height:1.35;bottom:16px;left:16px}.housing-map-status strong{color:var(--color-ink-charcoal)}.housing-map-legend{color:var(--color-slate-gray);border-radius:18px;flex-wrap:wrap;gap:8px 12px;padding:8px 12px;font-size:13px;font-weight:700;display:flex;top:16px;left:16px}.housing-map-legend span{align-items:center;gap:8px;display:inline-flex}.housing-map-legend i{background:var(--color-electric-cobalt);border-radius:50%;width:12px;height:12px}.housing-map-legend .price-low{background:#00876c}.housing-map-legend .price-mid{background:var(--color-electric-cobalt)}.housing-map-legend .price-high{background:#e85d2a}.housing-map-legend .price-size{width:18px;height:18px;box-shadow:inset 0 0 0 5px var(--color-electric-cobalt);background:#0068f92e}.housing-popup{min-width:min(320px,100vw - 72px);max-width:360px}.housing-popup header{gap:4px;margin-bottom:12px;display:grid}.housing-popup header strong{color:var(--color-ink-charcoal);font-size:20px}.housing-popup header span{color:var(--color-electric-cobalt);font-weight:700}.housing-popup p{color:var(--color-slate-gray);margin:12px 0 0;font-size:14px;line-height:1.45}.housing-popup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.housing-popup-grid div,.housing-popup-types span{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:12px;gap:3px;padding:10px;display:grid}.housing-popup-grid span,.housing-popup-types span{color:var(--color-slate-gray);font-size:12px;font-weight:700}.housing-popup-grid strong,.housing-popup-types strong{color:var(--color-ink-charcoal);font-size:14px}.housing-popup-types{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.housing-popup-types span{justify-content:space-between;align-items:center;min-width:118px;display:inline-flex}.housing-popup-note{border-top:1px solid var(--color-hairline);padding-top:10px}.housing-popup dl{gap:10px;margin:12px 0 0;display:grid}.housing-popup dl div{border-top:1px solid var(--color-hairline);gap:2px;padding-top:10px;display:grid}.housing-popup dt{color:var(--color-slate-gray);font-size:12px;font-weight:700}.housing-popup dd{color:var(--color-ink-charcoal);margin:0;font-size:14px}.housing-data-note{color:var(--color-slate-gray);margin:14px 0 0;font-size:14px}.housing-analysis-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}.housing-price-chart{border:1px solid var(--color-hairline);background:linear-gradient(var(--color-hairline) 1px, transparent 1px) 0 20% / 100% 25%, var(--color-surface-ivory);border-radius:16px;grid-template-columns:repeat(18,minmax(24px,1fr));gap:8px;min-height:300px;margin-top:22px;padding:18px 12px 8px;display:grid}.housing-price-bar{grid-template-rows:1fr auto;align-items:end;gap:8px;min-height:254px;display:grid}.housing-price-bar span{background:linear-gradient(180deg, var(--color-electric-cobalt), #57a5ff);border-radius:100px 100px 8px 8px;min-height:32px;display:block}.housing-price-bar small{color:var(--color-slate-gray);writing-mode:vertical-rl;font-size:12px;font-weight:700;transform:rotate(180deg)}.housing-sales-chart{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;align-items:end;gap:7px;height:210px;margin:24px 0 18px;padding:16px 10px 0;display:flex}.housing-sales-chart span{background:var(--color-forest);border-radius:100px 100px 0 0;flex:1;min-width:8px}.housing-sales-chart .is-pending{background:repeating-linear-gradient(45deg, var(--color-steel-gray), var(--color-steel-gray) 4px, var(--color-hairline) 4px, var(--color-hairline) 8px)}.housing-benchmark-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.housing-benchmark-list div{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;padding:14px}.housing-benchmark-list span{color:var(--color-slate-gray);font-size:13px;font-weight:700;display:block}.housing-benchmark-list strong{color:var(--color-electric-cobalt);margin-top:8px;font-size:24px;display:block}.housing-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.housing-card-grid article{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;min-height:150px;padding:18px}.outcome-list span,.category-row{background:var(--color-surface-ivory);border-radius:16px;padding:14px}.category-row:before{content:"";background:var(--color-electric-cobalt);border-radius:50%;flex:none;width:12px;height:12px}.category-row span{flex:1}.dot-coral:before,.dot-amber:before,.dot-sea:before{background:var(--color-electric-cobalt)}.dot-green:before{background:var(--color-forest)}.table-panel{margin-top:16px}.real-crime-map{gap:16px;display:grid}.real-map-controls{gap:12px;display:grid}.map-search{gap:6px;max-width:640px;display:grid}.map-search label{color:var(--color-slate-gray);font-size:13px;font-weight:600}.map-search div{gap:8px;display:flex}.map-search input{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);min-width:0;min-height:48px;color:var(--color-ink-charcoal);flex:1;padding:10px 16px}.water-map{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;margin-top:16px;position:relative;overflow:hidden}.water-timeline{border-bottom:1px solid var(--color-hairline);background:linear-gradient(135deg,#f7fbff 0%,#d9ecff 58%,#0068f92e 100%);grid-template-columns:minmax(220px,1fr) auto;gap:10px 18px;padding:16px;display:grid}.water-timeline label,.water-timeline strong{display:block}.water-timeline label{color:var(--color-ink-charcoal);margin-top:4px;font-size:18px;font-weight:800}.water-timeline-note{max-width:52ch;color:var(--color-slate-gray);margin:6px 0 0;font-size:14px;line-height:1.45}.water-timeline strong{border-radius:var(--radius-pill);background:var(--color-pure-white);color:var(--color-electric-cobalt);box-shadow:var(--shadow-subtle);align-self:center;padding:8px 14px;font-size:24px;line-height:1}.water-timeline input{width:100%;accent-color:var(--color-electric-cobalt);grid-column:1/-1}.timeline-endpoints{color:var(--color-slate-gray);grid-column:1/-1;justify-content:space-between;font-size:12px;font-weight:700;display:flex}.water-map-canvas{min-height:clamp(560px,62vh,780px)}.water-map-status,.water-map-legend{z-index:2;border:1px solid var(--color-hairline);box-shadow:var(--shadow-subtle);background:#ffffffeb;position:absolute}.water-map-status{color:var(--color-slate-gray);border-radius:100px;padding:8px 12px;font-size:13px;font-weight:600;bottom:16px;left:16px}.water-map-status strong{color:var(--color-ink-charcoal)}.water-map-legend{border-radius:16px;flex-wrap:wrap;gap:8px;max-width:min(440px,100% - 32px);padding:8px;display:flex;bottom:16px;right:16px}.water-map-legend span{color:var(--color-slate-gray);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.water-map-legend i,.water-class:before{content:"";border-radius:50%;flex:none;width:10px;height:10px}.water-map-legend .is-excellent,.water-class-excellent:before{background:var(--color-electric-cobalt)}.water-map-legend .is-good,.water-class-good:before{background:var(--color-forest)}.water-map-legend .is-sufficient,.water-class-sufficient:before{background:#f2b705}.water-map-legend .is-poor,.water-class-poor:before{background:#e24a33}.water-summary-panel h2{margin-top:8px}.water-summary-panel .mini-metrics div{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;padding:14px}.water-summary-panel .mini-metrics span,.water-summary-panel .mini-metrics strong{display:block}.water-summary-panel .mini-metrics span{color:var(--color-slate-gray);font-size:13px;font-weight:600}.water-summary-panel .mini-metrics strong{color:var(--color-electric-cobalt);margin-top:6px;font-size:28px;line-height:1}.water-class{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);color:var(--color-ink-charcoal);border-radius:100px;align-items:center;gap:7px;padding:6px 10px;font-size:13px;font-weight:700;display:inline-flex}.water-popup{gap:12px;display:grid}.water-popup header{gap:3px;display:grid}.water-popup header strong{font-size:18px}.water-popup header span{color:var(--color-slate-gray)}.water-popup dl{gap:8px;margin:0;display:grid}.water-popup dl div{border-top:1px solid var(--color-hairline);grid-template-columns:118px 1fr;gap:8px;padding-top:8px;display:grid}.water-popup dt{color:var(--color-slate-gray);font-size:12px}.water-popup dd{margin:0;font-weight:700}.water-trends-panel{gap:24px;display:grid}.section-heading-row{justify-content:space-between;align-items:end;gap:18px;display:flex}.section-heading-row h2{margin:8px 0}.section-heading-row p{max-width:720px;color:var(--color-slate-gray);margin:0}.water-trend-legend{flex-wrap:wrap;gap:8px;display:flex}.water-trend-legend span{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);color:var(--color-slate-gray);align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.water-trend-legend i{border-radius:50%;width:10px;height:10px}.water-trend-legend .is-ecoli{background:var(--color-electric-cobalt)}.water-trend-legend .is-enterococci{background:var(--color-signal-coral)}.water-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.water-trend-card{border:1px solid var(--color-hairline);background:linear-gradient(180deg, var(--color-pure-white), var(--color-surface-ivory));border-radius:16px;gap:16px;min-width:0;padding:16px;display:grid}.water-trend-card header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.water-trend-card h3{margin:0;font-size:18px}.water-trend-card header span{color:var(--color-slate-gray);font-size:13px;font-weight:700}.water-sample-chart{background:linear-gradient(#0068f914 1px,#0000 1px) 0 0/100% 54px,linear-gradient(#ffffffe6,#ffffff75);border-radius:14px;align-items:end;gap:10px;min-height:220px;padding:16px 8px 6px;display:flex;overflow-x:auto}.sample-pair{grid-template-rows:1fr auto;grid-template-columns:10px 10px;justify-content:center;align-items:end;gap:0 3px;min-width:38px;height:190px;display:grid}.sample-bar{border-radius:100px 100px 2px 2px;width:100%;min-height:4px;display:block}.sample-bar-ecoli{background:var(--color-electric-cobalt)}.sample-bar-enterococci{background:var(--color-signal-coral)}.sample-pair small{writing-mode:vertical-rl;color:var(--color-slate-gray);white-space:nowrap;grid-column:1/-1;font-size:10.5px;font-weight:700;transform:rotate(180deg)}.map-search button{border-radius:var(--radius-pill);background:var(--color-electric-cobalt);min-height:48px;color:var(--color-pure-white);cursor:pointer;border:0;padding:10px 18px;font-weight:600}.map-search .map-search-clear{border:1px solid var(--color-hairline);background:var(--color-pure-white);color:var(--color-ink-charcoal)}.crime-timeline{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;gap:10px;padding:16px;display:grid}.crime-timeline[hidden]{display:none}.crime-timeline>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;display:flex}.crime-timeline strong{font-size:24px;line-height:1.2}.crime-trend-summary{color:var(--color-slate-gray);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 16px;font-size:13px;font-weight:600;display:flex}.crime-trend-summary strong{color:var(--color-ink-charcoal);font-size:20px}.crime-trend-chart{border:1px solid var(--color-hairline);background:linear-gradient(to top, #0068f914 1px, transparent 1px) 0 25% / 100% 25%, linear-gradient(180deg, var(--color-pure-white), var(--color-surface-ivory));border-radius:16px;align-items:end;gap:4px;height:132px;padding:14px 10px 10px;display:flex;position:relative;overflow:hidden}.crime-trend-chart:after{background:var(--color-powder-blue);content:"";height:1px;position:absolute;bottom:10px;left:10px;right:10px}.crime-trend-bar{z-index:1;cursor:pointer;background:0 0;border:0;flex:1 1 0;min-width:6px;height:100%;padding:0;position:relative}.crime-trend-bar span{min-height:10px;height:var(--bar-height);background:#0068f94d;border-radius:10px 10px 3px 3px;transition:background .16s,box-shadow .16s,transform .16s;position:absolute;bottom:0;left:0;right:0}.crime-trend-bar:hover span,.crime-trend-bar:focus-visible span{background:var(--color-cerulean);transform:translateY(-2px)}.crime-trend-bar:focus-visible{outline:2px solid var(--color-electric-cobalt);outline-offset:3px;border-radius:8px}.crime-trend-bar.is-active span{background:var(--color-electric-cobalt);box-shadow:0 0 0 3px #0068f926}.crime-timeline input[type=range]{width:100%;accent-color:var(--color-electric-cobalt)}.crime-timeline-labels{color:var(--color-slate-gray);justify-content:space-between;gap:16px;font-size:13px;font-weight:500;display:flex}.real-map-toolbar{flex-wrap:wrap;gap:8px;display:flex}.real-map-toolbar button{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);min-height:48px;color:var(--color-ink-charcoal);cursor:pointer;align-items:center;gap:10px;padding:10px 16px;font-weight:500;display:inline-flex}.real-map-toolbar button strong{color:var(--color-slate-gray);font-size:13px;font-weight:600}.real-map-toolbar button.is-active{border-color:var(--color-electric-cobalt);background:var(--color-electric-cobalt);color:var(--color-pure-white)}.real-map-toolbar button.is-active strong{color:var(--color-pure-white)}.real-map-frame{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:16px;position:relative;overflow:hidden}.maplibre-map{min-height:clamp(680px,68vh,860px)}.map-live-status{z-index:2;border:1px solid var(--color-hairline);color:var(--color-slate-gray);background:#ffffffeb;border-radius:100px;padding:8px 12px;font-size:13px;font-weight:500;position:absolute;bottom:16px;left:16px}.map-live-status strong{color:var(--color-ink-charcoal)}.map-explainer{z-index:2;border:1px solid var(--color-hairline);max-width:min(360px,100% - 32px);color:var(--color-slate-gray);background:#ffffffeb;border-radius:16px;margin:0;padding:8px 12px;font-size:13px;font-weight:500;transition:opacity .16s,transform .16s;position:absolute;bottom:16px;right:16px}.real-crime-map.has-open-popup .map-explainer{pointer-events:none;opacity:0;transform:translateY(8px)}.maplibregl-popup-content{border:1px solid var(--color-hairline);min-width:280px;box-shadow:var(--shadow-subtle);color:var(--color-ink-charcoal);font-family:var(--font-roobert);border-radius:16px;gap:4px;display:grid}.housing-map .maplibregl-popup{max-width:min(420px,100% - 32px)}.housing-map .maplibregl-popup-content{overscroll-behavior:contain;scrollbar-gutter:stable;width:min(420px,100vw - 48px);max-height:min(540px,100vh - 220px);padding:18px;overflow-y:auto}.crime-cluster-popup{max-width:min(420px,100% - 32px)}.crime-cluster-popup .maplibregl-popup-content{width:min(420px,100vw - 48px);max-height:var(--cluster-popup-max-height,430px);overscroll-behavior:contain;scrollbar-gutter:stable;padding:18px;overflow-y:auto}.maplibregl-popup-content strong,.maplibregl-popup-content span,.maplibregl-popup-content small{display:block}.maplibregl-popup-content span,.maplibregl-popup-content small{color:var(--color-slate-gray)}.cluster-popup{gap:12px;min-height:min-content;display:grid}.cluster-popup header{gap:4px;display:grid}.cluster-popup header strong{font-size:18px}.cluster-breakdown{flex-wrap:wrap;gap:6px;display:flex}.cluster-breakdown span{background:var(--color-surface-ivory);border-radius:100px;padding:6px 8px;font-size:12px}.cluster-popup ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.cluster-popup li{background:var(--color-surface-ivory);border-radius:12px;gap:2px;padding:10px;display:grid}.cluster-popup p{color:var(--color-slate-gray);margin:0;font-size:13px}.record-list{gap:10px;margin-top:16px;display:grid}.record-list article{background:var(--color-surface-ivory);border-radius:16px;gap:4px;padding:14px;display:grid}.record-list span,.record-list small{color:var(--color-slate-gray)}.outcomes-trend-panel{gap:24px;display:grid}.outcomes-trend-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);align-items:end;gap:24px;display:grid}.outcomes-trend-heading h2{max-width:760px;margin:8px 0;font-size:clamp(32px,4vw,48px);line-height:1.12}.outcomes-trend-heading p{max-width:760px}.outcome-trend-legend{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.outcome-trend-legend span{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);min-height:34px;color:var(--color-slate-gray);border-radius:100px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.outcome-trend-legend i{background:var(--legend-colour);border-radius:50%;flex:none;width:10px;height:10px}.outcome-hover-panel{border:1px solid var(--color-powder-blue);background:linear-gradient(135deg, #d6e4f16b, var(--color-pure-white));border-radius:20px;grid-template-columns:minmax(180px,.4fr) minmax(0,1fr);align-items:start;gap:16px;padding:16px;display:grid}.outcome-hover-panel strong,.outcome-hover-panel small{display:block}.outcome-hover-panel>div:first-child strong{color:var(--color-ink-charcoal);margin-top:6px;font-size:24px;line-height:1.2}.outcome-hover-panel small{color:var(--color-slate-gray);margin-top:4px;font-weight:600}.outcome-hover-list{flex-wrap:wrap;gap:8px;display:flex}.outcome-hover-list span{border:1px solid var(--color-hairline);background:var(--color-pure-white);min-height:38px;color:var(--color-slate-gray);border-radius:100px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:600;display:inline-flex}.outcome-hover-list i{background:var(--legend-colour);border-radius:50%;flex:none;width:10px;height:10px}.outcome-hover-list strong{color:var(--color-ink-charcoal)}.outcome-trend-chart{border:1px solid var(--color-hairline);background:linear-gradient(to top, #0068f914 1px, transparent 1px) 0 25% / 100% 25%, linear-gradient(180deg, var(--color-pure-white), var(--color-surface-ivory));border-radius:20px;align-items:end;gap:8px;min-height:360px;padding:24px 18px 14px;display:flex;overflow-x:auto}.outcome-trend-month{text-align:center;cursor:default;outline:none;grid-template-rows:1fr auto;gap:10px;min-width:30px;height:100%;display:grid}.outcome-trend-stack{height:var(--month-height);background:var(--color-powder-blue);border-radius:10px 10px 4px 4px;flex-direction:column-reverse;align-self:end;min-height:24px;transition:filter .16s,transform .16s,box-shadow .16s;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffffad}.outcome-trend-month:hover .outcome-trend-stack,.outcome-trend-month:focus-visible .outcome-trend-stack{filter:saturate(1.16);transform:translateY(-4px);box-shadow:0 8px 18px #1217221a,inset 0 0 0 2px #ffffffd1}.outcome-trend-month:focus-visible small{color:var(--color-electric-cobalt)}.outcome-trend-stack span{height:var(--segment-height);background:var(--segment-colour);border-top:1px solid #ffffffad;min-height:2px;display:block}.outcome-trend-stack span:first-child{border-top:0}.outcome-trend-month small{color:var(--color-slate-gray);writing-mode:vertical-rl;font-size:11px;font-weight:600;transform:rotate(180deg)}.responsive-table{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--color-hairline);text-align:left;padding:16px}td{font-weight:500}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.source-card h2{margin-top:0}.sources-page{width:min(1760px,100% - 32px)}.sources-hero{grid-template-columns:minmax(0,1fr) minmax(280px,380px);align-items:end;gap:clamp(24px,5vw,72px);display:grid}.sources-hero-status{box-shadow:var(--shadow-subtle);background:#ffffffc7;border:1px solid #efefefe0;border-radius:24px;padding:24px}.sources-hero-status span,.sources-hero-status small,.source-card-modern header p,.source-status small,.source-list-modern dt{color:var(--color-slate-gray);font-size:13px;font-weight:700}.sources-hero-status strong{color:var(--color-electric-cobalt);font-size:clamp(48px,6vw,72px);line-height:.95;display:block}.sources-hero-status p{color:var(--color-ink-charcoal);margin:14px 0 0;font-weight:700}.modern-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.source-card-modern{background:radial-gradient(circle at 100% 0%, #0068f91a, transparent 34%), var(--color-pure-white);box-shadow:var(--shadow-subtle);border:1px solid #efefefe6;border-radius:24px;align-content:start;gap:18px;padding:24px;display:grid}.source-card-modern header{align-items:center;gap:14px;display:flex}.source-card-modern header p{margin:0 0 4px}.source-card-modern h2{margin:0;font-size:clamp(22px,2vw,30px);line-height:1.08}.source-icon{background:var(--color-electric-cobalt);width:52px;height:52px;color:var(--color-pure-white);letter-spacing:.05em;border-radius:18px;flex:none;place-items:center;font-size:14px;font-weight:900;display:grid;box-shadow:0 12px 28px #0068f938}.source-status{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:18px;gap:4px;padding:14px 16px;display:grid}.source-status span{color:var(--color-ink-charcoal);font-weight:900}.source-status small{line-height:1.45}.source-status.is-passed{background:#04664514;border-color:#04664538}.source-status.is-failed{background:#e858391a;border-color:#e8583947}.source-status.is-pending,.source-status.is-manual,.source-status.is-static,.source-status.is-browser{background:#0068f912;border-color:#0068f929}.source-list-modern{gap:10px;margin:0;display:grid}.source-list-modern div{border-top:1px solid var(--color-hairline);gap:4px;padding-top:12px;display:grid}.source-list-modern dt{text-transform:uppercase;letter-spacing:.08em}.source-list-modern dd{color:var(--color-ink-charcoal);font-size:15px;font-weight:700;line-height:1.45}.source-caveat{background:var(--color-canvas-cream);color:var(--color-slate-gray);border-radius:18px;margin:0;padding:16px;font-size:14px;font-weight:650;line-height:1.55}.contact-page{padding-top:56px}.contact-hero{grid-template-columns:minmax(0,1fr) minmax(280px,420px)}.contact-hero-card{z-index:1;box-shadow:var(--shadow-subtle);backdrop-filter:blur(12px);background:#ffffffd1;border:1px solid #ffffffc7;border-radius:24px;gap:10px;padding:24px;display:grid;position:relative}.contact-hero-card span,.contact-side-panel li span,.contact-form-actions p{color:var(--color-slate-gray)}.contact-hero-card span{letter-spacing:.077em;text-transform:uppercase;font-size:13px;font-weight:800}.contact-hero-card strong{color:var(--color-ink-charcoal);font-size:clamp(24px,3vw,34px);line-height:1.08}.contact-hero-card p{color:#34547b;margin:0}.contact-layout{grid-template-columns:minmax(0,1.08fr) minmax(300px,.52fr);align-items:start;gap:18px;display:grid}.contact-form,.contact-side-panel{border:1px solid var(--color-hairline);background:#ffffffdb;border-radius:28px;box-shadow:0 18px 38px #34547b1a}.contact-form{gap:18px;padding:clamp(22px,4vw,42px);display:grid}.contact-fields{gap:18px;display:grid}.form-heading h2,.contact-side-panel h2{color:var(--color-ink-charcoal);margin:8px 0 10px;font-size:clamp(32px,4vw,48px);line-height:1.08}.form-heading p{color:var(--color-slate-gray);margin:0}.form-heading p.is-success{color:var(--color-forest);font-weight:800}.form-heading p.is-error{color:#bf3b28;font-weight:800}.contact-thank-you{min-height:320px;box-shadow:var(--shadow-subtle);background:radial-gradient(circle at 100% 0,#04664524,#0000 34%),linear-gradient(135deg,#fffffff5,#fbfaf7e0);border:1px solid #04664533;border-radius:24px;align-content:center;gap:10px;padding:clamp(24px,4vw,48px);display:grid}.contact-thank-you[hidden]{display:none}.contact-thank-you span{border-radius:var(--radius-pill);width:max-content;max-width:100%;color:var(--color-forest);letter-spacing:.077em;text-transform:uppercase;background:#0466451a;padding:7px 12px;font-size:13px;font-weight:900}.contact-thank-you h2{max-width:680px;color:var(--color-ink-charcoal);margin:0;font-size:clamp(36px,5vw,64px);line-height:1.04}.contact-thank-you p{color:#34547b;max-width:620px;margin:0;font-size:18px}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.contact-form label{gap:8px;display:grid}.contact-form label>span{color:var(--color-ink-charcoal);font-size:14px;font-weight:900}.contact-form input,.contact-form select,.contact-form textarea{background:var(--color-pure-white);width:100%;color:var(--color-ink-charcoal);font:inherit;border:1px solid #d6e4f1e6;border-radius:18px;outline:none;font-weight:600;transition:border-color .16s,box-shadow .16s,background .16s}.contact-form input,.contact-form select{min-height:54px;padding:0 16px}.contact-form textarea{resize:vertical;min-height:210px;padding:15px 16px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{background:#f7fbff;border-color:#0068f994;box-shadow:0 0 0 4px #0068f91f}.contact-consent{background:var(--color-surface-ivory);border:1px solid #d6e4f1b8;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:start;padding:14px}.contact-consent input{width:20px;min-height:20px;accent-color:var(--color-electric-cobalt);margin-top:2px}.contact-honeypot{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.contact-form-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.contact-form-actions p{max-width:520px;margin:0;font-size:14px}.contact-form button:disabled{cursor:progress;opacity:.72}.contact-side-panel{background:linear-gradient(#ffffffe6,#fbfaf7db),radial-gradient(circle at 100% 0,#ffc92833,#0000 34%);gap:18px;padding:clamp(22px,3vw,30px);display:grid}.contact-side-panel ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.contact-side-panel li{background:#ffffffb3;border:1px solid #d6e4f1b8;border-radius:18px;gap:4px;padding:16px;display:grid}.contact-side-panel li strong{color:var(--color-ink-charcoal)}.contact-side-panel .button{justify-self:start}.location-hero{--location-hero-image:url(/images/blackpool-data-hero-1800.webp);--location-hero-position:center;background:linear-gradient(120deg, #fffffff0 0%, #f7fbffe0 48%, #d2ebffd1 100%), var(--location-hero-image) var(--location-hero-position) / cover;width:min(1760px,100% - 32px);min-height:680px;color:var(--color-ink-charcoal);isolation:isolate;border:1px solid #d6e4f1d6;border-radius:36px;align-items:center;margin:0 auto;padding:clamp(116px,10vw,156px) clamp(20px,5vw,72px) 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #34547b1c}.location-hero-fleetwood{--location-hero-image:url(/images/fleetwood-hero-20260716-optimized.webp);--location-hero-position:center 42%}.location-hero-cleveleys{--location-hero-image:url(/images/cleveleys-hero-20260716-optimized.webp);--location-hero-position:center 44%}.location-hero-st-annes{--location-hero-image:url(/images/st-annes-hero-20260716-optimized.webp);--location-hero-position:center 46%}.location-hero-lytham{--location-hero-image:url(/images/lytham-hero-20260716-optimized.webp);--location-hero-position:center 48%}.location-hero:after{z-index:1;content:"";pointer-events:none;background:radial-gradient(at 18% 65%,#0068f929,#0000 36%),linear-gradient(165deg,#0000 0 34%,#0074dd21 35% 49%,#ffc92829 50% 63%,#0000 64%),linear-gradient(#0000,#faf9f7f0);height:42%;position:absolute;inset:auto -10% -2px}.location-hero-copy{z-index:2;width:min(760px,100%);padding-bottom:clamp(112px,16vw,176px);position:relative}.location-hero .eyebrow{color:var(--color-electric-cobalt)}.location-hero h1{color:#244a78;margin:12px 0 20px;font-size:clamp(48px,7vw,84px);font-weight:600;line-height:1.06}.location-hero p{color:#34547b;max-width:700px;font-size:18px;line-height:1.5}.location-hero-ribbon{z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid;position:absolute;bottom:28px;left:clamp(16px,4vw,48px);right:clamp(16px,4vw,48px)}.location-hero-ribbon a{min-height:132px;color:var(--color-ink-charcoal);backdrop-filter:blur(10px);box-shadow:var(--shadow-subtle);background:#ffffffe6;border:1px solid #d6e4f1d6;border-radius:16px;padding:18px;text-decoration:none}.location-hero-ribbon a:hover{border-color:var(--color-powder-blue);transform:translateY(-2px)}.location-hero-ribbon span,.location-hero-ribbon small{color:var(--color-slate-gray);font-size:13px;font-weight:600;display:block}.location-hero-ribbon strong{color:var(--color-electric-cobalt);margin:10px 0 4px;font-size:clamp(34px,4vw,48px);line-height:1;display:block}.location-page .page-shell{margin-top:28px}.location-page .panel h2{margin-top:8px}.location-data-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.location-data-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);min-height:220px;color:var(--color-ink-charcoal);box-shadow:var(--shadow-subtle);border-radius:16px;align-content:start;gap:10px;padding:20px;text-decoration:none;display:grid}.location-data-card:hover{border-color:var(--color-powder-blue);transform:translateY(-2px)}.location-data-card span{background:var(--color-lavender-mist);width:fit-content;color:var(--color-vivid-violet);border-radius:100px;padding:6px 10px;font-size:12px;font-weight:700}.location-data-card.is-available span{color:var(--color-electric-cobalt);background:#0068f91a}.location-data-card h3{margin:0;font-size:22px;line-height:1.2}.location-data-card p{color:var(--color-slate-gray);margin:0}.schools-summary-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:18px;display:grid}.schools-summary-card{align-content:start;gap:8px;display:grid}.schools-summary-card.is-primary{background:linear-gradient(135deg, #0068f924, #fffffff0), var(--color-pure-white)}.schools-summary-card strong{color:var(--color-electric-cobalt);font-size:clamp(38px,5vw,58px);line-height:1}.schools-summary-card p{color:var(--color-slate-gray);margin:0}.school-phase-pills{flex-wrap:wrap;gap:8px;display:flex}.school-phase-pills span{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);color:var(--color-slate-gray);border-radius:999px;align-items:center;gap:8px;padding:9px 12px;font-size:13px;font-weight:700;display:inline-flex}.school-phase-pills strong{color:var(--color-ink-charcoal);font-size:13px}.school-map-panel{padding:clamp(12px,2vw,22px)}.school-map{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:18px;position:relative;overflow:hidden}.school-map-canvas{min-height:clamp(620px,68vh,820px)}.school-map-status,.school-map-legend{z-index:2;border:1px solid var(--color-hairline);box-shadow:var(--shadow-subtle);backdrop-filter:blur(10px);background:#fffffff0;position:absolute}.school-map-status{color:var(--color-slate-gray);border-radius:999px;padding:10px 14px;font-weight:700;bottom:16px;left:16px}.school-map-status strong{color:var(--color-ink-charcoal)}.school-map-legend{border-radius:999px;flex-wrap:wrap;gap:12px;max-width:min(560px,100% - 32px);padding:10px 12px;display:flex;bottom:16px;right:16px}.school-map-legend span{color:var(--color-slate-gray);align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}.school-map-legend i{border-radius:50%;width:12px;height:12px}.school-map-details{z-index:5;overscroll-behavior:contain;scrollbar-gutter:stable;border:1px solid var(--color-hairline);background:#fffffff5;border-radius:22px;width:min(430px,100% - 32px);position:absolute;top:16px;bottom:82px;left:16px;overflow-y:auto;box-shadow:0 24px 54px #1217222e}.school-map-details[hidden]{display:none}.phase-primary{background:#0068f9}.phase-secondary{background:#6736eb}.phase-special{background:#046645}.school-popup{padding:18px;position:relative}.school-detail-close{z-index:2;float:right;border:1px solid var(--color-hairline);background:var(--color-pure-white);width:32px;height:32px;color:var(--color-ink-charcoal);cursor:pointer;box-shadow:var(--shadow-subtle);border-radius:999px;place-items:center;margin:-6px -6px 8px 10px;font-size:22px;font-weight:800;line-height:1;display:grid;position:sticky;top:0}.school-detail-close:hover{color:var(--color-electric-cobalt)}.school-map .maplibregl-popup{max-width:min(420px,100% - 32px)!important}.school-map .maplibregl-popup-content{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(500px,100dvh - 180px);overflow-y:auto}.school-popup header{gap:4px;margin-bottom:12px;display:grid}.school-popup header strong{color:var(--color-ink-charcoal);font-size:18px}.school-popup header span,.school-popup p{color:var(--color-slate-gray)}.school-popup-ofsted{background:#0068f914;border:1px solid #0068f92e;border-radius:14px;gap:4px;margin-bottom:12px;padding:12px;display:grid}.school-popup-ofsted b{color:var(--color-ink-charcoal)}.school-popup-ofsted span{color:var(--color-slate-gray);font-size:13px;font-weight:700}.school-popup dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px;display:grid}.school-popup dl div:nth-child(2),.school-popup dl div:nth-child(4){grid-column:1/-1}.school-popup dl div{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:12px;padding:10px}.school-popup dt{color:var(--color-slate-gray);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.school-popup dd{color:var(--color-ink-charcoal);margin:3px 0 0;font-weight:700}.school-popup a{color:var(--color-electric-cobalt);margin-right:12px;font-weight:800;display:inline-flex}.school-location-list{gap:8px;display:grid}.school-location-list a{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);color:var(--color-ink-charcoal);border-radius:14px;grid-template-columns:1fr auto;gap:2px 12px;padding:14px;text-decoration:none;display:grid}.school-location-list a:hover{border-color:var(--color-powder-blue);transform:translateY(-1px)}.school-location-list span,.school-location-list strong{font-weight:800}.school-location-list small{color:var(--color-slate-gray);grid-column:1/-1;font-weight:700}.table-subtext{color:var(--color-slate-gray);margin-top:4px;font-size:13px;font-weight:600;display:block}@media (width<=1040px){.map-feature-layout{grid-template-columns:1fr}.map-feature-copy{padding:20px}.topic-grid,.topic-showcase,.area-card-grid,.location-data-grid,.modern-source-grid,.not-found-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.not-found-hero{grid-template-columns:1fr}.not-found-code{justify-content:start}.not-found-code small{text-align:left;margin-left:0}.crime-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.schools-summary-grid{grid-template-columns:1fr}.home-hero,.location-hero,.gems-hero{grid-template-columns:1fr;min-height:auto}.hero-visual{min-height:360px}}@media (width<=880px){.split-section,.home-gems-strip,.content-grid,.content-grid-wide,.map-feature-layout,.contact-hero,.contact-layout,.page-heading{display:block}.contact-form-grid{grid-template-columns:1fr}.contact-side-panel{margin-top:16px}.modern-source-grid,.sources-hero{grid-template-columns:1fr}.site-header{border-radius:0 0 22px 22px;grid-template-columns:minmax(0,1fr) auto;width:calc(100% - 20px)}.site-header.is-menu-open{max-height:calc(100dvh - 10px);overflow:hidden}.mobile-menu-toggle{display:inline-flex}.footer-brand,.footer-links{grid-template-columns:1fr}.footer-bottom{justify-items:start;display:grid}.footer-disclaimer{grid-template-columns:1fr}.cookie-consent-card{border-radius:26px;grid-template-columns:1fr;gap:14px;padding:16px}.cookie-consent-icon{width:48px;height:48px}.cookie-consent-actions{grid-template-columns:1fr;width:100%;display:grid}.cookie-consent-actions .button{justify-content:center;width:100%}.footer-brand p{font-size:18px}.site-nav{border-top:1px solid var(--color-hairline);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;grid-column:1/-1;grid-template-columns:1fr;gap:6px;max-height:calc(100dvh - 110px);margin-top:12px;padding-top:12px;padding-bottom:14px;display:none;overflow-y:auto}.site-header.is-menu-open .site-nav{display:grid}.site-nav a,.nav-dropdown-trigger{border:1px solid var(--color-hairline);background:var(--color-pure-white);justify-content:space-between;width:100%;padding:14px 16px;font-weight:800;display:flex}.nav-dropdown{margin-bottom:0;padding-bottom:0}.nav-dropdown-menu{width:100%;min-width:0;box-shadow:none;margin-top:6px;padding:6px;display:none;position:static}.nav-dropdown.has-rich-menu .nav-dropdown-menu{width:100%}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:none}.nav-dropdown.is-open .nav-dropdown-menu,.nav-dropdown.is-open:hover .nav-dropdown-menu,.nav-dropdown.is-open:focus-within .nav-dropdown-menu{display:grid}.nav-dropdown-menu a{background:var(--color-surface-ivory);justify-content:stretch;gap:3px;padding:12px 14px;display:grid}.nav-dropdown-menu a small{font-size:12px}.interface-preview{margin-top:32px}.toolbar{display:block}.source-badge{justify-content:flex-start}.housing-hero-panel,.housing-analysis-grid{grid-template-columns:1fr}.housing-hero-panel{display:grid}.housing-stat-main{grid-template-columns:1fr;align-items:start}.housing-stat-main .big-number,.housing-stat-main p:not(.big-number),.housing-stat-main .eyebrow{grid-area:auto}.metric-grid,.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-hero,.location-hero{align-items:start;min-height:auto}.hero-data-ribbon,.location-hero-ribbon{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:32px;position:relative;bottom:auto;left:auto;right:auto}.location-hero-copy,.hero-copy{padding-bottom:0}.section-heading{text-align:left;grid-template-columns:1fr}.section-heading:before,.section-heading:after{display:none}.section-heading .eyebrow,.section-heading h2{grid-column:auto}.home-intro-grid{grid-template-columns:1fr}.home-gems-carousel{grid-auto-columns:minmax(250px,76vw);margin-top:22px}.home-events-header{align-items:start;display:grid}.home-events-carousel{grid-auto-columns:minmax(230px,42vw)}.area-card,.area-card:first-child{grid-column:auto;grid-template-columns:1fr;min-height:auto}.area-card-image{min-height:300px}.weather-band-inner{grid-template-columns:1fr}.weather-copy{min-height:auto}.weather-days{grid-template-columns:repeat(3,minmax(0,1fr))}.home-photo-stack{min-height:320px}.outcomes-trend-heading,.outcome-hover-panel{grid-template-columns:1fr}.outcome-trend-legend{justify-content:flex-start}.section-heading-row{display:grid}.water-trend-grid{grid-template-columns:1fr}.school-map-canvas{min-height:620px}.school-map-status{text-align:center;width:auto;bottom:78px;left:12px;right:12px}.school-map-legend{border-radius:18px;justify-content:center;bottom:12px;left:12px;right:12px}.school-map-details{border-radius:24px;width:auto;max-height:min(62%,500px);inset:auto 12px 146px}.school-popup dl{grid-template-columns:1fr}.school-popup dl div:nth-child(2),.school-popup dl div:nth-child(4){grid-column:auto}}@media (width<=560px){.brand small{display:none}.home-hero{padding-top:34px}.preview-body,.topic-grid,.topic-showcase,.area-card-grid,.metric-grid,.source-grid,.mini-metrics,.housing-stat-grid,.housing-card-grid{grid-template-columns:1fr;display:grid}.topic-card{min-height:auto}.not-found-grid{grid-template-columns:1fr}.not-found-code span{border-radius:22px}.area-card-image{min-height:240px}.area-card-copy{padding:22px}.home-hero,.location-hero{min-height:auto;padding-top:40px;padding-bottom:40px}.home-hero,.location-hero,.gems-hero{border-radius:28px;width:calc(100% - 20px);margin-top:10px;padding-inline:20px}.home-hero h1,.location-hero h1,.gems-hero h1{font-size:clamp(52px,15vw,72px)}.hero-visual{border-radius:24px;min-height:280px}.hero-device-card{min-width:180px;padding:14px;bottom:12px;right:12px}.hero-device-card strong{font-size:38px}.hero-copy{padding-bottom:0}.hero-actions{display:grid}.hero-data-ribbon,.location-hero-ribbon{grid-template-columns:1fr}.hero-data-ribbon a,.location-hero-ribbon a{min-height:auto}.weather-band{padding:28px 12px}.weather-current-card,.weather-metrics,.weather-days,.location-data-grid{grid-template-columns:1fr}.weather-current-card{align-items:start}.weather-metrics article,.weather-day-card{min-height:auto}.home-photo-stack{grid-template-columns:1fr}.home-photo-stack div{min-height:220px}.topic-feature-card{min-height:auto}.topic-photo{min-height:220px}.mock-map,.map-compact,.maplibre-map{min-height:520px}.crime-map-panel{padding:8px}.crime-summary-strip{grid-template-columns:1fr;display:grid}.crime-summary-strip-highlight{border-radius:20px;padding:10px}.map-search div{display:grid}.housing-page .page-heading{padding:24px}.housing-page .page-heading h1{font-size:clamp(42px,13vw,56px)}.housing-stat-main{padding:22px}.water-timeline{grid-template-columns:1fr}.housing-hero-panel{border-radius:20px;padding:12px}.housing-stat-main,.housing-stat-grid article{min-height:auto;padding:18px}.housing-stat-main .big-number{font-size:clamp(44px,13vw,58px)}.housing-map-panel{padding:10px}.housing-map,.housing-map-canvas{min-height:620px}.housing-map-status,.housing-map-legend{border-radius:18px;width:auto;left:12px;right:12px}.housing-map-legend{top:12px}.housing-map-status{bottom:12px}.housing-map .maplibregl-popup-content{width:min(360px,100vw - 32px);max-height:min(440px,62vh);padding:14px}.housing-popup-grid{grid-template-columns:1fr}.housing-price-chart{grid-template-columns:repeat(18,22px);padding-bottom:12px;overflow-x:auto}.water-map-canvas{min-height:620px}.water-map-status,.water-map-legend{width:auto;left:12px;right:12px}.water-map-status{bottom:78px}.water-map-legend{bottom:12px}.water-sample-chart{min-height:200px}.outcome-trend-chart{gap:6px;min-height:300px;padding-inline:12px}.outcome-trend-month{min-width:24px}.crime-trend-chart{gap:3px;height:108px;padding-inline:8px;overflow-x:auto}.crime-trend-chart:after{left:8px;right:8px}.crime-trend-bar{flex:0 0 9px}.crime-cluster-popup .maplibregl-popup-content{width:min(340px,100vw - 32px);max-height:min(var(--cluster-popup-max-height,310px), 310px);padding:14px}.fact-list div,.source-list div{grid-template-columns:1fr}}.hidden-gems-page{overflow:hidden}.gems-hero{width:min(1760px,100% - 32px);min-height:680px;color:var(--color-ink-charcoal);isolation:isolate;background:linear-gradient(120deg,#fffffff0 0%,#f7fbffe0 46%,#d2ebffd1 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);align-items:center;gap:clamp(32px,6vw,110px);margin:0 auto;padding:clamp(116px,10vw,156px) clamp(20px,5vw,72px) 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #34547b1c}.gems-hero:after{z-index:1;content:"";pointer-events:none;background:radial-gradient(at 18% 65%,#0068f929,#0000 36%),linear-gradient(165deg,#0000 0 34%,#0074dd21 35% 49%,#ffc92829 50% 63%,#0000 64%),linear-gradient(#0000,#faf9f7f0);height:42%;position:absolute;inset:auto -10% -2px}.gems-hero-art,.gems-note,.gems-feature,.gems-map-section,.gems-list-section{width:min(1760px,100% - 32px);margin-left:auto;margin-right:auto}.gems-hero-copy{z-index:2;align-content:center;width:min(760px,100%);display:grid;position:relative}.gems-hero .eyebrow{color:var(--color-electric-cobalt)}.gems-hero h1{color:#244a78;letter-spacing:0;max-width:820px;margin:12px 0 18px;font-size:clamp(48px,7vw,84px);line-height:1.06}.gems-hero p{color:#34547b;max-width:680px;margin:0;font-size:18px;line-height:1.5}.gems-hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.gems-hero-art{z-index:2;background:linear-gradient(#244a7800,#244a7894),url(/images/blackpool-data-hero-1200.webp) 72%/cover;border:1px solid #ffffffb8;border-radius:34px;align-content:end;width:auto;min-height:420px;margin:0;padding:24px;display:grid;position:relative;box-shadow:0 24px 58px #34547b33}.gems-hero-art span{background:var(--color-sun-gold);width:max-content;color:var(--color-pure-white);text-transform:uppercase;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800}.gems-hero-art strong{max-width:280px;color:var(--color-pure-white);margin-top:12px;font-size:40px;line-height:.95}.gems-hero .button.primary,.location-hero .button.primary{background:var(--color-sun-gold);color:#233553;font-weight:800;box-shadow:0 12px 24px #e7a90038}.gems-hero .button.primary:hover,.location-hero .button.primary:hover{background:var(--color-deep-gold)}.gems-note{border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:20px;align-items:center;gap:16px;margin-top:24px;padding:16px 18px;display:flex}.gems-note strong{background:var(--color-ink-charcoal);color:var(--color-pure-white);text-transform:uppercase;border-radius:999px;flex:none;padding:8px 12px;font-size:13px}.gems-note p{color:var(--color-slate-gray);margin:0}.gems-feature{grid-template-columns:minmax(0,.9fr) minmax(360px,.8fr);gap:16px;margin-top:24px;display:grid}.gem-image{min-height:310px;box-shadow:var(--shadow-subtle);background:linear-gradient(135deg,#ff4f8b94,#0068f947),url(/images/blackpool-data-hero-1200.webp) 50%/cover;border:1px solid #1217221f;border-radius:28px;text-decoration:none;display:block;position:relative;overflow:hidden}.gem-image span{z-index:2;background:var(--gem-colour,var(--color-electric-cobalt));width:56px;height:56px;color:var(--color-pure-white);border-radius:999px;place-items:center;font-size:20px;font-weight:800;display:grid;position:absolute;bottom:16px;left:16px}.gem-image.has-local-image{background:var(--gem-colour,var(--color-electric-cobalt))}.gem-image.has-local-image:after{content:"";pointer-events:none;background:linear-gradient(#12172200 42%,#12172285 100%),linear-gradient(135deg,#0068f92e,#ff4f8b1f);position:absolute;inset:0}.gem-image.has-local-image img{width:100%;height:100%;min-height:inherit;object-fit:cover;display:block}.gem-photo-hole-in-the-wall img{object-position:center}.gem-photo-coffee{background-image:linear-gradient(135deg,#ff4f8ba3,#ffb00047),url(/images/blackpool-data-hero-1200.webp);background-position:20% 54%}.gem-photo-bar{background-image:linear-gradient(135deg,#12172257,#ffb00075),url(/images/blackpool-data-hero-1200.webp);background-position:76% 44%}.gem-photo-bakery{background-image:linear-gradient(135deg,#00a87894,#ffffff2e),url(/images/blackpool-data-hero-1200.webp);background-position:38% 62%}.gem-photo-records{background-image:linear-gradient(135deg,#6736eb9e,#ff4f8b47),url(/images/blackpool-data-hero-1200.webp);background-position:88% 40%}.gem-photo-plants{background-image:linear-gradient(135deg,#0466459e,#d6e4f13d),url(/images/blackpool-data-hero-1200.webp);background-position:44% 66%}.gem-photo-maker{background-image:linear-gradient(135deg,#0068f994,#ffb00047),url(/images/blackpool-data-hero-1200.webp);background-position:70%}.gems-feature article{border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:28px;padding:clamp(24px,4vw,42px)}.gem-type{width:max-content;color:var(--color-ink-charcoal);text-transform:uppercase;background:#ffcf33;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800;display:inline-flex}.gem-card-kicker{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gem-sample-badge{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);width:max-content;color:var(--color-slate-gray);text-transform:uppercase;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:800;display:inline-flex}.gems-feature h2,.gems-section-heading h2{margin:12px 0;font-size:clamp(38px,5vw,64px);line-height:.98}.gems-feature h2 a,.gem-card h3 a{color:var(--color-ink-charcoal);text-decoration:none}.gems-feature h2 a:hover,.gem-card h3 a:hover{color:var(--color-electric-cobalt)}.gems-feature p,.gems-section-heading p,.gem-card p{color:var(--color-slate-gray)}.gems-feature dl,.gem-card dl{gap:12px;margin:22px 0 0;display:grid}.gems-feature dl div,.gem-card dl div{border-top:1px solid var(--color-hairline);grid-template-columns:104px 1fr;gap:12px;padding-top:12px;display:grid}.gems-feature dt,.gem-card dt{color:var(--color-slate-gray);text-transform:uppercase;font-size:13px;font-weight:800}.gems-feature dd,.gem-card dd{margin:0;font-weight:700}.gems-feature dd a,.gem-card dd a{color:var(--color-electric-cobalt);text-decoration:none}.gems-feature dd a:hover,.gem-card dd a:hover{text-decoration:underline}.gems-map-section,.gems-list-section{margin-top:56px}.gems-section-heading{max-width:760px;margin-bottom:20px}.hidden-gems-map{border:1px solid var(--color-hairline);background:var(--color-powder-blue);min-height:560px;box-shadow:var(--shadow-subtle);border-radius:28px;position:relative;overflow:hidden}.hidden-gems-map-canvas{width:100%;min-height:560px}.hidden-gems-map-status{z-index:2;border:1px solid var(--color-hairline);color:var(--color-slate-gray);box-shadow:var(--shadow-subtle);background:#ffffffeb;border-radius:999px;padding:10px 14px;font-weight:700;position:absolute;bottom:16px;left:16px}.hidden-gems-map-status strong{color:var(--color-ink-charcoal)}.gem-map-popup strong{color:var(--color-ink-charcoal);font-size:18px}.gem-map-popup span{color:var(--color-electric-cobalt);font-weight:800}.gem-map-popup p{color:var(--color-slate-gray);margin:8px 0 0}.gem-map-popup a{color:var(--color-electric-cobalt);margin-top:10px;font-weight:800;text-decoration:none;display:inline-flex}.gem-map-popup a:hover{text-decoration:underline}.gems-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.gem-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:28px;overflow:hidden}.gem-card .gem-image{border:0;border-bottom:8px solid var(--gem-colour,var(--color-electric-cobalt));min-height:230px;box-shadow:none;border-radius:0}.gem-card-body{padding:20px}.gem-card h3{margin:12px 0 10px;font-size:30px;line-height:1}.gem-card-link{color:var(--color-electric-cobalt);margin-top:12px;font-weight:800;text-decoration:none;display:inline-flex}.gem-card-link:hover{text-decoration:underline}.business-directory-page,.business-detail-page{overflow:hidden}.business-hero,.business-filter-panel,.business-directory-section,.business-list-hero,.business-detail-hero,.business-detail-layout{width:min(1760px,100% - 32px);margin-left:auto;margin-right:auto}.business-hero{min-height:620px;color:var(--color-ink-charcoal);isolation:isolate;background:linear-gradient(120deg,#fffffff0 0%,#f7fbffe0 46%,#d2ebffd1 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,1fr) minmax(420px,.8fr);align-items:center;gap:clamp(28px,5vw,86px);padding:clamp(96px,10vw,148px) clamp(24px,5vw,72px) 44px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #34547b1c}.business-hero:after{z-index:1;content:"";pointer-events:none;background:radial-gradient(at 18% 65%,#0068f929,#0000 36%),linear-gradient(165deg,#0000 0 34%,#0074dd21 35% 49%,#ffc92829 50% 63%,#0000 64%),linear-gradient(#0000,#faf9f7f0);height:42%;position:absolute;inset:auto -10% -2px}.business-hero-copy,.business-hero-visual{z-index:2;position:relative}.business-hero h1,.business-list-hero h1,.business-detail-hero h1{letter-spacing:0;max-width:980px;margin:12px 0 18px;font-size:clamp(46px,6vw,78px);line-height:1.02}.business-hero h1{color:#244a78;max-width:820px}.business-hero p,.business-list-hero p,.business-detail-hero p{color:#34547b;max-width:720px;margin:0;font-size:clamp(18px,2vw,24px)}.business-hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.business-hero .button.primary{background:var(--color-sun-gold);color:#233553;font-weight:800;box-shadow:0 12px 24px #e7a90038}.business-hero .button.primary:hover{background:var(--color-deep-gold)}.business-hero-visual{background:linear-gradient(#244a7800,#244a782e),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #ffffffb8;border-radius:34px;min-height:420px;overflow:hidden;box-shadow:0 24px 58px #34547b33}.business-hero-visual:before,.business-hero-visual:after{content:"";border-radius:999px;position:absolute}.business-hero-visual:before{background:#ffc92861;width:240px;height:240px;top:-70px;right:-50px}.business-hero-visual:after{background:#0068f938;width:360px;height:180px;bottom:-90px;right:8%}.business-hero-stat{z-index:2;backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #fff9;border-radius:24px;max-width:280px;padding:20px;position:absolute;bottom:24px;right:24px;box-shadow:0 16px 34px #34547b26}.business-hero-stat strong{color:var(--color-electric-cobalt);font-size:clamp(46px,6vw,72px);line-height:1;display:block}.business-hero-stat span{color:#55708f;margin-top:8px;font-weight:800;display:block}.business-hero-stat p{margin-top:14px;font-size:15px;line-height:1.45}.business-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.business-live-filter{grid-template-columns:minmax(260px,1fr) repeat(2,minmax(180px,.36fr)) auto;align-items:end;gap:14px;width:100%;margin:0 0 24px;padding:18px;display:grid}.business-live-field{gap:8px;display:grid}.business-live-filter label{color:var(--color-electric-cobalt);letter-spacing:.077em;text-transform:uppercase;font-size:13px;font-weight:900}.business-live-filter input,.business-live-filter select{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);width:100%;min-height:50px;color:var(--color-ink-charcoal);font:inherit;padding:0 16px;font-weight:800}.business-live-filter select{padding-right:44px}.business-live-filter input:focus,.business-live-filter select:focus{border-color:#0068f96b;outline:3px solid #0068f929}.business-filter-clear{min-height:50px;padding-inline:22px}.business-live-filter p{color:var(--color-slate-gray);grid-column:1/-1;justify-self:end;margin:0;font-size:15px;font-weight:800}.business-filter-panel>div,.business-list-hero,.business-detail-layout,.business-detail-facts,.business-detail-copy,.business-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:28px}.business-filter-panel>div{padding:24px}.business-filter-panel h2{margin:0 0 16px;font-size:24px}.business-filter-links{flex-wrap:wrap;gap:10px;display:flex}.business-filter-links a,.business-back-link,.business-detail-tags span{border:1px solid var(--color-hairline);background:var(--color-pure-white);width:max-content;color:var(--color-ink-charcoal);border-radius:999px;padding:9px 14px;font-weight:800;text-decoration:none;display:inline-flex}.business-filter-links a:hover,.business-back-link:hover{color:var(--color-electric-cobalt);border-color:#0068f94d}.business-directory-section{margin-top:56px}.business-section-heading{max-width:800px;margin-bottom:20px}.business-section-heading h2{margin:12px 0;font-size:clamp(38px,5vw,64px);line-height:.98}.business-section-heading p{color:var(--color-slate-gray);margin:0}.business-map{border:1px solid var(--color-hairline);background:var(--color-powder-blue);min-height:560px;box-shadow:var(--shadow-subtle);border-radius:28px;position:relative;overflow:hidden}.business-map-canvas{width:100%;min-height:560px}.business-map-status{z-index:2;border:1px solid var(--color-hairline);color:var(--color-slate-gray);box-shadow:var(--shadow-subtle);background:#ffffffeb;border-radius:999px;padding:10px 14px;font-weight:700;position:absolute;bottom:16px;left:16px}.business-map-status strong{color:var(--color-ink-charcoal)}.business-map-popup strong{color:var(--color-ink-charcoal);font-size:18px}.business-map-popup span{color:var(--color-electric-cobalt);font-weight:800}.business-map-popup p{color:var(--color-slate-gray);margin:8px 0 0}.business-map-popup a{color:var(--color-electric-cobalt);margin-top:10px;font-weight:800;text-decoration:none;display:inline-flex}.business-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.business-card{overflow:hidden}.business-card-image{background:linear-gradient(135deg, #0068f97a, #ffb0004d), var(--business-colour,var(--color-electric-cobalt));min-height:220px;color:var(--color-pure-white);text-decoration:none;display:block;position:relative;overflow:hidden}.business-card-image img{width:100%;height:100%;min-height:inherit;object-fit:cover;display:block}.business-card-image:after{content:"";background:linear-gradient(#12172200 38%,#12172275 100%);position:absolute;inset:0}.business-card-image>span{z-index:2;font-size:44px;font-weight:800;position:absolute;bottom:18px;left:18px}.business-card-image .hidden-gem-badge{z-index:2;background:linear-gradient(135deg, #ffe889 0%, var(--color-sun-gold) 48%, var(--color-deep-gold) 100%);min-height:38px;color:var(--color-ink-charcoal);letter-spacing:.04em;text-transform:uppercase;border:2px solid #ffffffc7;border-radius:999px;align-items:center;gap:7px;padding:6px 12px 6px 7px;font-size:12px;font-style:normal;font-weight:900;line-height:1;display:inline-flex;position:absolute;top:14px;right:14px;box-shadow:0 14px 28px #12172247,inset 0 1px #ffffff9e}.business-card-image .hidden-gem-badge svg{background:var(--color-ink-charcoal);width:24px;height:24px;color:var(--color-sun-gold);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;border-radius:50%;flex:0 0 24px;padding:5px}.business-card-image .hidden-gem-badge span{white-space:nowrap}.business-card-body{padding:20px}.business-card-kicker{flex-wrap:wrap;gap:8px;display:flex}.business-card-kicker a{color:var(--color-electric-cobalt);text-transform:uppercase;font-size:13px;font-weight:900;text-decoration:none}.business-card h3{margin:12px 0 10px;font-size:30px;line-height:1}.business-card h3 a{color:var(--color-ink-charcoal);text-decoration:none}.business-card h3 a:hover{color:var(--color-electric-cobalt)}.business-card-signals{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.business-card-signals .hygiene-rating-badge{margin-bottom:0}.business-card-votes{max-width:100%;min-height:38px;color:var(--color-electric-cobalt);background:linear-gradient(135deg,#0068f917,#ffffffeb);border:1px solid #0068f92e;border-radius:999px;align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:900;line-height:1;display:inline-flex}.business-card-votes svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;flex:0 0 17px;width:17px;height:17px}.business-card-votes strong{color:var(--color-electric-cobalt);font-size:16px;line-height:1}.business-card-votes span{overflow-wrap:anywhere;min-width:0}.business-card p,.business-card dd{color:var(--color-slate-gray)}.hygiene-rating-badge{width:max-content;max-width:100%;color:var(--color-ink-charcoal);background:linear-gradient(135deg,#0466451a,#ffffffeb);border:1px solid #0466452e;border-radius:16px;grid-template-columns:auto auto;align-items:center;gap:3px 10px;margin:0 0 14px;padding:10px 12px;display:inline-grid}.hygiene-rating-badge span{color:var(--color-slate-gray);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.hygiene-rating-badge strong{color:#046645;font-size:22px;line-height:1}.hygiene-rating-badge em{color:#046645;letter-spacing:.08em;font-size:13px;font-style:normal;font-weight:900}.hygiene-rating-badge small{color:var(--color-slate-gray);grid-column:1/-1;font-size:12px;font-weight:800}.hygiene-rating-badge.is-compact{border-radius:999px;flex-wrap:wrap;gap:8px;margin-bottom:12px;padding:8px 10px;display:inline-flex}.hygiene-rating-badge.is-compact strong{font-size:16px}.hygiene-rating-badge.is-ok{background:linear-gradient(135deg,#0068f91a,#ffffffeb);border-color:#0068f933}.hygiene-rating-badge.is-ok strong,.hygiene-rating-badge.is-ok em{color:var(--color-electric-cobalt)}.hygiene-rating-badge.is-low{background:linear-gradient(135deg,#e24a331f,#ffffffeb);border-color:#e24a333d}.hygiene-rating-badge.is-low strong,.hygiene-rating-badge.is-low em{color:#c83c28}.hygiene-rating-badge.is-unrated{background:linear-gradient(135deg,#777c861a,#ffffffeb);border-color:#777c8638}.hygiene-rating-badge.is-unrated strong,.hygiene-rating-badge.is-unrated em{color:var(--color-slate-gray)}.business-card dl{gap:10px;margin:18px 0 0;display:grid}.business-card dl div{border-top:1px solid var(--color-hairline);padding-top:10px}.business-card dt,.business-detail-facts dt{color:var(--color-slate-gray);text-transform:uppercase;font-size:13px;font-weight:900}.business-card dd,.business-detail-facts dd{margin:4px 0 0;font-weight:800}.business-list-hero{background:radial-gradient(circle at 90% 14%,#ffb0003d,#0000 28%),linear-gradient(135deg,#fbfaf7 0%,#d6e4f1 100%);margin-top:0;padding:clamp(112px,10vw,150px) clamp(24px,5vw,72px) 44px}.business-detail-hero{background:radial-gradient(circle at 84% 18%, color-mix(in srgb, var(--business-colour,#0068f9) 28%, transparent), transparent 30%), linear-gradient(135deg, #fbfaf7 0%, #f4f0ff 46%, #d6e4f1 100%);border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,.85fr) minmax(320px,.7fr);align-items:end;gap:20px;padding:clamp(112px,10vw,150px) clamp(24px,5vw,72px) 44px;display:grid}.business-detail-tags{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.business-detail-tags span{background:#ffffffc7}.business-detail-image{background:var(--business-colour,var(--color-electric-cobalt));min-height:420px;box-shadow:var(--shadow-subtle);border-radius:28px;position:relative;overflow:hidden}.business-detail-image img{width:100%;height:100%;min-height:inherit;object-fit:cover;display:block}.business-detail-image span{background:var(--color-pure-white);text-transform:uppercase;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:900;position:absolute;top:16px;right:16px}.business-detail-layout{box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);gap:16px;margin-top:24px;display:grid}.business-detail-copy,.business-detail-facts{padding:clamp(24px,4vw,42px)}.business-detail-copy{font-size:20px;line-height:1.65}.business-detail-copy p{margin:0}.business-image-gallery{border-top:1px solid var(--color-hairline);gap:18px;margin-top:clamp(28px,5vw,48px);padding-top:clamp(24px,4vw,36px);display:grid}.business-gallery-heading{gap:6px;display:grid}.business-gallery-heading h2{margin:0;font-size:clamp(28px,4vw,40px);line-height:1.12}.business-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.business-gallery-thumb{aspect-ratio:4/3;border:1px solid var(--color-hairline);background:var(--color-pure-white);box-shadow:var(--shadow-subtle);cursor:pointer;border-radius:16px;padding:0;display:block;overflow:hidden}.business-gallery-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .18s;display:block}.business-gallery-thumb:hover img,.business-gallery-thumb:focus-visible img{transform:scale(1.04)}.business-gallery-thumb:focus-visible{outline-offset:3px;outline:3px solid #0068f957}.business-gallery-lightbox{background:var(--color-pure-white);width:min(1040px,100vw - 32px);max-height:calc(100vh - 32px);color:var(--color-ink-charcoal);border:0;border-radius:24px;padding:0;box-shadow:0 30px 90px #12172257}.business-gallery-lightbox::backdrop{backdrop-filter:blur(8px);background:#121722b8}.business-gallery-lightbox figure{gap:0;margin:0;display:grid}.business-gallery-lightbox img{object-fit:contain;background:#121722;width:100%;max-height:min(76vh,760px);display:block}.business-gallery-lightbox figcaption{color:var(--color-slate-gray);padding:14px 18px 18px;font-size:15px;font-weight:800}.business-gallery-close{z-index:2;color:#fff;cursor:pointer;background:#121722b8;border:1px solid #ffffff70;border-radius:999px;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:14px;right:14px;box-shadow:0 14px 28px #1217223d}.business-gallery-close span{font-size:32px;line-height:.8}.business-detail-facts h2{margin:0 0 16px;font-size:28px}.business-detail-facts dl{gap:14px;margin:0;display:grid}.business-detail-facts div{border-top:1px solid var(--color-hairline);padding-top:14px}.business-detail-facts a{color:var(--color-electric-cobalt);text-decoration:none}.business-detail-facts a:hover{text-decoration:underline}.business-rating{background:linear-gradient(135deg, #0068f917, #ffffffeb), var(--color-pure-white);box-shadow:var(--shadow-subtle);border:1px solid #0068f924;border-radius:24px;gap:18px;margin:0 0 24px;padding:20px;display:grid}.business-detail-facts .business-rating,.business-detail-facts .business-rating div{border-top:0;padding-top:0}.business-rating h2{margin:8px 0;font-size:26px;line-height:1.05}.business-rating p{color:var(--color-slate-gray);margin:0;font-weight:700}.business-rating-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.business-rating-button{border-radius:var(--radius-pill);background:var(--color-electric-cobalt);min-height:50px;color:var(--color-pure-white);cursor:pointer;border:1px solid #0068f92e;align-items:center;gap:10px;padding:10px 18px 10px 12px;font-weight:900;transition:transform .14s,background .14s,box-shadow .14s;display:inline-flex;box-shadow:0 14px 26px #0068f933}.business-rating-button:hover:not(:disabled){background:var(--color-deep-cobalt);transform:translateY(-1px);box-shadow:0 18px 34px #0068f93d}.business-rating-button:disabled{cursor:default;opacity:.78}.business-rating-button[aria-pressed=true]{background:var(--color-forest);box-shadow:0 14px 26px #0466452e}.business-rating-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:24px;height:24px}.business-rating-actions strong{border:1px solid var(--color-hairline);min-height:44px;color:var(--color-ink-charcoal);background:#ffffffd1;border-radius:999px;align-items:center;padding:8px 14px;font-size:18px;line-height:1;display:inline-flex}.business-rating-status{min-height:22px;font-size:14px}.business-social-button{color:#fff;border-radius:999px;align-items:center;gap:10px;width:max-content;max-width:100%;padding:10px 15px 10px 10px;font-weight:900;text-decoration:none;transition:transform .16s,box-shadow .16s;display:inline-flex;box-shadow:0 12px 24px #34547b29}.business-social-button span{background:#fff3;border-radius:999px;place-items:center;width:32px;height:32px;display:grid}.business-social-button svg{fill:currentColor;width:21px;height:21px}.business-social-button.is-facebook{background:#1877f2}.business-social-button.is-instagram{background:linear-gradient(135deg,#833ab4 0%,#e1306c 45%,#fcb045 100%)}.business-social-button.is-x{background:#111}.business-social-button.is-generic{background:var(--color-electric-cobalt)}.business-detail-facts .business-social-button,.business-detail-facts .business-social-button:hover{color:#fff;text-decoration:none}.business-detail-facts .business-social-button:hover{transform:translateY(-1px);box-shadow:0 16px 30px #34547b38}.hygiene-summary-panel{background:linear-gradient(135deg, #0068f91f, #fffffff0), var(--color-pure-white);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.hygiene-summary-panel>div{border:1px solid var(--color-hairline);background:#ffffffd1;border-radius:18px;align-content:start;min-height:154px;padding:20px;display:grid}.hygiene-summary-panel strong{color:var(--color-electric-cobalt);margin:10px 0 6px;font-size:clamp(38px,5vw,64px);line-height:.95;display:block}.hygiene-summary-panel p{margin:0}.hygiene-map-panel{margin-top:18px}.food-hygiene-map{gap:18px;display:grid}.food-map-controls{border:1px solid var(--color-hairline);background:linear-gradient(135deg, #fffffff5, #ebf7ffb8), var(--color-pure-white);box-shadow:var(--shadow-subtle);border-radius:28px;gap:14px;padding:clamp(16px,2vw,24px);display:grid}.hygiene-timeline{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:22px;grid-template-columns:minmax(180px,.35fr) minmax(160px,.25fr) minmax(220px,1fr);align-items:center;gap:14px;padding:18px;display:grid}.hygiene-timeline input{grid-column:1/-1;width:100%}.hygiene-trend-chart{border:1px solid var(--color-hairline);background:var(--color-pure-white);border-radius:16px;align-items:end;gap:5px;height:78px;padding:10px 12px;display:flex}.hygiene-trend-chart span{min-width:8px;height:var(--bar-height);background:linear-gradient(180deg, var(--color-electric-cobalt), var(--color-deep-cobalt));border-radius:999px 999px 4px 4px;flex:1}.hygiene-filter-row{max-height:none;overflow:auto}.hygiene-filter-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.hygiene-filter-group{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:22px;gap:10px;padding:16px;display:grid}.hygiene-filter-group>div{flex-wrap:wrap;gap:8px;display:flex}.hygiene-filter-group button{border:1px solid var(--color-hairline);border-radius:var(--radius-pill);background:var(--color-pure-white);min-height:40px;color:var(--color-ink-charcoal);cursor:pointer;padding:8px 13px;font-weight:700}.hygiene-filter-group button strong{color:var(--color-electric-cobalt);margin-left:6px}.hygiene-filter-group button.is-active{color:var(--color-electric-cobalt);background:#0068f91a;border-color:#0068f957}.food-map-lower{grid-template-columns:minmax(280px,.38fr) minmax(0,1fr);align-items:stretch;gap:18px;display:grid}.food-map-lower .map-feature-copy{width:auto;min-height:100%;margin:0}.food-map-frame{border:1px solid var(--color-hairline);background:var(--color-powder-blue);min-height:720px;box-shadow:var(--shadow-subtle);border-radius:24px;position:relative;overflow:hidden}.food-map-canvas{width:100%;min-height:720px}.food-map-status,.food-map-legend{z-index:2;border:1px solid var(--color-hairline);color:var(--color-slate-gray);box-shadow:var(--shadow-subtle);backdrop-filter:blur(10px);background:#ffffffeb;position:absolute}.food-map-status{border-radius:999px;padding:10px 14px;font-weight:700;bottom:16px;left:16px}.food-map-status strong{color:var(--color-ink-charcoal)}.food-map-legend{border-radius:18px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:800;display:flex;bottom:16px;right:16px}.food-map-legend span{align-items:center;gap:6px;display:inline-flex}.food-map-legend i{border-radius:999px;width:12px;height:12px}.rating-5{background:var(--color-forest)}.rating-3{background:var(--color-electric-cobalt)}.rating-low{background:#e24a33}.rating-other{background:var(--color-slate-gray)}.hygiene-popup{min-width:260px}.hygiene-popup header{gap:4px;margin-bottom:12px;display:grid}.hygiene-popup header strong{color:var(--color-ink-charcoal);font-size:20px;line-height:1.1}.hygiene-popup header span{color:var(--color-slate-gray);font-weight:700}.hygiene-popup-rating{background:color-mix(in srgb, var(--rating-colour) 12%, white);color:var(--rating-colour);border-radius:16px;gap:4px;margin-bottom:12px;padding:12px;display:grid}.hygiene-popup-rating b{font-size:28px;line-height:1}.hygiene-popup-rating span{color:var(--rating-colour);letter-spacing:.04em;font-size:20px}.hygiene-popup dl{gap:8px;margin:0;display:grid}.hygiene-popup div:not(.hygiene-popup-rating){gap:2px;display:grid}.hygiene-popup dt{color:var(--color-slate-gray);text-transform:uppercase;font-size:12px;font-weight:900}.hygiene-popup dd{color:var(--color-ink-charcoal);margin:0;font-weight:700}.hygiene-rating-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.hygiene-rating-grid article{border:1px solid var(--color-hairline);background:var(--color-pure-white);border-radius:18px;gap:10px;padding:18px;display:grid}.hygiene-rating-grid span{color:var(--color-slate-gray);font-weight:800}.hygiene-rating-grid strong{color:var(--color-electric-cobalt);font-size:34px;line-height:1}.hygiene-rating-grid article div{background:var(--color-hairline);border-radius:999px;height:9px;overflow:hidden}.hygiene-rating-grid article div:before{width:var(--rating-share);border-radius:inherit;background:var(--color-electric-cobalt);content:"";height:100%;display:block}.events-page{gap:28px;display:grid;overflow:hidden}.events-hero{background:radial-gradient(circle at 74% 18%,#ffc92847,#0000 26%),linear-gradient(120deg,#fffffff2 0%,#f7fbffe0 48%,#d6e4f1db 100%),url(/images/fylde-coast-hero.jpg) 50%/cover}.events-hero-visual{background:linear-gradient(#244a7800,#244a7842),url(/images/blackpool-data-hero-1200.webp) 50%/cover}.events-summary-grid,.events-filter-panel,.events-list-section,.events-source-panel{width:min(1760px,100% - 32px);margin-left:auto;margin-right:auto}.events-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.events-summary-grid .panel{align-content:start;min-height:180px;display:grid}.events-summary-grid strong{color:var(--color-electric-cobalt);margin:12px 0 8px;font-size:clamp(26px,3vw,42px);line-height:1.04;display:block}.events-filter-panel{background:linear-gradient(135deg, #0068f91a, #fffffff5), var(--color-pure-white);gap:18px;display:grid}.events-filters{grid-template-columns:minmax(220px,1.3fr) repeat(3,minmax(180px,.7fr));gap:12px;display:grid}.events-filters label{color:var(--color-slate-gray);letter-spacing:.08em;text-transform:uppercase;gap:8px;font-size:13px;font-weight:900;display:grid}.events-filters input,.events-filters select{border:1px solid var(--color-hairline);background:var(--color-pure-white);width:100%;min-height:52px;color:var(--color-ink-charcoal);font:inherit;letter-spacing:0;text-transform:none;border-radius:18px;padding:0 16px;font-size:16px;font-weight:800}.events-map{border:1px solid var(--color-hairline);background:var(--color-powder-blue);min-height:620px;box-shadow:var(--shadow-subtle);border-radius:28px;position:relative;overflow:hidden}.events-map-image{min-height:220px;box-shadow:var(--shadow-subtle);background:linear-gradient(#12172200,#1217223d),url(/images/blackpool-data-hero-1200.webp) 50%/cover;border:1px solid #ffffffb3;border-radius:24px;margin:22px 0;overflow:hidden}.events-map-canvas{width:100%;min-height:620px}.events-map-status{z-index:2;border:1px solid var(--color-hairline);color:var(--color-slate-gray);box-shadow:var(--shadow-subtle);background:#ffffffeb;border-radius:999px;padding:10px 14px;font-weight:700;position:absolute;bottom:16px;left:16px}.events-map-status strong{color:var(--color-ink-charcoal)}.events-map-popup{gap:8px;min-width:270px;display:grid}.events-map-popup>strong{color:var(--color-ink-charcoal);font-size:20px;line-height:1.1}.events-map-popup>span,.events-map-popup p{color:var(--color-slate-gray);margin:0;font-weight:700}.events-map-popup ul{gap:8px;max-height:210px;margin:4px 0 0;padding:0;list-style:none;display:grid;overflow:auto}.events-map-popup li{background:var(--color-surface-ivory);border-radius:14px;gap:2px;padding:10px;display:grid}.events-map-popup li strong{color:var(--color-ink-charcoal)}.events-map-popup li span{color:var(--color-electric-cobalt);font-size:13px;font-weight:900}.events-list-section{gap:18px;display:grid}.events-list-meta{color:var(--color-slate-gray);font-size:15px;font-weight:800}.events-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.event-card{border:1px solid var(--color-hairline);background:var(--color-pure-white);color:var(--color-ink-charcoal);box-shadow:var(--shadow-subtle);border-radius:28px;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s;display:block;overflow:hidden}.event-card:hover{border-color:#0068f947;transform:translateY(-3px);box-shadow:0 18px 42px #34547b29}.event-card:focus-visible{outline-offset:3px;outline:3px solid #0068f957}.event-card[hidden]{display:none}.event-card img{aspect-ratio:1.25;object-fit:cover;background:var(--color-powder-blue);width:100%;display:block}.event-card>div{gap:14px;padding:20px;display:grid}.event-card-kicker{color:var(--color-electric-cobalt);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:900}.event-card h3{margin:0;font-size:clamp(24px,2vw,32px);line-height:1}.event-card p{color:var(--color-slate-gray);margin:0}.event-card dl{gap:10px;margin:0;display:grid}.event-card dl div{border-top:1px solid var(--color-hairline);padding-top:10px}.event-card dt{color:var(--color-slate-gray);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:900}.event-card dd{color:var(--color-ink-charcoal);margin:4px 0 0;font-weight:800}.events-map-popup li a{color:var(--color-ink-charcoal);text-decoration:none}.events-map-popup li a:hover{color:var(--color-electric-cobalt)}.event-detail-image .event-image-fallback{color:var(--color-pure-white);text-align:center;text-transform:none;background:linear-gradient(135deg,#6736ebeb,#0068f9d1);border-radius:0;place-items:center;padding:24px;font-size:clamp(28px,5vw,52px);line-height:1;display:grid;inset:0}.event-detail-copy>h2{margin:10px 0 18px;font-size:clamp(34px,4vw,52px);line-height:1.02}.event-performance-section{border-top:1px solid var(--color-hairline);gap:22px;margin-top:38px;padding-top:34px;display:grid}.event-performance-section h2{margin:8px 0 6px;font-size:clamp(30px,4vw,44px);line-height:1.05}.event-performance-section p{color:var(--color-slate-gray);font-size:16px}.event-performance-list{gap:10px;max-height:520px;margin:0;padding:0 8px 0 0;list-style:none;display:grid;overflow-y:auto}.event-performance-list li{border:1px solid var(--color-hairline);background:var(--color-surface-ivory);border-radius:18px;gap:6px;padding:16px 18px;display:grid}.event-performance-list li.is-next{background:linear-gradient(135deg,#6736eb1a,#fffffff5);border-color:#6736eb47}.event-performance-list time{color:var(--color-ink-charcoal);font-size:17px;font-weight:900}.event-performance-list span{color:#6736eb;letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:900}.event-detail-actions{gap:10px;margin-top:24px;display:grid}.business-detail-facts .event-detail-actions a,.business-detail-facts .event-calendar-actions a{text-decoration:none}.business-detail-facts .event-detail-actions .button.primary{color:var(--color-pure-white)}.event-calendar-panel{background:linear-gradient(145deg,#6736eb17,#fffffff5);border:1px solid #6736eb2e;border-radius:24px;gap:12px;margin-top:26px;padding:22px;display:grid}.business-detail-facts .event-calendar-panel{border-top:1px solid #6736eb2e;padding-top:22px}.event-calendar-panel h2{margin:0;font-size:28px;line-height:1.05}.event-calendar-panel p{color:var(--color-slate-gray);margin:0;font-size:14px;line-height:1.5}.event-calendar-actions{gap:9px;display:grid}.calendar-button{border-radius:14px;align-items:center;min-height:48px;padding:11px 15px;font-weight:900;display:flex;color:var(--color-pure-white)!important}.calendar-button.is-google{background:#356fe0}.calendar-button.is-outlook{background:#0067b8}.calendar-button.is-ics{background:#046645}.calendar-button:hover{filter:brightness(.93)}.event-detail-more{margin-bottom:56px}.events-empty{border:1px solid var(--color-hairline);background:var(--color-pure-white);color:var(--color-slate-gray);border-radius:24px;padding:22px;font-size:18px;font-weight:800}.events-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:8px;display:flex}.events-pagination[hidden]{display:none}.events-page-buttons{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.events-page-button{border:1px solid var(--color-hairline);background:var(--color-pure-white);min-width:44px;min-height:44px;color:var(--color-ink-charcoal);cursor:pointer;font:inherit;box-shadow:var(--shadow-subtle);border-radius:999px;justify-content:center;align-items:center;font-weight:900;display:inline-flex}.events-page-button[aria-current=page]{border-color:var(--color-electric-cobalt);background:var(--color-electric-cobalt);color:var(--color-pure-white)}.events-pagination .button:disabled,.events-page-button:disabled{cursor:not-allowed;opacity:.45}.business-pagination{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:22px;display:flex}.business-pagination[hidden]{display:none}.business-page-buttons{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.business-page-button{border:1px solid var(--color-hairline);background:var(--color-pure-white);min-width:44px;min-height:44px;color:var(--color-ink-charcoal);cursor:pointer;font:inherit;box-shadow:var(--shadow-subtle);border-radius:999px;justify-content:center;align-items:center;font-weight:900;text-decoration:none;display:inline-flex}.business-page-button:hover{color:var(--color-electric-cobalt);border-color:#0068f94d}.business-page-button[aria-current=page]{border-color:var(--color-electric-cobalt);background:var(--color-electric-cobalt);color:var(--color-pure-white)}.business-page-button[aria-current=page]:hover{color:var(--color-pure-white)}.business-pagination .button:disabled,.business-pagination .button[aria-disabled=true],.business-page-button:disabled{cursor:not-allowed;opacity:.45}.events-source-panel{grid-template-columns:minmax(0,.8fr) minmax(320px,1fr);align-items:start;gap:20px;display:grid}.events-source-list{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.history-page{overflow:hidden}.history-hero{isolation:isolate;background:linear-gradient(115deg,#fffffff5 0%,#f7fbffe6 44%,#1217222e 100%),url(/images/fylde-coast-hero.jpg) 50%/cover;border:1px solid #d6e4f1d6;border-radius:36px;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:center;gap:clamp(24px,4.4vw,64px);width:min(1760px,100% - 32px);min-height:760px;margin:0 auto;padding:clamp(116px,9vw,148px) clamp(18px,4vw,56px) 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px #34547b21}.history-hero:before,.history-hero:after{content:"";pointer-events:none;position:absolute}.history-hero:before{z-index:-1;background:linear-gradient(100deg,#0000 0 42%,#ffc92829 42% 45%,#0000 45% 100%),linear-gradient(108deg,#0000 0 56%,#0068f924 56% 59%,#0000 59% 100%);animation:12s ease-in-out infinite alternate history-light-sweep;inset:0}.history-hero:after{z-index:-1;background:radial-gradient(at 16% 62%,#0068f924,#0000 34%),linear-gradient(#0000,#faf9f7f5);height:42%;inset:auto -8% -2px}.history-hero-copy{z-index:2;position:relative}.history-hero h1{color:#244a78;letter-spacing:0;text-wrap:balance;max-width:840px;margin:12px 0 22px;font-size:clamp(48px,7vw,92px);font-weight:700;line-height:.98}.history-hero p{color:#34547b;max-width:710px;margin:0;font-size:clamp(17px,1.7vw,21px);line-height:1.5}.history-hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.history-hero-stage{z-index:2;min-height:560px;position:relative}.history-collage{position:absolute;inset:8px}.history-collage-card{background-size:cover;border:1px solid #ffffffb8;border-radius:28px;display:block;position:absolute;overflow:hidden;box-shadow:0 24px 58px #34547b38}.history-collage-card:after{content:"";background:linear-gradient(#12172200,#1217224d);position:absolute;inset:0}.history-collage-card.is-blackpool{background-image:url(/images/blackpool-data-hero-1200.webp);background-position:48% 52%;animation:8s ease-in-out infinite history-float-a;inset:2% 22% 34% 0}.history-collage-card.is-fleetwood{background-image:url(/images/fleetwood-hero-20260716-optimized.webp);background-position:50%;animation:9s ease-in-out infinite history-float-b;inset:18% 0 20% 48%}.history-collage-card.is-lytham{background-image:url(/images/lytham-hero-20260716-optimized.webp);background-position:50%;animation:10s ease-in-out infinite reverse history-float-b;inset:58% 40% 0 8%}.history-collage-card.is-st-annes{background-image:url(/images/st-annes-hero-20260716-optimized.webp);background-position:50%;animation:7.5s ease-in-out infinite reverse history-float-a;inset:68% 6% 4% 58%}.history-orbit{border:1px solid #ffffff73;border-radius:999px;animation:22s linear infinite history-orbit;position:absolute;inset:8%}.history-orbit span{width:76px;height:76px;color:var(--color-electric-cobalt);box-shadow:var(--shadow-subtle);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #ffffffb3;border-radius:999px;place-items:center;font-size:15px;font-weight:900;display:grid;position:absolute}.history-orbit span:first-child{top:-38px;left:44%}.history-orbit span:nth-child(2){top:40%;right:-38px}.history-orbit span:nth-child(3){bottom:-38px;left:46%}.history-orbit span:nth-child(4){top:42%;left:-38px}.history-hero-ribbon{z-index:3;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px;display:grid;position:relative}.history-hero-ribbon article,.history-feature-panel,.history-timeline-card,.history-chapter-card,.history-spotlight-copy,.history-source-grid article{box-shadow:var(--shadow-subtle);background:#ffffffdb;border:1px solid #d6e4f1db}.history-hero-ribbon article{backdrop-filter:blur(10px);border-radius:18px;min-height:134px;padding:18px}.history-hero-ribbon span,.history-hero-ribbon small{color:var(--color-slate-gray);font-size:13px;font-weight:700;display:block}.history-hero-ribbon strong{color:var(--color-electric-cobalt);margin:10px 0 4px;font-size:clamp(36px,4vw,52px);line-height:1;display:block}.history-section{width:min(1760px,100% - 32px);margin:0 auto;padding:clamp(38px,5vw,70px) 0}.history-intro-grid,.history-spotlight,.history-source-panel{grid-template-columns:minmax(0,.86fr) minmax(320px,1.14fr);align-items:stretch;gap:18px;display:grid}.history-feature-panel,.history-spotlight-copy{border-radius:28px;align-content:center;padding:clamp(26px,4vw,48px);display:grid}.history-feature-panel h2,.history-spotlight-copy h2,.history-source-panel h2{text-wrap:balance;max-width:840px;margin:10px 0 16px;font-size:clamp(38px,5vw,66px);line-height:1.03}.history-feature-panel p,.history-spotlight-copy p,.history-source-panel>div>p{color:#34547b;max-width:760px;margin:0;font-size:clamp(16px,1.5vw,19px)}.history-timeline{gap:18px;width:min(1180px,100%);margin:0 auto;display:grid;position:relative}.history-timeline-track{background:#d6e4f1cc;border-radius:999px;width:4px;position:absolute;top:0;bottom:0;left:132px;overflow:hidden}.history-timeline-track span{border-radius:inherit;background:linear-gradient(180deg, var(--color-electric-cobalt), var(--color-sun-gold));transform-origin:top;width:100%;height:100%;display:block;transform:scaleY(0)}.history-timeline-card{border-radius:28px;grid-template-columns:280px minmax(0,1fr);align-items:stretch;gap:24px;min-height:220px;padding:16px;display:grid;position:relative}.history-year{color:var(--color-pure-white);text-align:center;background:linear-gradient(#1217220a,#12172257),url(/images/fylde-coast-hero.jpg) 50%/cover;border-radius:22px;align-content:center;place-items:center;gap:8px;text-decoration:none;display:grid;box-shadow:inset 0 0 0 1px #ffffff42}.history-year span{text-shadow:0 2px 18px #0006;font-size:clamp(42px,5vw,66px);font-weight:900;line-height:.92}.history-year small{color:var(--color-ink-charcoal);text-transform:uppercase;background:#ffffffe0;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.history-timeline-copy{align-content:center;padding:clamp(16px,3vw,28px);display:grid}.history-timeline-copy p:first-child{color:var(--color-electric-cobalt);letter-spacing:.077em;text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:900}.history-timeline-copy h3{margin:0 0 12px;font-size:clamp(28px,3vw,44px);line-height:1.04}.history-timeline-copy p:not(:first-child){max-width:760px;color:var(--color-slate-gray);margin:0;font-size:17px}.history-timeline-copy a,.history-source-grid a{width:max-content;max-width:100%;color:var(--color-electric-cobalt);margin-top:18px;font-weight:900;text-decoration:none}.history-timeline-copy a:hover,.history-source-grid a:hover{color:var(--color-deep-cobalt);text-decoration:underline}.history-timeline-copy small{width:max-content;max-width:100%;color:var(--color-electric-cobalt);background:#0068f917;border-radius:999px;margin-top:18px;padding:8px 11px;font-size:13px;font-weight:900}.history-chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.history-chapter-card{border-radius:28px;grid-template-columns:minmax(260px,.74fr) minmax(0,1fr);min-height:430px;display:grid;overflow:hidden}.history-chapter-card:first-child{grid-column:1/-1;grid-template-columns:minmax(420px,1.05fr) minmax(0,.95fr);min-height:500px}.history-chapter-image{background-image:linear-gradient(180deg, #12172200, #12172266), var(--chapter-image);background-position:50%;background-size:cover;min-height:100%;transition:transform .22s}.history-chapter-card:hover .history-chapter-image{transform:scale(1.02)}.history-chapter-copy{align-content:center;padding:clamp(24px,4vw,44px);display:grid}.history-chapter-copy span{color:var(--history-accent);letter-spacing:.077em;text-transform:uppercase;font-size:13px;font-weight:900}.history-chapter-copy h3{margin:10px 0 4px;font-size:clamp(34px,5vw,64px);line-height:.98}.history-chapter-copy h4{color:#34547b;margin:0 0 16px;font-size:clamp(22px,2vw,30px);line-height:1.1}.history-chapter-copy p{color:var(--color-slate-gray);margin:0;font-size:16px}.history-chapter-copy ul{gap:9px;margin:22px 0 0;padding:0;list-style:none;display:grid}.history-chapter-copy li{color:#34547b;padding-left:22px;font-weight:700;position:relative}.history-chapter-copy li:before{background:var(--history-accent);content:"";border-radius:999px;width:9px;height:9px;position:absolute;top:.65em;left:0}.history-spotlight-image{background:linear-gradient(#12172200,#1217226b),url(/images/blackpool-data-hero-1800.webp) 50%/cover;border:1px solid #ffffffbd;border-radius:32px;min-height:560px;overflow:hidden;box-shadow:0 24px 58px #34547b29}.history-spotlight-copy{background:radial-gradient(circle at 14% 18%,#ffc92833,#0000 30%),linear-gradient(135deg,#ffffffeb,#f4f0ffc7);border-color:#ffffffb3}.history-source-panel{align-items:start}.history-source-grid{gap:12px;display:grid}.history-source-grid article{border-radius:22px;gap:14px;padding:20px;display:grid}.history-source-grid h3{margin:0;font-size:22px;line-height:1.12}.history-source-grid dl{gap:10px;margin:0;display:grid}.history-source-grid dl div{border-bottom:1px solid var(--color-hairline);grid-template-columns:120px minmax(0,1fr);gap:12px;padding-bottom:10px;display:grid}.history-source-grid dl div:last-child{border-bottom:0;padding-bottom:0}.history-source-grid dt,.history-source-grid dd{margin:0}.history-source-grid dt{color:var(--color-slate-gray);text-transform:uppercase;font-size:13px;font-weight:900}.history-source-grid dd{color:#34547b;font-weight:700;line-height:1.45}.history-page{background:linear-gradient(180deg, #121722 0 940px, var(--color-canvas-cream) 940px 100%)}.history-hero{min-height:820px;color:var(--color-pure-white);background:linear-gradient(105deg,#121722f0 0 45%,#12172270 64%,#121722bd 100%),url(/images/history/fylde-district-map-1871.webp) 50%/cover;border-color:#ffffff29;box-shadow:0 38px 110px #12172257}.history-hero:before{z-index:0;mix-blend-mode:screen;background:linear-gradient(96deg,#0000 0 54%,#ffc928d6 54% 56%,#0000 56% 100%),linear-gradient(104deg,#0000 0 68%,#0068f9ad 68% 70%,#0000 70% 100%)}.history-hero:after{z-index:0;background:linear-gradient(180deg, transparent, #121722 72%, var(--color-canvas-cream))}.history-super{color:#ffd94f;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff47;border-radius:999px;width:max-content;max-width:100%;padding:9px 13px;font-size:13px;font-weight:950;display:inline-grid}.history-hero h1{color:var(--color-pure-white);text-shadow:0 12px 40px #00000057;font-size:clamp(56px,6vw,92px);font-weight:950}.history-hero p{color:#ffffffd1;font-size:clamp(18px,1.8vw,24px)}.history-hero .button.primary{background:var(--color-sun-gold);color:#121722;font-weight:900;box-shadow:0 18px 34px #ffc9283d}.history-hero .button.primary:hover{background:#ffdf63}.history-hero .button.ghost{color:var(--color-pure-white);backdrop-filter:blur(10px);background:#ffffff1f;border-color:#ffffff47}.history-hero-stage{perspective:1000px;min-height:620px}.history-archive-frame{background-position:50%;background-size:cover;border:1px solid #ffffff3d;border-radius:24px;margin:0;position:absolute;overflow:hidden;box-shadow:0 28px 80px #0000006b}.history-archive-frame:after{content:"";background:linear-gradient(#12172200 36%,#121722d1 100%),linear-gradient(115deg,#0068f91a,#ffc9281f);position:absolute;inset:0}.history-archive-frame>span,.history-archive-frame figcaption{z-index:2;position:absolute}.history-archive-frame>span{color:#121722;text-transform:uppercase;background:#ffffffe6;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:950;top:16px;left:16px}.history-archive-frame figcaption{color:var(--color-pure-white);gap:4px;display:grid;bottom:16px;left:16px;right:16px}.history-archive-frame figcaption strong{text-shadow:0 2px 18px #00000073;font-size:clamp(18px,2vw,28px);line-height:1.02}.history-archive-frame figcaption small{color:#ffffffb8;font-weight:800}.history-archive-frame.is-map{background-image:url(/images/history/fylde-district-map-1871.webp);background-position:44% 38%;animation:7s ease-in-out infinite history-pop-float-a;inset:0 15% 28% 0;transform:rotate(-4deg)translate(0,0)}.history-archive-frame.is-tower{background-image:url(/images/history/blackpool-tower-c1905.webp);background-position:50% 18%;animation:8s ease-in-out infinite history-pop-float-b;inset:18% 0 10% 50%;transform:rotate(5deg)translate(0,0)}.history-archive-frame.is-sands{background-image:url(/images/history/blackpool-sands-1895.webp);background-position:50%;animation:8.5s ease-in-out infinite history-pop-float-c;inset:58% 42% 0 9%;transform:rotate(3deg)translate(0,0)}.history-date-burst{z-index:4;grid-template-columns:repeat(2,minmax(82px,1fr));gap:8px;width:min(260px,42vw);display:grid;position:absolute;bottom:2%;right:4%;transform:rotate(-3deg)}.history-date-burst span{background:var(--color-sun-gold);color:#121722;border:1px solid #ffffff38;border-radius:16px;place-items:center;min-height:76px;font-size:clamp(24px,3vw,38px);font-weight:950;line-height:1;display:grid;box-shadow:0 18px 44px #00000047}.history-date-burst span:nth-child(2),.history-date-burst span:nth-child(3){background:var(--color-electric-cobalt);color:var(--color-pure-white)}.history-hero-ribbon article{backdrop-filter:blur(16px);background:#121722b8;border-color:#ffffff29}.history-hero-ribbon span,.history-hero-ribbon small{color:#ffffffad}.history-hero-ribbon strong{color:var(--color-sun-gold);font-weight:950}.history-intro-grid{align-items:stretch}.history-feature-panel{background:linear-gradient(135deg,#fffffff0,#f4f0ffd6);border-color:#ffffff2e}.history-map-room{min-height:520px}.history-map-frame{background:var(--color-ink-charcoal);border:1px solid #d6e4f1db;border-radius:28px;height:100%;min-height:520px;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 64px #34547b2e}.history-map-frame img{width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:45% 48%;filter:sepia(.1)saturate(1.12)contrast(1.05);display:block;transform:scale(1.04)}.history-map-frame:after{content:"";pointer-events:none;background:linear-gradient(#12172200 44%,#121722c2 100%),linear-gradient(90deg,#0068f91f,#0000 38%,#ffc92824);position:absolute;inset:0}.history-map-frame figcaption{z-index:2;color:#ffffffc7;backdrop-filter:blur(12px);background:#121722b8;border:1px solid #ffffff3d;border-radius:18px;padding:16px;font-weight:700;position:absolute;bottom:18px;left:18px;right:18px}.history-map-frame figcaption strong{color:var(--color-pure-white)}.history-timeline-section{position:relative}.history-spark-deck{color:var(--color-pure-white);background:linear-gradient(135deg,#121722eb,#0068f9e0),url(/images/history/blackpool-sands-1895.webp) 50%/cover;border-radius:28px;padding:clamp(24px,4vw,44px);position:relative;overflow:hidden;box-shadow:0 30px 86px #12172242}.history-spark-deck:before{aspect-ratio:1;background:repeating-conic-gradient(from 12deg, #ffc9283d 0 8deg, transparent 8deg 18deg);content:"";border:2px solid #ffc9286b;border-radius:50%;width:min(520px,58vw);animation:34s linear infinite history-orbit;position:absolute;inset:-18% -8% auto auto}.history-spark-deck .section-heading{z-index:1;text-align:center;width:min(980px,100%);margin-bottom:28px;display:block;position:relative}.history-spark-deck .section-heading:before,.history-spark-deck .section-heading:after{display:none}.history-spark-deck .eyebrow,.history-spark-card span{color:var(--color-sun-gold)}.history-spark-deck h2{color:var(--color-pure-white)}.history-spark-deck .section-heading p{color:#ffffffc2;max-width:740px;margin:14px auto 0;font-size:clamp(16px,1.5vw,20px);font-weight:700;line-height:1.45}.history-spark-controls{z-index:1;flex-wrap:wrap;gap:10px;margin:28px 0 22px;display:flex;position:relative}.history-spark-controls button{min-height:42px;color:var(--color-pure-white);cursor:pointer;backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff42;border-radius:999px;padding:9px 14px;font-weight:950;transition:transform .18s,background .18s,color .18s}.history-spark-controls button:hover{transform:translateY(-2px)}.history-spark-controls button[aria-pressed=true]{background:var(--color-sun-gold);color:#121722}.history-spark-grid{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid;position:relative}.history-spark-card{backdrop-filter:blur(12px);background:linear-gradient(#ffffff2e,#ffffff14);border:1px solid #fff3;border-radius:18px;gap:10px;min-height:270px;padding:18px;transition:opacity .22s,transform .22s,border-color .22s;display:grid;box-shadow:inset 0 0 0 1px #ffffff14}.history-spark-card:nth-child(3n+1){transform:rotate(-.5deg)}.history-spark-card:nth-child(3n+2){transform:rotate(.5deg)}.history-spark-card:hover{border-color:#ffc928ad;transform:translateY(-5px)rotate(0)}.history-spark-card[hidden]{display:none}.history-spark-card span{font-size:clamp(34px,4vw,54px);font-weight:950;line-height:.9}.history-spark-card small{color:#ffffffd6;text-transform:uppercase;background:#12172294;border-radius:999px;width:max-content;max-width:100%;padding:7px 10px;font-size:12px;font-weight:950}.history-spark-card h3{color:var(--color-pure-white);margin:0;font-size:clamp(22px,2vw,30px);line-height:1.02}.history-spark-card p{color:#ffffffc2;margin:0;font-weight:700}.history-spark-card em{color:#ffffff8a;align-self:end;font-size:12px;font-style:normal;font-weight:850}.history-time-machine{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);align-items:stretch;gap:18px;display:grid}.history-machine-copy,.history-machine-panel{border-radius:22px}.history-machine-copy{color:var(--color-pure-white);background:linear-gradient(135deg,#121722,#24324d);align-content:center;padding:clamp(24px,4vw,48px);display:grid;box-shadow:0 24px 70px #1217222e}.history-machine-copy .eyebrow{color:var(--color-sun-gold)}.history-machine-copy h2{color:var(--color-pure-white);margin:10px 0 16px;font-size:clamp(38px,5vw,70px);line-height:.98}.history-machine-copy p{color:#ffffffc2;max-width:560px;margin:0;font-size:clamp(17px,1.6vw,21px)}.history-machine-panel{background:linear-gradient(#ffc928d1,#fff),url(/images/history/fylde-district-map-1871-detail.webp) 50%/cover;gap:18px;min-height:520px;padding:clamp(22px,4vw,48px);display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #12172214,0 24px 70px #34547b29}.history-machine-panel:before{content:"";background:#0068f9d6;width:86px;position:absolute;inset:-30% auto -30% 8%;transform:rotate(12deg)}.history-machine-panel>*{z-index:1;position:relative}.history-machine-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.history-machine-topline span,.history-machine-topline strong,.history-machine-panel small{width:max-content;max-width:100%;color:var(--color-pure-white);text-transform:uppercase;background:#121722;border-radius:999px;padding:8px 11px;font-size:13px;font-weight:950}.history-machine-topline strong,.history-machine-panel small{background:var(--color-pure-white);color:#121722}.history-machine-year{color:#121722;text-shadow:0 3px #ffffffb8;font-size:clamp(74px,12vw,154px);font-weight:950;line-height:.78}.history-machine-panel h3{color:#121722;max-width:760px;margin:0;font-size:clamp(32px,5vw,66px);line-height:.98}.history-machine-panel p{color:#24324d;max-width:760px;margin:0;font-size:clamp(17px,1.7vw,21px);font-weight:700}.history-year-slider{width:100%;accent-color:var(--color-electric-cobalt)}.history-year-slider::-webkit-slider-runnable-track{background:linear-gradient(90deg, #121722, var(--color-electric-cobalt), var(--color-sun-gold));border-radius:999px;height:12px}.history-year-slider::-webkit-slider-thumb{border:4px solid var(--color-pure-white);background:var(--color-electric-cobalt);appearance:none;border-radius:999px;width:30px;height:30px;margin-top:-9px;box-shadow:0 8px 20px #12172257}.history-year-ticks{flex-wrap:wrap;gap:8px;display:flex}.history-year-ticks button{color:#121722;cursor:pointer;background:#12172217;border:0;border-radius:999px;min-height:40px;padding:8px 11px;font-weight:950}.history-year-ticks button[aria-current=true]{background:var(--color-electric-cobalt);color:var(--color-pure-white)}.history-timeline-card{background:linear-gradient(135deg, var(--color-pure-white), #fff8d7);border-color:#1217221a;transform:rotate(-.4deg)}.history-timeline-card:nth-child(2n){background:linear-gradient(135deg, #f4f0ff, var(--color-pure-white));transform:rotate(.4deg)}.history-timeline-card:hover{transform:translateY(-4px)rotate(0);box-shadow:0 28px 58px #34547b29}.history-year{background:linear-gradient(#1217220d,#1217228f),url(/images/history/fylde-district-map-1871-detail.webp) 50%/cover}.history-timeline-card:nth-child(3n) .history-year{background:linear-gradient(#12172200,#1217229e),url(/images/history/blackpool-tower-c1905.webp) 50% 18%/cover}.history-timeline-card:nth-child(4n) .history-year{background:linear-gradient(#12172200,#1217229e),url(/images/history/blackpool-sands-1895.webp) 50%/cover}.history-year span{color:var(--color-sun-gold);font-size:clamp(48px,6vw,78px)}.history-year small{background:var(--color-pure-white)}.history-chapter-card{border-radius:18px;box-shadow:0 18px 44px #34547b1f}.history-chapter-copy h3{font-weight:950}.history-archive-strip{padding-top:28px}.history-archive-grid{grid-template-columns:1.1fr .9fr 1fr;gap:18px;display:grid}.history-archive-card{min-height:560px;color:var(--color-pure-white);background:#121722;border:1px solid #ffffff2e;border-radius:22px;display:grid;overflow:hidden;box-shadow:0 28px 78px #34547b33}.history-archive-card a{min-height:330px;color:inherit;text-decoration:none;display:block;overflow:hidden}.history-archive-card img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:330px;transition:transform .24s;display:block}.history-archive-card:hover img{transform:scale(1.025)}.history-archive-card:first-child img{object-fit:contain;background:radial-gradient(circle,#ffffff14,#0000 64%),#0c1019;padding:18px}.history-archive-card:nth-child(2) img{object-position:center}.history-archive-card:nth-child(3) img{object-position:50% 18%}.history-archive-card.is-sands div{background-image:url(/images/history/blackpool-sands-1895.webp)}.history-archive-card.is-tower div{background-image:url(/images/history/blackpool-tower-c1905.webp);background-position:50% 12%}.history-archive-card.is-map div{background-image:url(/images/history/fylde-district-map-1871-detail.webp);background-position:42% 34%}.history-archive-card span,.history-archive-card h3,.history-archive-card p,.history-archive-card small{margin-left:22px;margin-right:22px}.history-archive-card span{background:var(--color-sun-gold);color:#121722;border-radius:999px;place-self:start;align-items:center;width:max-content;max-width:calc(100% - 44px);margin-top:22px;padding:8px 12px;font-size:13px;font-weight:950;line-height:1;display:inline-flex}.history-archive-card h3{margin-top:12px;margin-bottom:10px;font-size:clamp(28px,3vw,44px);line-height:1}.history-archive-card p{color:#ffffffbd;margin-top:0;margin-bottom:12px}.history-archive-card small{color:#ffffff94;margin-top:auto;margin-bottom:24px;font-size:13px;font-weight:800}.history-spotlight{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr)}.history-spotlight-copy{color:var(--color-pure-white);background:#121722;border-color:#1217221f}.history-spotlight-copy h2{color:var(--color-pure-white)}.history-spotlight-copy p{color:#ffffffb8}.history-spotlight-image{background:linear-gradient(#12172200,#12172247),url(/images/history/fylde-district-map-1871.webp) 40% 36%/cover}.history-source-panel{padding-bottom:0}@keyframes history-pop-float-a{0%,to{transform:rotate(-4deg)translate(0,0)}50%{transform:rotate(-2.6deg)translate(10px,-14px)}}@keyframes history-pop-float-b{0%,to{transform:rotate(5deg)translate(0,0)}50%{transform:rotate(3.4deg)translate(-8px,12px)}}@keyframes history-pop-float-c{0%,to{transform:rotate(3deg)translate(0,0)}50%{transform:rotate(4.2deg)translate(12px,8px)}}[data-history-reveal]{opacity:0;transition:opacity .52s,transform .52s;transform:translateY(24px)}[data-history-reveal].is-visible{opacity:1;transform:translateY(0)}.history-hero [data-history-reveal]{opacity:1;transform:none}@keyframes history-light-sweep{0%{transform:translate(-2%)}to{transform:translate(2%)}}@keyframes history-float-a{0%,to{transform:translate(0,0)rotate(-1deg)}50%{transform:translate(8px,-12px)rotate(1.2deg)}}@keyframes history-float-b{0%,to{transform:translate(0,0)rotate(1deg)}50%{transform:translate(-10px,10px)rotate(-1.4deg)}}@keyframes history-orbit{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.history-hero:before,.history-collage-card,.history-orbit,.history-archive-frame{animation:none}[data-history-reveal]{opacity:1;transition:none;transform:none}}@media (width<=980px){.history-hero,.history-intro-grid,.history-time-machine,.history-spotlight,.history-source-panel,.history-chapter-card,.history-chapter-card:first-child,.history-archive-grid{grid-template-columns:1fr}.history-archive-card{min-height:auto}.history-map-room,.history-map-frame,.history-machine-panel{min-height:460px}.history-hero{min-height:auto;padding-top:118px}.history-hero-stage{min-height:520px}.history-hero-ribbon,.history-chapter-grid,.history-spark-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-timeline-track{left:25px}.history-timeline-card{grid-template-columns:1fr;padding-left:56px}.history-year{min-height:180px}.history-chapter-image{min-height:320px}.gems-hero,.gems-feature,.business-hero,.business-filter-panel,.business-detail-hero,.business-detail-layout,.business-live-filter{grid-template-columns:1fr}.business-live-filter p{justify-self:start}.hygiene-summary-panel,.hygiene-filter-groups,.hygiene-rating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.events-summary-grid,.events-filters,.events-source-panel{grid-template-columns:1fr}.events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-map-lower,.hygiene-timeline{grid-template-columns:1fr}.gems-hero-copy,.gems-hero-art{min-height:auto}.gems-hero-art{min-height:320px}.business-hero{min-height:auto}.business-hero-visual{min-height:340px}.gems-grid,.business-grid,.business-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.history-hero,.history-section{width:calc(100% - 24px)}.history-hero{border-radius:28px;padding:104px 16px 18px}.history-hero h1{font-size:clamp(46px,14vw,68px)}.history-hero-stage{min-height:440px}.history-archive-frame>span{font-size:11px;top:10px;left:10px}.history-archive-frame figcaption{bottom:10px;left:10px;right:10px}.history-archive-frame.is-map{inset:0 8% 40% 0}.history-archive-frame.is-tower{inset:22% 0 16% 45%}.history-archive-frame.is-sands{inset:62% 28% 0 4%}.history-date-burst{width:min(210px,56vw);bottom:0;right:0}.history-date-burst span{min-height:58px}.history-collage-card.is-blackpool{inset:0 18% 42% 0}.history-collage-card.is-fleetwood{inset:22% 0 22% 42%}.history-collage-card.is-lytham{inset:58% 38% 0 4%}.history-collage-card.is-st-annes{inset:66% 4% 4% 54%}.history-orbit{display:none}.history-hero-ribbon,.history-chapter-grid,.history-spark-grid{grid-template-columns:1fr}.history-spark-deck{border-radius:22px;padding:22px 16px}.history-spark-controls{gap:7px;margin-top:22px}.history-spark-controls button{min-height:38px;padding:7px 10px;font-size:13px}.history-spark-card{min-height:auto}.history-map-room,.history-map-frame,.history-machine-panel{min-height:420px}.history-machine-copy,.history-machine-panel{padding:22px 16px}.history-year-ticks{gap:6px}.history-year-ticks button{min-height:36px;padding:7px 9px;font-size:13px}.history-timeline-card{border-radius:22px;padding:12px 12px 12px 46px}.history-timeline-track{left:18px}.history-year{min-height:150px}.history-timeline-copy{padding:8px 4px 10px}.history-chapter-card{min-height:auto}.history-chapter-image,.history-spotlight-image{min-height:280px}.history-source-grid dl div{grid-template-columns:1fr}.history-archive-card a,.history-archive-card img{min-height:260px}.gems-hero,.business-hero,.business-list-hero,.business-detail-hero{padding:28px 16px}.gems-hero-copy,.gems-hero-art,.gems-note,.gems-feature,.gems-map-section,.gems-list-section,.business-hero,.business-filter-panel,.business-live-filter,.business-directory-section,.business-list-hero,.business-detail-hero,.business-detail-layout{width:100%}.gems-hero h1{font-size:clamp(58px,22vw,96px)}.gems-note{display:grid}.gems-feature dl div,.gem-card dl div{grid-template-columns:1fr}.hidden-gems-map,.hidden-gems-map-canvas,.business-map,.business-map-canvas{min-height:520px}.hidden-gems-map-status,.business-map-status{border-radius:18px;left:12px;right:12px}.gems-grid,.business-grid{grid-template-columns:1fr}.business-detail-image{min-height:300px}.business-gallery-grid{grid-template-columns:1fr}.business-gallery-lightbox{border-radius:18px;width:calc(100vw - 20px)}.business-hero h1{font-size:clamp(44px,13vw,62px)}.hygiene-summary-panel,.hygiene-filter-groups,.hygiene-rating-grid,.events-grid{grid-template-columns:1fr}.events-summary-grid,.events-filter-panel,.events-list-section,.events-source-panel{width:100%}.events-map,.events-map-canvas{min-height:520px}.events-map-status{border-radius:18px;left:12px;right:12px}.food-map-frame,.food-map-canvas{min-height:620px}.food-map-status{text-align:center;border-radius:18px;width:auto;bottom:78px;left:12px;right:12px}.food-map-legend{justify-content:center;bottom:12px;left:12px;right:12px}.business-hero-visual{border-radius:24px;min-height:280px}.business-hero-stat{max-width:none;bottom:16px;left:16px;right:16px}.home-gems-strip{padding:24px 16px}.home-gem-slide{min-height:360px}.home-events-block{padding:22px 14px}.home-events-carousel{grid-auto-columns:minmax(220px,78vw)}.home-event-card{min-height:300px}}