@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,wght@0,400;0,500;0,600;1,400&family=Manrope:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,wght@0,400;0,500;0,600;1,400&family=Manrope:wght@400;500;600;700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght,SOFT,WONK@0,9..144,600..800,0..100,0..1;1,9..144,600..800,0..100,0..1&family=Caveat:wght@600;700&family=Manrope:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{color:#193e32;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f2e8;font-family:DM Sans,sans-serif}body{min-width:320px;min-height:100vh;margin:0}img{max-width:100%;display:block}:root{color:#193e32;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green:#123d31;--green-light:#245b48;--cream:#f7f2e8;--paper:#fffdf7;--sage:#dbe4d4;--muted:#6c786d;--line:#e5ddce;background:#f7f2e8;font-family:DM Sans,sans-serif}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.site-shell{overflow:hidden}.navbar{background:var(--green);color:#fffdf7;justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:16px 6.5%;display:flex}.brand{white-space:nowrap;align-items:center;gap:10px;font-family:Playfair Display,serif;font-size:20px;font-weight:600;display:inline-flex}.brand-mark{color:#d8c59e;font-size:29px}.nav-links{align-items:center;gap:30px;display:flex}.nav-links a{color:#e6e9df;font-size:13px;transition:color .2s}.nav-links a:hover{color:#e6cda0}.nav-cta{background:var(--cream);color:var(--green);border-radius:6px;padding:12px 18px;font-size:13px;font-weight:700}.nav-cta span{margin-left:10px}.tour-trigger{color:#fffdf7;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #d8c59e;border-radius:6px;padding:10px 12px;font-size:12px;font-weight:600}.tour-trigger:hover{background:#ffffff14}.hero{background:var(--cream);grid-template-columns:.9fr 1.1fr;min-height:520px;display:grid}.hero-content{align-self:center;padding:76px 5% 62px 14%}.eyebrow{color:#9a7445;letter-spacing:2px;margin:0 0 16px;font-size:10px;font-weight:700;line-height:1.6}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,.district-info h3{font-family:Playfair Display,Georgia,serif}h1{letter-spacing:-2px;max-width:540px;margin:0;font-size:clamp(42px,5vw,68px);font-weight:600;line-height:1.05}h1 em{color:#8a9d79;font-weight:500}.hero-description{color:#5b685e;max-width:400px;margin:24px 0;font-size:15px;line-height:1.8}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.button{border-radius:6px;justify-content:center;align-items:center;gap:16px;padding:14px 18px;font-size:12px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:var(--green-light)}.button-secondary{color:var(--green);border:1px solid #cfc4ad}.button-secondary:hover{background:#eee7d9}.hero-note{color:var(--muted);align-items:center;gap:10px;margin-top:28px;font-size:11px;display:flex}.note-icon{color:#a77f4c;font-size:20px}.hero-photo{min-height:520px;position:relative;overflow:hidden}.hero-photo:after{content:"";pointer-events:none;background:linear-gradient(90deg,#123d310d,#0000 40%,#123d3121);position:absolute;inset:0}.hero-photo>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.photo-label{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf0e8;border:1px solid #ffffff70;border-radius:8px;align-items:center;gap:10px;padding:12px 15px;font-size:11px;display:flex;position:absolute;bottom:24px;right:24px}.photo-label strong,.photo-label small,.floating-card strong,.floating-card small{display:block}.photo-label small,.floating-card small{color:var(--muted);margin-top:4px;font-size:10px}.photo-dot,.map-live-dot{background:#70916b;border-radius:50%;width:8px;height:8px}.floating-card{z-index:1;background:#fffdf4ed;border-radius:8px;align-items:center;gap:12px;padding:15px;font-size:11px;display:flex;position:absolute;top:28px;left:24px;box-shadow:0 12px 35px #123d3118}.floating-icon{color:#a77f4c;font-size:25px}.benefits{background:#eee7d8;border-top:1px solid #e6ddcd;border-bottom:1px solid #e6ddcd;grid-template-columns:repeat(4,1fr);padding:25px 8%;display:grid}.benefit{border-right:1px solid #d5cbb8;justify-content:center;align-items:center;gap:13px;padding:8px 12px;display:flex}.benefit:last-child{border-right:0}.benefit-icon{color:var(--green);font-size:27px}.benefit strong,.benefit small{display:block}.benefit strong{font-size:11px}.benefit small{color:var(--muted);margin-top:5px;font-size:10px}.district-section{background:var(--paper);padding:78px 8% 76px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;display:flex}.section-heading .eyebrow{margin-bottom:9px}.section-heading h2,.how-copy h2,.closing-cta h2{letter-spacing:-1px;margin:0;font-size:clamp(30px,3.4vw,43px);font-weight:600;line-height:1.15}.text-link{border-bottom:1px solid #b8c3ad;flex-shrink:0;padding-bottom:5px;font-size:12px}.text-link span{margin-left:9px}.district-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.district-card{background:#fffdf8;border:1px solid #ece4d7;border-radius:10px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 8px 25px #233c2d08}.district-image{background:#e4e7dc;height:160px;position:relative;overflow:hidden}.district-image img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.district-code{background:var(--cream);color:var(--green);border-radius:4px;padding:6px 9px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.district-info{padding:17px 16px 18px}.district-kicker{color:#9a7445;letter-spacing:1.5px;margin:0 0 7px;font-size:9px}.district-info h3{margin:0;font-size:22px;line-height:1.2}.district-info>p:not(.district-kicker){color:#687368;min-height:68px;margin:10px 0 14px;font-size:11px;line-height:1.7}.tag-row{flex-wrap:wrap;gap:5px;display:flex}.tag{color:#45654e;background:#e9eee3;border-radius:4px;padding:5px 7px;font-size:9px}.card-link{border-top:1px solid #ece4d7;justify-content:space-between;margin-top:18px;padding-top:13px;font-size:11px;font-weight:700;display:flex}.card-link span{color:#9a7445}.data-note{color:#85877a;margin:18px 0 0;font-size:10px;line-height:1.6}.how-section{background:var(--paper);grid-template-columns:.88fr 1.12fr;gap:30px;padding:0 8% 78px;display:grid}.how-copy{background:var(--green);color:var(--cream);border-radius:10px;padding:36px}.how-copy .eyebrow{color:#d7c197}.how-copy h2{max-width:390px;font-size:37px}.how-copy>p:not(.eyebrow){color:#d4dfd5;max-width:380px;font-size:12px;line-height:1.8}.steps{gap:22px;margin:28px 0;display:grid}.step{align-items:start;gap:15px;display:flex}.step-number{height:34px;color:var(--green);background:#f7f2e8;border-radius:50%;flex:0 0 34px;place-items:center;font-size:11px;font-weight:700;display:grid}.step h3{margin:2px 0 5px;font-size:12px}.step p{color:#d4dfd5;margin:0;font-size:10px;line-height:1.7}.button-light{background:var(--cream);color:var(--green)}.map-preview{background:#edf0df;border:1px solid #e1e5d6;border-radius:10px;min-height:440px;overflow:hidden}.map-topline{color:#64715f;letter-spacing:1px;align-items:center;gap:9px;padding:18px 20px;font-size:9px;display:flex}.map-live-dot{width:6px;height:6px;margin-left:auto}.map-art{background-color:#edf0df;background-image:linear-gradient(28deg,#0000 46%,#d8dfca 47% 49%,#0000 50%),linear-gradient(110deg,#0000 45%,#d8dfca 46% 48%,#0000 49%),linear-gradient(80deg,#0000 62%,#fff9eb 63% 65%,#0000 66%),repeating-linear-gradient(0deg,#0000 0 43px,#dce2d0 44px 46px),repeating-linear-gradient(90deg,#0000 0 52px,#dce2d0 53px 55px);min-height:350px;position:relative;overflow:hidden}.map-river{opacity:.95;border:12px solid #c1ded7;border-left:0;border-right:0;width:125%;height:46px;position:absolute;top:45%;left:-10%;transform:rotate(-15deg)}.map-road{z-index:1;background:#fff9ec;border:1px solid #e5ddca;width:130%;height:10px;position:absolute}.road-one{top:28%;left:-12%;transform:rotate(28deg)}.road-two{top:69%;left:-12%;transform:rotate(-28deg)}.road-three{top:47%;left:-10%;transform:rotate(64deg)}.map-park{z-index:1;color:#789071;letter-spacing:1px;background:#d4e1c9;border-radius:45% 55% 50% 30%;padding:15px 10px;font-size:8px;position:absolute}.park-one{width:130px;height:68px;top:12%;left:8%;transform:rotate(-12deg)}.park-two{width:130px;height:60px;bottom:12%;right:8%}.map-label{z-index:2;color:#315c47;letter-spacing:3px;font-family:Playfair Display,serif;font-size:25px;font-weight:700;position:absolute;top:43%;left:43%}.map-pin{z-index:3;background:var(--green);color:#fff;border-radius:5px;align-items:center;gap:5px;padding:8px 10px;font-size:10px;font-weight:700;display:flex;position:absolute;box-shadow:0 4px 10px #123d3120}.map-pin i{background:#d7c197;border-radius:50%;width:6px;height:6px}.pin-one{top:28%;left:52%}.pin-two{top:59%;left:34%}.pin-three{top:22%;right:15%}.pin-four{bottom:25%;right:16%}.map-legend{color:#6c786d;background:#f8f6ec;justify-content:space-between;padding:16px 20px;font-size:10px;display:flex}.map-legend span{align-items:center;gap:7px;display:flex}.legend-dot{background:#315c47;border-radius:50%;width:7px;height:7px}.closing-cta{text-align:center;background:#eee7d8;padding:65px 20px 72px;position:relative}.cta-symbol{color:#9a7445;margin-bottom:12px;font-size:29px}.closing-cta .eyebrow{margin-bottom:12px}.closing-cta h2{max-width:650px;margin:0 auto 24px}.footer{background:var(--green);color:#f7f2e8;justify-content:space-between;align-items:center;gap:20px;padding:24px 8%;display:flex}.footer-brand{font-size:15px}.footer-logo{object-fit:contain;flex:none;width:30px;height:36px;display:block}.footer p,.footer>a:last-child{color:#d4dfd5;font-size:10px}@media (width<=1050px){.navbar{padding-inline:4%}.nav-links{gap:16px}.hero-content{padding-left:8%}.district-section,.how-section{padding-left:5%;padding-right:5%}.district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.district-image{height:190px}.district-info>p:not(.district-kicker){min-height:auto}.benefits{padding-inline:3%}.benefit{padding-inline:8px}}@media (width<=700px){.navbar{flex-wrap:wrap;gap:14px;min-height:auto;padding:16px 5%}.brand{font-size:18px}.nav-links{order:3;justify-content:space-between;gap:10px;width:100%}.nav-links a{font-size:11px}.nav-cta{padding:10px 12px;font-size:11px}.tour-trigger{padding:9px 10px;font-size:11px}.hero{grid-template-columns:1fr}.hero-content{padding:52px 7% 42px}h1{font-size:clamp(42px,11vw,62px)}.hero-photo{min-height:330px}.benefits{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 4%}.benefit{border-right:0;justify-content:start;padding:12px 8px}.district-section{padding:52px 5%}.section-heading{flex-direction:column;align-items:start}.district-grid{grid-template-columns:1fr;gap:15px}.district-image{height:210px}.district-info h3{font-size:24px}.how-section{grid-template-columns:1fr;gap:18px;padding:0 5% 52px}.how-copy{padding:27px 23px}.how-copy h2{font-size:34px}.map-preview{min-height:360px}.map-art{min-height:290px}.footer{flex-wrap:wrap;padding:22px 5%}.footer p{order:3;width:100%;margin:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.nav-actions{flex-shrink:0;align-items:center;gap:18px;display:flex}.login-link{color:#fffaf1;white-space:nowrap;padding:12px 4px;font-size:14px;font-weight:500;text-decoration:none;transition:opacity .2s}.login-link:hover{opacity:.75}@media (width<=700px){.nav-actions{gap:10px}.login-link{font-size:13px}}.how-page{--how-forest:#123d31;--how-forest-dark:#0c3027;--how-cream:#f7f2e8;--how-paper:#fffdf7;--how-sage:#e8eddf;--how-muted:#617067;--how-line:#e7dfd0;color:var(--how-forest);background:radial-gradient(at 2% 12%,#c9bc9724,#0000 30%),linear-gradient(#fbf8f0c7,#fbf8f0e6) fixed,url(/images/hero-dublin.jpg) 50%/cover fixed;padding:50px max(5%,50% - 620px) 42px}.how-section-kicker{color:#a47746;letter-spacing:1.8px;align-items:center;gap:10px;margin:0 0 17px;font-size:10px;font-weight:800;line-height:1.6;display:flex}.how-button{border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:22px;min-height:46px;padding:0 17px;font-size:11px;font-weight:800;transition:transform .2s,background .2s,box-shadow .2s;display:inline-flex}.how-button:hover{transform:translateY(-2px)}.how-button:focus-visible,.step-link:focus-visible,.how-cta-secondary:focus-visible{outline-offset:4px;outline:2px solid #b85c3a}.how-process{padding:66px 0 20px;scroll-margin-top:25px}.how-section-heading{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:25px;display:flex}.how-section-heading .how-section-kicker{margin-bottom:8px}.how-section-heading h2,.how-ready h2,.how-cta h2{letter-spacing:-1px;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(29px,3.5vw,42px);font-weight:500;line-height:1.1}.how-section-heading>p{max-width:360px;color:var(--how-muted);margin:0 0 3px;font-size:13px;line-height:1.8}.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin:0;padding:0;list-style:none;display:grid}.step-flow-item{min-width:0;position:relative}.step-flow-item:not(:last-child):after{color:#a8753f;content:"→";font-size:22px;font-weight:500;position:absolute;top:50%;right:-32px;transform:translate(50%,-50%)}.step-card{border:1px solid var(--how-line);background:var(--how-paper);flex-direction:column;min-height:284px;padding:22px 22px 20px;transition:transform .22s,box-shadow .22s,border-color .22s;display:flex;box-shadow:0 8px 24px #233c2d09}.step-card:hover{border-color:#cbd4c3;transform:translateY(-4px);box-shadow:0 15px 34px #173f3217}.step-card-top{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.step-visual{border:1px solid #0000;min-height:116px;margin-bottom:20px;padding:14px;animation:.65s ease-out both step-visual-arrive;position:relative;overflow:hidden}.step-flow-item:nth-child(2) .step-visual{animation-delay:.14s}.step-flow-item:nth-child(3) .step-visual{animation-delay:.28s}.step-visual-budget{background:radial-gradient(circle at 92% 5%,#fffc,#0000 36%),linear-gradient(125deg,#d9f0e6,#edf5dc 72%,#f8edcb);border-color:#b7d8ca}.step-visual-areas{background:radial-gradient(circle at 4% 100%,#f2c07b57,#0000 45%),linear-gradient(130deg,#fff1d8,#f8e9d8 55%,#e9eee0);border-color:#ead4a6}.step-visual-journey{background:radial-gradient(circle at 95% 0,#ffffffd9,#0000 38%),linear-gradient(130deg,#dceff2,#e5e9f5 56%,#e5f0df);border-color:#b9dbe2}@keyframes step-visual-arrive{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.budget-visual-top,.budget-visual-bottom{justify-content:space-between;align-items:center;gap:8px;display:flex}.budget-visual-top>span,.budget-visual-bottom{color:#788273;letter-spacing:.7px;font-size:8px;font-weight:700}.budget-visual-top strong{color:#17624d;font-family:Fraunces,Georgia,serif;font-size:19px;font-weight:500}.budget-visual-track{background:#c5d8cf;border-radius:99px;height:5px;margin:13px 2px 7px;position:relative}.budget-visual-track:before{border-radius:inherit;content:"";background:linear-gradient(90deg,#17a783,#72af58);position:absolute;inset:0 42% 0 0}.budget-visual-track span{background:#118b72;border:3px solid #fffdf7;border-radius:50%;width:13px;height:13px;animation:2.4s ease-in-out infinite budget-thumb-pulse;position:absolute;top:50%;left:58%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #118b72,0 0 0 4px #118b7224}@keyframes budget-thumb-pulse{0%,to{box-shadow:0 0 0 1px #118b72,0 0 0 4px #118b7224}50%{box-shadow:0 0 0 1px #118b72,0 0 0 8px #118b720a}}.budget-visual-bottom{letter-spacing:0;font-size:7px;font-weight:500}.budget-visual-campus{color:#476c50;background:#ffffffc7;border:1px solid #d5e5ce;align-items:center;gap:6px;margin-top:11px;padding:5px 8px;font-size:8px;font-weight:700;display:inline-flex}.budget-visual-campus span{color:#c9783d;font-size:12px}.step-visual-areas{align-content:center;gap:7px;display:grid}.area-visual-card{background:#fffdf7eb;border:1px solid #e2d6bee6;align-items:center;gap:9px;min-width:0;padding:7px 8px;display:flex}.area-visual-card-selected{border-color:#b9c9a2;animation:3.2s ease-in-out infinite area-card-highlight;box-shadow:inset 3px 0 #5c915d,0 3px 10px #6c84471a}@keyframes area-card-highlight{0%,to{box-shadow:inset 3px 0 #5c915d,0 3px 10px #6c84471a}50%{box-shadow:inset 3px 0 #5c915d,0 5px 16px #6c844733}}.area-visual-mark{color:#5c7951;background:#e6edcf;border-radius:50%;flex:none;place-items:center;width:25px;height:25px;font-family:Fraunces,Georgia,serif;font-size:12px;display:grid}.area-visual-card>span:nth-child(2){min-width:0}.area-visual-card strong,.area-visual-card small{display:block}.area-visual-card strong{color:var(--how-forest);font-size:9px}.area-visual-card small{color:#788273;margin-top:2px;font-size:8px}.area-visual-rating,.area-visual-arrow{color:#a35b2d;letter-spacing:.5px;white-space:nowrap;margin-left:auto;font-size:7px;font-weight:800}.area-visual-arrow{font-size:13px}.step-visual-journey{flex-direction:column;justify-content:space-between;display:flex}.journey-visual-stops{justify-content:space-between;align-items:center;gap:9px;min-height:54px;display:flex}.journey-visual-stop{flex:none;justify-items:center;gap:3px;display:grid}.journey-visual-stop i{color:#287c85;background:#fffdf7;border:1px solid #acd1d2;border-radius:50%;place-items:center;width:29px;height:29px;font-size:15px;font-style:normal;display:grid}.journey-visual-stop small{color:#788273;letter-spacing:.6px;font-size:6px;font-weight:800}.journey-visual-route{background:repeating-linear-gradient(90deg,#328f95 0 8px,#0000 8px 13px) 0 0/26px 2px;flex:1;justify-content:space-between;align-items:center;min-width:25px;height:2px;animation:1.2s linear infinite route-dash-move;display:flex;position:relative}@keyframes route-dash-move{to{background-position:26px 0}}.journey-visual-route i{background:#e09b4c;border:1px solid #fffdf7;border-radius:50%;width:7px;height:7px}.journey-visual-footer{border-top:1px solid #e1e4d8;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.journey-visual-footer span{color:#788273;letter-spacing:.6px;font-size:7px;font-weight:700}.journey-visual-footer strong{color:#24727c;font-family:Fraunces,Georgia,serif;font-size:15px;font-weight:500}.step-icon{border:1px solid #0000;border-radius:50%;flex:none;place-items:center;width:56px;height:56px;transition:transform .25s,box-shadow .25s;animation:4s ease-in-out infinite step-icon-float;display:grid;box-shadow:0 5px 13px #123d311f,inset 0 1px #fffc}.step-flow-item:nth-child(2) .step-icon{animation-delay:.45s}.step-flow-item:nth-child(3) .step-icon{animation-delay:.9s}.step-icon-home{color:#17785c;background:linear-gradient(145deg,#edfff4,#a9dec4);border-color:#b6dcca}.step-icon-neighbourhood{color:#a85830;background:linear-gradient(145deg,#fff5d9,#f3bb76);border-color:#f0d09a}.step-icon-journey{color:#187787;background:linear-gradient(145deg,#e8fbff,#9bd5dc);border-color:#b3dce2}.step-icon svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:29px;height:29px;transition:transform .25s;overflow:visible}.step-flow-item:hover .step-icon{transform:translateY(-2px);box-shadow:0 8px 18px #123d312e,inset 0 1px #fffc}.step-flow-item:hover .step-icon svg{transform:scale(1.08)}@keyframes step-icon-float{0%,to{translate:0}50%{translate:0 -3px}}.step-number{color:#8a9585;letter-spacing:1.4px;font-size:9px;font-weight:800}.step-card h3{letter-spacing:-.3px;margin:0 0 9px;font-family:Fraunces,Georgia,serif;font-size:25px;font-weight:500;line-height:1.15}.step-description,.step-detail{color:var(--how-muted);margin:0;font-size:12px;line-height:1.75}.step-detail{color:#798276;margin-top:8px;font-size:11px}.step-link{color:var(--how-forest);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:17px;font-size:11px;font-weight:800;display:flex}.step-link span{color:#a8753f;font-size:15px;transition:transform .2s}.step-link:hover span{transform:translate(2px,-2px)}.how-ready{background:#f0f2e9;border:1px solid #e2e4d8;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(25px,5vw,65px);margin-top:44px;padding:clamp(23px,4vw,40px);display:grid}.how-ready .how-section-kicker{margin-bottom:11px}.how-ready h2{max-width:400px;font-size:clamp(28px,3vw,37px)}.how-ready-copy>p:last-child{max-width:380px;color:var(--how-muted);margin:13px 0 0;font-size:12px;line-height:1.8}.how-ready-list{gap:11px;margin:0;padding:0;list-style:none;display:grid}.how-ready-list li{background:#fffdf7eb;border:1px solid #0000;align-items:center;gap:14px;min-height:72px;padding:12px 15px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;box-shadow:0 5px 16px #233c2d09}.how-ready-list li:hover{transform:translate(4px);box-shadow:0 8px 20px #233c2d14}.how-ready-icon{border:1px solid #0000;border-radius:13px;flex:none;place-items:center;width:44px;height:44px;display:grid}.how-ready-icon svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:25px;height:25px}.how-ready-item-budget{border-color:#d3e6dc!important}.how-ready-item-budget .how-ready-icon{color:#17785c;background:linear-gradient(145deg,#edfff4,#a9dec4);border-color:#b6dcca}.how-ready-item-campus{border-color:#ebdfc6!important}.how-ready-item-campus .how-ready-icon{color:#a85830;background:linear-gradient(145deg,#fff5d9,#f3bb76);border-color:#efd29e}.how-ready-item-priorities{border-color:#d0e3e5!important}.how-ready-item-priorities .how-ready-icon{color:#187787;background:linear-gradient(145deg,#e8fbff,#9bd5dc);border-color:#b3dce2}.how-ready-check{color:#557853;background:#edf2e8;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;margin-left:auto;font-size:12px;font-weight:800;display:grid}.how-ready-list strong,.how-ready-list small{display:block}.how-ready-list strong{color:var(--how-forest);font-size:12px}.how-ready-list small{color:#748075;margin-top:3px;font-size:11px;line-height:1.5}.how-cta{background:#e9ede1;justify-content:space-between;align-items:center;gap:28px;margin:38px 0 0;padding:30px clamp(22px,4vw,42px);display:flex}.how-cta .how-section-kicker{margin-bottom:8px}.how-cta-kicker{gap:9px}.how-cta-logo{object-fit:contain;width:23px;height:27px}.how-cta h2{max-width:560px;font-size:clamp(25px,3vw,35px)}.how-cta>div:first-child>p:last-child{color:var(--how-muted);margin:9px 0 0;font-size:12px;line-height:1.7}.how-cta-actions{flex-direction:column;flex:none;align-items:flex-start;gap:12px;display:flex}.how-button-green{background:var(--how-forest);color:#fffdf7}.how-button-green:hover{background:#245b48;box-shadow:0 7px 18px #123d3126}.how-cta-secondary{color:var(--how-forest);text-underline-offset:4px;font-size:11px;font-weight:800;text-decoration:underline}.how-page-footnote{color:#85877a;margin:17px 0 0;font-size:11px;line-height:1.7}@media (width<=950px){.how-page{padding:32px 5% 35px}.how-process{padding-top:50px}.how-section-heading{flex-direction:column;align-items:flex-start;gap:10px}.how-section-heading>p{max-width:520px}.steps-grid{grid-template-columns:minmax(0,1fr);gap:38px;max-width:680px;margin-inline:auto}.step-flow-item:not(:last-child):after{content:"↓";top:auto;bottom:-34px;right:50%;transform:translate(50%,50%)}.step-card{min-height:270px}.how-ready{grid-template-columns:1fr;gap:22px}.how-cta{flex-direction:column;align-items:flex-start}.how-cta-actions{flex-flow:wrap;align-items:center}}@media (width<=520px){.how-page{padding:20px 4% 27px}.how-process{padding-top:42px}.how-section-heading h2{font-size:32px}.steps-grid{grid-template-columns:1fr;gap:36px}.step-card{min-height:0;padding:18px}.step-card-top{margin-bottom:15px}.step-link{border-top:1px solid #eee8dd;margin-top:16px;padding-top:12px}.how-ready{gap:18px;margin-top:30px;padding:21px 17px}.how-ready-list li{padding:10px}.how-cta{gap:18px;margin-top:27px;padding:23px 18px}.how-cta-actions{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.how-page *,.how-page :before,.how-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}.questionnaire-page{color:#173f32;background:#f7f2e8;min-height:80vh;padding:48px 20px 80px}.questionnaire-container{max-width:700px;margin:0 auto}.back-link{color:#52685b;margin-bottom:38px;font-size:14px;text-decoration:none;display:inline-block}.questionnaire-container>.eyebrow{color:#a8753f;letter-spacing:2px;margin-bottom:26px;font-size:11px;font-weight:700}.progress-info{color:#64766a;letter-spacing:1px;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:11px;font-weight:700;display:flex}.progress-track{background:#e3ddcf;border-radius:10px;height:4px;margin-bottom:36px;overflow:hidden}.progress-fill{background:#173f32;border-radius:10px;width:33.33%;height:100%}.questionnaire-container h1{letter-spacing:-1.5px;margin:0 0 16px;font-family:Georgia,serif;font-size:clamp(38px,6vw,54px);font-weight:600;line-height:1.1}.questionnaire-container h1 em{color:#8a9d7a;font-weight:400;display:block}.questionnaire-description{color:#617067;max-width:560px;margin-bottom:38px;line-height:1.8}.questionnaire-container form{flex-direction:column;gap:28px;display:flex}.question-group{background:#fffdf7;border:1px solid #e7dfd0;border-radius:12px;padding:24px}.question-group>label,.question-group>.question-label{margin-bottom:8px;font-family:Georgia,serif;font-size:21px;line-height:1.4;display:block}.field-hint{color:#718075;margin:0 0 20px;font-size:13px;line-height:1.6}.budget-display{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.budget-display>span{color:#617067;font-size:14px}.budget-display strong{color:#173f32;font-family:Georgia,serif;font-size:30px}.question-group input[type=range]{accent-color:#173f32;cursor:pointer;width:100%}.range-labels{color:#718075;justify-content:space-between;margin-top:8px;font-size:12px;display:flex}.question-group input[type=text]{box-sizing:border-box;color:#173f32;width:100%;font:inherit;background:#fffdf7;border:1px solid #dcd4c5;border-radius:7px;outline:none;padding:15px 16px;font-size:14px}.question-group input[type=text]:focus{border-color:#173f32;box-shadow:0 0 0 3px #173f3214}.room-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.room-option{color:#173f32;min-height:112px;font:inherit;cursor:pointer;text-align:left;background:#fffdf7;border:1px solid #e0d8c9;border-radius:8px;flex-direction:column;align-items:flex-start;gap:14px;padding:15px;font-size:13px;display:flex}.room-option>span:first-child{font-size:23px}.room-option.selected{background:#edf0e6;border:2px solid #173f32;padding:14px}.room-option-wide{flex-direction:row;grid-column:span 2;align-items:center;min-height:76px}.questionnaire-step-2 .importance-group{grid-column:1/-1;min-width:0;margin:0}.importance-group legend{float:none;width:100%;padding:0;font-family:Georgia,serif;font-size:19px;line-height:1.4}.importance-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.importance-option{color:#52685b;cursor:pointer;background:#fffdf7;border:1px solid #e0d8c9;border-radius:7px;align-items:center;gap:8px;min-height:44px;padding:8px 10px;font-size:12px;transition:border-color .2s,background .2s;display:flex}.importance-option.selected{color:#173f32;background:#edf0e6;border-color:#173f32}.importance-option input,.recreation-options input{accent-color:#173f32}.recreation-options{border:1px solid #e7dfd0;border-radius:8px;flex-wrap:wrap;gap:12px 20px;margin:18px 0 0;padding:12px 14px;display:flex}.recreation-options legend{color:#617067;width:auto;padding:0 5px;font-family:inherit;font-size:13px;font-weight:600}.recreation-options label{color:#52685b;align-items:center;gap:7px;font-size:13px;display:inline-flex}.questionnaire-actions{grid-column:1/-1;gap:12px;display:flex}.questionnaire-actions .questionnaire-next{flex:1}.questionnaire-previous{color:#173f32;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #d8d1c4;border-radius:7px;flex:none;padding:16px 20px;font-weight:600}.questionnaire-previous:hover{background:#edf0e6}.questionnaire-next{color:#fffdf7;width:100%;font:inherit;cursor:pointer;background:#173f32;border:none;border-radius:7px;justify-content:space-between;align-items:center;padding:17px 22px;font-weight:600;transition:background .2s;display:flex}.questionnaire-next:hover{background:#245542}.questionnaire-next:disabled{cursor:default;opacity:.8}.questionnaire-submit-status{color:#245542;grid-column:1/-1;margin:0;font-size:14px}@media (width<=520px){.questionnaire-page{padding:32px 16px 55px}.question-group{padding:19px}.room-options{grid-template-columns:1fr}.room-option{flex-direction:row;align-items:center;min-height:auto}.room-option-wide{grid-column:auto}.importance-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.question-group select{box-sizing:border-box;color:#173f32;width:100%;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #dcd4c5;border-radius:7px;outline:none;padding:15px 16px;font-size:14px}.question-group select:focus{border-color:#173f32;box-shadow:0 0 0 3px #173f3214}.login-page{color:#173f32;background:#f7f2e8;justify-content:center;align-items:flex-start;min-height:78vh;padding:48px 20px 70px;display:flex}.login-card{box-sizing:border-box;background:#fffdf7;border:1px solid #e7dfd0;border-radius:14px;width:100%;max-width:490px;padding:30px 38px 36px}.login-back{color:#617067;margin-bottom:35px;font-size:13px;text-decoration:none;display:inline-block}.login-back:hover{color:#173f32}.login-heading{text-align:center}.login-mark{background:#e8eddf;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 24px;font-size:27px;display:flex}.login-heading .eyebrow{color:#a8753f;letter-spacing:2px;margin-bottom:18px;font-size:10px;font-weight:700}.login-heading h1{letter-spacing:-1px;margin:0 0 17px;font-family:Georgia,serif;font-size:clamp(34px,5vw,43px);font-weight:500;line-height:1.13}.login-heading h1 em{color:#8a9d7a;font-weight:400;display:block}.login-heading>p:last-child{color:#617067;max-width:340px;margin:0 auto 30px;font-size:14px;line-height:1.8}.login-form{flex-direction:column;gap:22px;display:flex}.login-field label{color:#173f32;margin-bottom:9px;font-size:13px;font-weight:600;display:block}.login-field input{box-sizing:border-box;color:#173f32;width:100%;min-width:0;font:inherit;background:#fffdf7;border:1px solid #dcd4c5;border-radius:7px;outline:none;padding:14px;font-size:14px}.login-field input:focus{border-color:#173f32;box-shadow:0 0 0 3px #173f3214}.password-label{justify-content:space-between;align-items:center;gap:10px;display:flex}.password-label label{margin-bottom:9px}.login-note{color:#8a9488;margin-bottom:9px;font-size:11px}.password-input-wrap{align-items:center;display:flex;position:relative}.password-input-wrap input{padding-right:62px}.show-password{color:#52685b;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600;position:absolute;right:12px}.login-submit{color:#fffdf7;width:100%;font:inherit;cursor:pointer;background:#173f32;border:none;border-radius:7px;justify-content:space-between;align-items:center;padding:16px 18px;font-size:14px;font-weight:600;transition:background .2s;display:flex}.login-submit:hover{background:#245542}.login-divider{color:#9a9f91;letter-spacing:1.5px;align-items:center;gap:14px;margin:29px 0 22px;font-size:9px;font-weight:700;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e7dfd0;flex:1;height:1px}.login-bottom{color:#617067;text-align:center;margin:0;font-size:13px;line-height:2}.login-bottom a{color:#173f32;font-weight:600;text-decoration:none}.login-bottom a:hover{text-decoration:underline}@media (width<=520px){.login-page{padding:28px 14px 45px}.login-card{padding:24px 22px 30px}}.signup-card{max-width:510px}.signup-card .login-heading>p:last-child{margin-bottom:26px}.signup-card .login-form{gap:18px}.signup-hint{color:#718075;margin:7px 0 0;font-size:11px}.signup-error{color:#8b3027;background:#f8e8e2;border-radius:7px;margin:0;padding:12px;font-size:13px;line-height:1.5}html{scroll-behavior:smooth}.navbar{animation:.8s ease-out both nav-arrive}@keyframes nav-arrive{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}.hero-content .eyebrow{animation:.7s ease-out .1s both text-arrive}.hero-content h1{animation:.9s ease-out .25s both text-arrive}.hero-content .hero-description{animation:.8s ease-out .4s both text-arrive}.hero-content .hero-actions{animation:.8s ease-out .55s both text-arrive}.hero-content .hero-note{animation:.8s ease-out .7s both text-arrive}@keyframes text-arrive{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.hero-photo{animation:1.2s ease-out .2s both photo-arrive}.hero-photo img{transition:transform .8s;animation:1.8s ease-out both photo-settle}.hero-photo:hover img{transform:scale(1.035)}@keyframes photo-arrive{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes photo-settle{0%{transform:scale(1.06)}to{transform:scale(1)}}.floating-card{animation:.9s ease-out .8s both card-arrive,5s ease-in-out 1.7s infinite gentle-float}@keyframes card-arrive{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes gentle-float{0%,to{translate:0}50%{translate:0 -7px}}.note-icon,.cta-symbol{animation:5s ease-in-out infinite symbol-sway;display:inline-block}@keyframes symbol-sway{0%,to{rotate:0deg}50%{rotate:12deg}}.benefit{transition:transform .35s,background-color .35s}.benefit:hover{transform:translateY(-4px)}.benefit-icon{transition:transform .35s}.benefit:hover .benefit-icon{transform:scale(1.12)}.district-card{transition:transform .4s,box-shadow .4s}.district-card:hover{transform:translateY(-6px);box-shadow:0 18px 38px #1837281f}.district-image{overflow:hidden}.district-image img{transition:transform .7s cubic-bezier(.2,.7,.3,1)}.district-card:hover .district-image img{transform:scale(1.06)}.button,.nav-cta,.text-link,.card-link{transition:transform .3s,opacity .3s}.button:hover,.nav-cta:hover{transform:translateY(-2px)}.text-link:hover,.card-link:hover{opacity:.75}.map-pin{animation:3s ease-in-out infinite pin-breathe}.map-pin.pin-two{animation-delay:.5s}.map-pin.pin-three{animation-delay:1s}.map-pin.pin-four{animation-delay:1.5s}@keyframes pin-breathe{0%,to{translate:0}50%{translate:0 -5px}}@supports (animation-timeline:view()){.district-card,.benefit,.how-copy,.map-preview,.questionnaire-card,.closing-cta{animation:linear both section-reveal;animation-timeline:view();animation-range:entry entry 30%}@keyframes section-reveal{0%{opacity:.35;translate:0 24px}to{opacity:1;translate:0}}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.brand-logo{box-sizing:border-box;object-fit:contain;background:0 0;border-radius:0;flex-shrink:0;width:42px;height:50px;padding:0;transition:transform .3s;display:block}.brand-wordmark{object-fit:contain;flex-shrink:0;width:178px;height:37px;padding:0;display:block}.brand:hover .brand-logo{transform:scale(1.04)}.navbar-home{z-index:50;color:#123d31;-webkit-backdrop-filter:blur(16px);background:#faf7eed1;border:1px solid #ffffffa6;border-radius:999px;width:92%;min-height:66px;padding:10px 22px;position:absolute;top:16px;left:4%;box-shadow:0 10px 35px #08231a1f}.navbar-home .brand{color:#123d31}.navbar-home .nav-links a:hover{color:#a14d30}.nav-links a.active{background:#fffdf729;border-radius:999px;padding:7px 16px;font-weight:700}.navbar-home .nav-links a.active{color:#123d31;background:#dff3d4}.navbar-home .nav-cta{color:#fffaf0;background:#123d31;border-radius:999px}.navbar-home .login-link{color:#123d31}@media (width<=700px){.navbar-home{background:#faf7eee8;border-radius:20px;width:94%;padding:10px 14px;top:9px;left:3%}.navbar-home .brand{font-size:16px}.navbar-home .nav-links{gap:10px}}@media (width>=1001px){.questionnaire-page{background:url(/images/questionnaire-background.png) 50%/cover no-repeat;align-items:center;min-height:calc(100vh - 76px);padding:48px clamp(36px,6vw,100px) 72px;display:flex;position:relative}.questionnaire-page:has(.results-container){background:url(/images/questionnaire-background.png) 50%/cover no-repeat fixed}.questionnaire-page:has(.results-container) .results-container>h1{background:#fffdf7f0;border:1px solid #e7dfd0e6;border-bottom:0;border-radius:14px 14px 0 0;margin:0;padding:24px 26px 8px;box-shadow:0 14px 36px #123d3114}.questionnaire-page:has(.results-container) .results-container>h1+.questionnaire-description{background:#fffdf7f0;border:1px solid #e7dfd0e6;border-top:0;border-radius:0 0 14px 14px;max-width:none;margin:0 0 28px;padding:4px 26px 22px;box-shadow:0 14px 36px #123d3114}.questionnaire-page:has(.results-container) .results-container{width:100%;max-width:820px;margin:0 auto;display:block}.questionnaire-page:has(.results-container) .results-container>h1{box-sizing:border-box;width:100%}.questionnaire-page:has(.results-container) .results-container>h1+.questionnaire-description{box-sizing:border-box;width:100%}.questionnaire-container{grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);gap:0 clamp(48px,7vw,100px);width:100%;max-width:1280px;display:grid}.questionnaire-container>.back-link{grid-column:1/-1;margin-bottom:30px}.questionnaire-intro{-webkit-backdrop-filter:blur(8px);background:#fffdf7e0;border:1px solid #fffdf7bf;grid-area:2/1;align-self:center;padding:clamp(26px,3vw,42px);box-shadow:0 18px 48px #123d311a}.questionnaire-intro .eyebrow{color:#a8753f}.questionnaire-intro .progress-info,.questionnaire-intro .progress-track{max-width:440px}.questionnaire-container h1{font-size:clamp(44px,4vw,62px)}.questionnaire-container form{grid-area:2/2;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;gap:16px;display:grid}.questionnaire-container .question-group{padding:20px}.questionnaire-container .questionnaire-step-1>.question-group:last-of-type,.questionnaire-container .questionnaire-next,.questionnaire-container .questionnaire-actions{grid-column:1/-1}.login-page{background:radial-gradient(at 18% 20%,#c9bc9733,#0000 32%),#f7f2e8;align-items:center;min-height:calc(100vh - 76px);padding:52px 32px 72px}.login-card{border-radius:4px;grid-template-rows:auto 1fr auto auto;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);column-gap:clamp(40px,6vw,84px);width:100%;max-width:1120px;padding:42px;display:grid;box-shadow:0 24px 70px #123d3117}.login-back{grid-area:1/1/auto/-1;margin-bottom:28px}.login-heading{color:#f7f2e8;text-align:left;background:radial-gradient(circle at 95% 0,#ecd29c21,#0000 36%),linear-gradient(140deg,#123d31,#1d503f);flex-direction:column;grid-area:2/1/5;justify-content:center;align-items:flex-start;min-height:100%;padding:clamp(30px,4vw,54px);display:flex}.login-mark{color:#f2d7a8;background:#f7f2e821;margin:0 0 24px}.login-heading .eyebrow{color:#e4c990}.login-heading h1{color:#fffdf7}.login-heading h1 em{color:#d3ddc2}.login-heading>p:last-child{color:#d7e2d7;margin:0 0 30px}.login-form{grid-area:2/2;align-self:end;padding-top:12px}.login-divider{grid-area:3/2;align-self:end}.login-bottom{grid-area:4/2}}@media (width>=701px) and (width<=1000px){.questionnaire-container{max-width:760px}}@media (width<=1000px){.login-card{width:100%;max-width:520px;box-shadow:none;border-radius:14px;padding:30px 38px 36px;display:block}.login-heading{color:#173f32;text-align:center;background:0 0;min-height:0;padding:0;display:block}.login-mark{color:#173f32;background:#e8eddf;margin:0 auto 24px}.login-heading .eyebrow{color:#a8753f}.login-heading h1{color:#173f32}.login-heading h1 em{color:#8a9d7a}.login-heading>p:last-child{color:#617067;margin:0 auto 30px}}@media (width<=950px){.questionnaire-container{max-width:700px;display:block}.questionnaire-intro{padding:0}.questionnaire-container form{flex-direction:column;gap:22px;display:flex}}@media (width<=520px){.login-page{padding:28px 14px 45px}.login-card{padding:24px 22px 30px}}.navbar{gap:28px;padding-block:15px}.nav-links{gap:6px}.nav-links a{color:#e9eee5;letter-spacing:.005em;border-radius:999px;padding:9px 14px;font-size:15.5px;font-weight:500;transition:color .2s,background .2s;position:relative}.nav-links a:after{content:"";transform-origin:0;background:#e6cda0;border-radius:2px;height:2px;transition:transform .25s;position:absolute;bottom:4px;left:14px;right:14px;transform:scaleX(0)}.nav-links a:hover{color:#fff;background:#fffdf712}.nav-links a:hover:after{transform:scaleX(1)}.nav-links a.active{color:#fff;background:#fffdf724;padding:9px 16px;font-weight:700;box-shadow:inset 0 0 0 1px #fffdf71f}.nav-links a.active:after{display:none}.nav-links a:focus-visible{outline-offset:2px;outline:2px solid #e6cda0}.nav-actions{gap:12px}.nav-icon{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.nav-cta{color:var(--green);background:linear-gradient(135deg,#fffaf0,#f1e4c8);border-radius:999px;align-items:center;gap:2px;padding:12px 22px;font-size:15px;font-weight:800;display:inline-flex;box-shadow:0 6px 18px #0000002e,inset 0 0 0 1px #fff9}.nav-cta span{margin-left:8px;transition:transform .2s;display:inline-block}.nav-cta:hover{box-shadow:0 10px 24px #00000038}.nav-cta:hover span{transform:translate(2px,-2px)}.tour-trigger{border:1.5px solid #e6cda0bf;border-radius:999px;align-items:center;gap:8px;padding:11px 18px;font-size:14.5px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.tour-trigger:hover{background:#e6cda024;border-color:#e6cda0}.tour-trigger .nav-icon{color:#e6cda0}.login-link{border-radius:999px;align-items:center;gap:7px;padding:11px 16px;font-size:15px;font-weight:600;transition:background .2s,opacity .2s;display:inline-flex}.login-link:hover{opacity:1;background:#fffdf71a}.nav-cta:focus-visible,.tour-trigger:focus-visible,.login-link:focus-visible{outline-offset:3px;outline:2px solid #e6cda0}.lang-switch{position:relative}.lang-switch-button{color:#fffdf7;min-height:44px;font:inherit;cursor:pointer;background:#fffdf714;border:1.5px solid #fffdf747;border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 12px;font-size:14.5px;font-weight:700;transition:background .2s,border-color .2s;display:inline-flex}.lang-switch-button:hover,.lang-switch.is-open .lang-switch-button{background:#fffdf724;border-color:#e6cda0cc}.lang-switch-button:focus-visible{outline-offset:3px;outline:2px solid #e6cda0}.lang-globe,.lang-chevron,.lang-check{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.lang-globe{color:#e6cda0;width:19px;height:19px}.lang-chevron{opacity:.8;width:16px;height:16px;transition:transform .2s}.lang-switch.is-open .lang-chevron{transform:rotate(180deg)}.lang-menu{z-index:200;background:#fffdf8;border:1px solid #e6dfd0;border-radius:16px;min-width:230px;margin:0;padding:6px;list-style:none;animation:.18s both lang-in;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 44px #0a1e1840}.lang-menu li{color:#173f32;cursor:pointer;border-radius:11px;outline:0;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 20px;column-gap:10px;padding:9px 12px;display:grid}.lang-menu li:hover,.lang-menu li:focus{background:#eef5ef}.lang-menu li.is-current{background:#e3eee5}.lang-own{font-size:15.5px;font-weight:700;line-height:1.3}.lang-english{color:#6b7a70;grid-row:2;font-size:12.5px}.lang-check{color:#1f5a45;stroke-width:2.4px;grid-area:1/2/span 2;align-self:center;width:18px;height:18px}@keyframes lang-in{0%{opacity:0;transform:translateY(-6px)}}.navbar-home .nav-links a{color:#29483a}.navbar-home .nav-links a:hover{color:#123d31;background:#123d310f}.navbar-home .nav-links a:after{background:#a14d30}.navbar-home .nav-links a.active{color:#123d31;box-shadow:none;background:#dff3d4}.navbar-home .nav-cta{color:#fffaf0;background:#123d31;box-shadow:0 6px 16px #123d3140}.navbar-home .tour-trigger{color:#123d31;border-color:#123d31}.navbar-home .tour-trigger .nav-icon{color:#a14d30}.navbar-home .tour-trigger:hover,.navbar-home .login-link:hover{background:#123d310f}.navbar-home .lang-switch-button{color:#123d31;background:#fff9;border-color:#123d3140}.navbar-home .lang-switch-button:hover,.navbar-home .lang-switch.is-open .lang-switch-button{background:#fff;border-color:#123d31}.navbar-home .lang-globe{color:#a14d30}@media (width<=1300px){.navbar{gap:16px;padding-inline:3%}.nav-links a{padding:8px 10px;font-size:14.5px}.nav-links a.active{padding:8px 12px}.nav-cta{padding:11px 16px;font-size:14px}.tour-trigger{padding:10px 13px;font-size:13.5px}.login-link{padding:10px;font-size:14px}.lang-switch-button{padding:0 11px 0 10px;font-size:13.5px}}@media (width<=1100px){.tour-trigger .nav-icon,.login-link .nav-icon{display:none}.nav-links a{padding:7px 8px;font-size:13.5px}}@media (width<=700px){.nav-links a{padding:6px;font-size:12.5px}.lang-switch-button{min-height:38px}}.navbar a,.navbar button,.lang-switch-button span{white-space:nowrap}.nav-links{flex-wrap:nowrap;min-width:0}@media (width<=1600px){.navbar{gap:14px;padding-inline:2.5%}.nav-links{gap:2px}.nav-links a{padding:9px 11px;font-size:15px}.nav-links a.active{padding:9px 13px}.nav-actions{gap:8px}.brand-wordmark{width:160px}}@media (width<=1500px){.tour-trigger .nav-icon,.login-link .nav-icon{display:none}.nav-cta{padding:11px 18px;font-size:14.5px}.tour-trigger{padding:10px 14px;font-size:14px}.login-link{padding:10px}}@media (width<=1300px){.nav-links a{padding:8px;font-size:14px}.nav-links a.active{padding:8px 10px}.brand-wordmark{width:140px}.brand-logo{width:36px;height:44px}.lang-switch-button{gap:6px}}.navbar{z-index:1000;position:relative}.navbar-home{z-index:1000;position:absolute}.nav-links{flex-shrink:0}.brand,.brand-wordmark{flex-shrink:1;min-width:0}.navbar-home{gap:12px;padding-inline:18px}.navbar-home .nav-links a{padding:8px 10px;font-size:14.5px}.navbar-home .nav-links a.active{padding:8px 13px}.navbar-home .nav-actions{gap:8px}.navbar-home .brand-wordmark{width:150px}@media (width<=1350px){.navbar-home .nav-links a{padding:7px;font-size:13.5px}.navbar-home .brand-wordmark{width:125px}.navbar-home .nav-cta{padding:10px 14px;font-size:13.5px}.navbar-home .tour-trigger{padding:9px 11px;font-size:13px}.navbar-home .lang-switch-button{min-height:40px;font-size:13px}}.navbar .nav-links a{font-size:18px}@media (width<=1600px){.navbar .nav-links a{font-size:17px}}@media (width<=1440px){.navbar .nav-links a{padding-inline:9px;font-size:16px}}@media (width<=1300px){.navbar .nav-links a{padding-inline:7px;font-size:15px}}@media (width<=1100px){.navbar .nav-links a{font-size:14px}}@media (width<=700px){.navbar .nav-links a{font-size:14px}}.navbar .brand,.navbar .brand-wordmark,.navbar .brand-logo{flex-shrink:0}@media (width<=1300px){.navbar .nav-links a{padding-inline:6px;font-size:14.5px}}@media (width<=1500px){.navbar .nav-links a{padding-inline:8px;font-size:15.5px}}@media (width<=1300px){.navbar .nav-links a{padding-inline:6px;font-size:14px}.navbar .brand-wordmark{width:130px}.navbar{gap:10px}.navbar .nav-links{gap:0}.navbar .nav-actions{gap:6px}}.navbar .brand-wordmark{width:230px;height:48px}.navbar .brand-logo{width:48px;height:58px}@media (width<=1600px){.navbar .brand-wordmark{width:205px;height:43px}.navbar .brand-logo{width:45px;height:54px}}@media (width<=1500px){.navbar .brand-wordmark{width:180px;height:38px}.navbar .brand-logo{width:42px;height:50px}}@media (width<=1300px){.navbar .brand-wordmark{width:150px;height:32px}.navbar .brand-logo{width:38px;height:46px}}@media (width<=700px){.navbar .brand-wordmark{width:170px;height:36px}}.navbar .brand-wordmark{object-position:left center;width:210px;height:50px}@media (width<=1600px){.navbar .brand-wordmark{width:190px;height:45px}}@media (width<=1500px){.navbar .brand-wordmark{width:168px;height:40px}}@media (width<=1300px){.navbar .brand-wordmark{width:143px;height:34px}}@media (width<=700px){.navbar .brand-wordmark{width:160px;height:38px}}@media (width<=1500px){.navbar .nav-links a{padding-inline:6px}}@media (width<=1300px){.navbar .nav-links a{padding-inline:5px}}.menu-toggle,.navbar.nav-compact .nav-links,.navbar.nav-compact .tour-trigger,.navbar.nav-compact .login-link{display:none}.navbar.nav-compact{flex-wrap:nowrap}.nav-compact .menu-toggle{color:#fff;min-height:42px;font:inherit;cursor:pointer;background:0 0;border:1.5px solid #fffdf780;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14.5px;font-weight:700;display:inline-flex}.navbar-home.nav-compact .menu-toggle{color:#123d31;border-color:#123d3159}.nav-compact .menu-toggle:hover{background:#ffffff1a}.navbar-home.nav-compact .menu-toggle:hover{background:#123d310f}.nav-compact .menu-toggle:focus-visible{outline-offset:2px;outline:2px solid #e6cda0}.nav-compact .menu-bars{gap:3.5px;width:16px;display:inline-grid;position:relative}.nav-compact .menu-bars i{background:currentColor;border-radius:2px;height:2px;transition:transform .25s,opacity .2s;display:block}.nav-compact.menu-open .menu-bars i:first-child{transform:translateY(5.5px)rotate(45deg)}.nav-compact.menu-open .menu-bars i:nth-child(2){opacity:0}.nav-compact.menu-open .menu-bars i:nth-child(3){transform:translateY(-5.5px)rotate(-45deg)}.nav-compact .site-menu{z-index:1200;transform-origin:100% 0;background:#fffdf8;border:1px solid #e3ddcf;border-radius:18px;flex-direction:column;gap:2px;width:min(300px,100vw - 24px);padding:10px;animation:.22s cubic-bezier(.2,.9,.3,1.1) both menu-in;display:flex;position:absolute;top:calc(100% + 10px);right:12px;box-shadow:0 22px 50px #102f2a40}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:none}}.nav-compact .site-menu a,.nav-compact .site-menu button{color:#173f32;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:11px 14px;font-size:16px;font-weight:600;text-decoration:none;display:block}.nav-compact .site-menu a:hover,.nav-compact .site-menu button:hover{background:#f1ece0}.nav-compact .site-menu a.active{background:#dff3d4;font-weight:800}.nav-compact .site-menu-row{border-top:1px solid #efe9db;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px;padding-top:8px;display:grid}.nav-compact .site-menu-row a,.nav-compact .site-menu-row button{text-align:center;border:1.5px solid #d9d2c1;border-radius:999px;font-size:14.5px;font-weight:700}@media (width<=700px){.navbar,.navbar-home{flex-wrap:nowrap!important;gap:8px!important}.navbar .nav-actions{flex-wrap:nowrap;margin-left:auto;order:0!important;gap:6px!important;width:auto!important}.navbar .nav-cta,.navbar .lang-switch-button>span:not(.lang-globe){display:none}.navbar .lang-switch-button{gap:2px;padding:0 9px}.site-menu{right:8px}.menu-label{display:none}.menu-toggle{justify-content:center;width:42px;padding:0}.navbar .brand-wordmark{width:150px!important;height:36px!important}.navbar .brand-logo{width:34px!important;height:42px!important}}@media (width<=360px){.navbar .brand-wordmark{width:124px!important;height:30px!important}.navbar .brand-logo{width:28px!important;height:36px!important}.nav-actions{gap:6px}.menu-toggle{width:38px;height:38px}}.navbar.nav-measure{flex-wrap:nowrap!important;justify-content:flex-start!important}.navbar.nav-measure>*{flex:none!important;width:auto!important;max-width:none!important;margin-inline:0!important}.navbar.nav-measure>*,.navbar.nav-measure .nav-links>*,.navbar.nav-measure .nav-actions>*{white-space:nowrap!important;flex-shrink:0!important}.navbar.nav-tight-1{gap:14px}.navbar.nav-tight-1 .nav-links{gap:2px}.navbar.nav-tight-1 .nav-links a{padding-inline:9px;font-size:15.5px}.navbar.nav-tight-1 .nav-links a.active{padding-inline:12px}.navbar.nav-tight-1 .nav-actions{gap:8px}.navbar.nav-tight-1 .brand-wordmark{width:180px;height:38px}.navbar.nav-tight-1 .brand-logo{width:42px;height:50px}.navbar.nav-tight-1 .nav-cta{padding-inline:18px}.navbar.nav-tight-1 .tour-trigger,.navbar.nav-tight-1 .login-link{padding-inline:12px}.navbar.nav-tight-2{gap:10px}.navbar.nav-tight-2 .nav-links{gap:0}.navbar.nav-tight-2 .nav-links a{padding-inline:7px;font-size:14px}.navbar.nav-tight-2 .nav-links a.active{padding-inline:10px}.navbar.nav-tight-2 .nav-actions{gap:6px}.navbar.nav-tight-2 .brand-wordmark{width:150px;height:32px}.navbar.nav-tight-2 .brand-logo{width:38px;height:46px}.navbar.nav-tight-2 .nav-cta{padding:10px 14px;font-size:14px}.navbar.nav-tight-2 .tour-trigger,.navbar.nav-tight-2 .login-link{padding:9px 10px;font-size:14px}.navbar.nav-tight-2 .tour-trigger .nav-icon,.navbar.nav-tight-2 .login-link .nav-icon{display:none}.navbar.nav-tight-2 .lang-switch-button{padding-inline:10px}.navbar:not(.navbar-home){padding-inline:clamp(16px,2.5vw,56px)}.fd-home{--fd-green:#123d31;--fd-deep:#0b2b22;--fd-cream:#f5efe2;--fd-paper:#fffaf0;--fd-terracotta:#b85c3a;--fd-sage:#bac5a8;--fd-ink:#1a392d;background:var(--fd-cream);color:var(--fd-ink);font-family:Manrope,DM Sans,sans-serif;overflow:hidden}.fd-home h1,.fd-home h2,.fd-home h3,.fd-home .fd-university-card strong,.fd-home .fd-attraction-info strong{font-family:Fraunces,Georgia,serif;font-weight:500}.fd-hero{background:var(--fd-deep);color:#fffaf0;isolation:isolate;align-items:center;min-height:min(850px,100svh);padding:155px 9% 125px;display:flex;position:relative;overflow:hidden}.fd-hero-image,.fd-hero-shade{z-index:-2;width:100%;height:100%;position:absolute;inset:0}.fd-hero-image{object-fit:cover;object-position:center 53%;animation:1.4s ease-out both fd-hero-image-enter}.fd-hero-shade{z-index:-1;background:linear-gradient(90deg,#08231ad4 0%,#08231a9c 42%,#08231a1f 100%),linear-gradient(#0000 65%,#08231a85 100%)}@keyframes fd-hero-image-enter{0%{opacity:.7;transform:scale(1.055)}to{opacity:1;transform:scale(1)}}.fd-hero-copy{max-width:780px;animation:.9s ease-out .12s both fd-hero-copy-enter}@keyframes fd-hero-copy-enter{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.fd-hero-kicker,.fd-section-kicker{letter-spacing:2px;align-items:center;gap:11px;margin:0 0 22px;font-size:10px;font-weight:800;line-height:1.7;display:flex}.fd-hero-kicker{color:#f4dfb9}.fd-hero-kicker span{background:#e4c18d;width:26px;height:1px}.fd-hero h1{letter-spacing:-5.5px;max-width:760px;margin:0;font-size:clamp(58px,8.2vw,118px);line-height:.91}.fd-hero h1 em{color:#f0c49b;font-style:normal;font-weight:400;display:block}.fd-hero h1>span{color:#fff8e9;letter-spacing:-.4px;max-width:520px;margin-top:19px;font-family:Manrope,sans-serif;font-size:clamp(16px,2vw,23px);font-weight:500;line-height:1.5;display:block}.fd-hero-description{color:#f0eee2;max-width:480px;margin:23px 0 0;font-size:14px;line-height:1.9}.fd-hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px;display:flex}.fd-button{justify-content:space-between;align-items:center;gap:26px;min-height:48px;padding:0 18px;font-size:12px;font-weight:800;text-decoration:none;transition:transform .25s,background .25s;display:inline-flex}.fd-button:hover{transform:translateY(-3px)}.fd-button-cream{background:var(--fd-cream);color:var(--fd-green)}.fd-button-green{background:var(--fd-green);color:var(--fd-paper)}.fd-button span{font-size:17px}.fd-hero-watch{color:#fff8e9;align-items:center;gap:10px;font-size:11px;font-weight:700;display:inline-flex}.fd-play{border:1px solid #fff9e9a8;border-radius:50%;place-items:center;width:29px;height:29px;font-size:9px;transition:color .2s,background .2s;display:grid}.fd-hero-watch:hover .fd-play{color:var(--fd-green);background:var(--fd-cream)}.fd-hero-footer-left,.fd-hero-footer-right{color:#fff3dd;letter-spacing:1.5px;font-size:9px;font-weight:700;position:absolute;bottom:63px}.fd-hero-footer-left{left:9%}.fd-hero-footer-left span{color:#f0c49b;padding:0 7px}.fd-hero-footer-right{right:8%}.fd-hero-side-label{color:#fff8e7b8;letter-spacing:2px;writing-mode:vertical-rl;font-size:8px;position:absolute;top:46%;right:20px}.fd-search-wrap{z-index:8;width:min(1040px,90%);margin:-42px auto 0;position:relative}.fd-search-bar{-webkit-backdrop-filter:blur(18px);background:#fffaf0e8;border:1px solid #ffffffb0;border-radius:18px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:17px;min-height:91px;padding:13px 15px 13px 25px;display:grid;box-shadow:0 18px 50px #1330242e}.fd-search-symbol{width:34px;height:34px;color:var(--fd-green);border:1px solid #c9c4b1;border-radius:50%;place-items:center;font-size:25px;line-height:1;display:grid}.fd-search-field{gap:7px;min-width:0;display:grid}.fd-search-field label{color:#778071;letter-spacing:1.5px;font-size:9px;font-weight:800}.fd-search-field input{width:100%;min-width:0;color:var(--fd-green);font:inherit;background:0 0;border:0;outline:0;padding:0;font-size:14px}.fd-search-field input::placeholder{color:#8b9185;opacity:1}.fd-search-bar button{background:var(--fd-green);color:#fffaf0;min-height:51px;font:inherit;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:20px;padding:0 19px;font-size:12px;font-weight:800;transition:background .2s,transform .2s;display:flex}.fd-search-bar button:hover{background:#275641;transform:translateY(-1px)}.fd-search-bar button span{font-size:16px}.fd-search-hints{color:#777e70;justify-content:center;gap:10px;padding:13px 0 0;font-size:10px;display:flex}.fd-search-hints>span{color:var(--fd-terracotta);letter-spacing:1px;font-weight:800}.fd-search-hints i{color:#b5a68b;font-style:normal}.fd-search-message{color:var(--fd-green);text-align:center;margin:10px 0 0;font-size:12px}.fd-film-section{grid-template-columns:.66fr 1.34fr;align-items:center;gap:7%;padding:105px 9% 95px;display:grid}.fd-section-kicker{color:var(--fd-terracotta);margin-bottom:17px}.fd-film-copy h2,.fd-moving-heading h1,.fd-moving-heading h2,.fd-final-section h2{letter-spacing:-2.5px;margin:0;font-size:clamp(42px,5vw,67px);line-height:.98}.fd-film-copy h2 em,.fd-moving-heading h1 em,.fd-moving-heading h2 em,.fd-final-section h2 em{color:#8a9a79;font-weight:400;display:block}.fd-film-copy>p:not(.fd-section-kicker){color:#5c6a5d;max-width:320px;margin:22px 0;font-size:13px;line-height:1.9}.fd-film-note{color:#777d6d;letter-spacing:1.5px;border-top:1px solid #d1c8b6;padding-top:12px;font-size:9px;font-weight:800;display:inline-block}.fd-film-wrap{background:#e7e1d3;min-width:0;padding:12px}.fd-film-video{aspect-ratio:16/9;object-fit:cover;background:#09241b;width:100%;display:block}.fd-film-caption{color:#5e6a5e;letter-spacing:1.2px;justify-content:space-between;gap:10px;padding:12px 2px 1px;font-size:9px;font-weight:800;display:flex}.fd-moving-section{padding:77px 0 72px;overflow:hidden}.fd-university-section{background:#e8e7d8}.fd-attractions-section{background:var(--fd-paper)}.fd-moving-heading{grid-template-columns:1fr .6fr;align-items:end;gap:8%;margin-bottom:34px;padding:0 9%;display:grid}.fd-moving-heading>p{color:#5e6c60;max-width:390px;margin:0 0 4px;font-size:12px;line-height:1.9}.fd-moving-heading h1 em,.fd-moving-heading h2 em{color:var(--fd-terracotta)}.fd-moving-window{width:100%;overflow:hidden}.fd-moving-track{gap:16px;width:max-content;animation:52s linear infinite fd-rail-move;display:flex}.fd-moving-window:hover .fd-moving-track,.fd-moving-window:focus-within .fd-moving-track{animation-play-state:paused}@keyframes fd-rail-move{0%{transform:translate(0)}to{transform:translate(-50%)}}.fd-university-card,.fd-attraction-card{width:265px;min-height:270px;color:var(--fd-ink);background:#fffaf0;border:1px solid #ddd8c8;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.fd-university-card{padding:19px}.fd-university-mark{width:62px;height:62px;color:var(--fd-green);background:#e8eadc;border:1px solid #b8c1a6;border-radius:50%;place-items:center;margin-bottom:25px;font-family:Fraunces,Georgia,serif;font-size:15px;font-weight:600;display:grid}.fd-mark-tudublin{background:var(--fd-green);color:var(--fd-cream)}.fd-mark-tcd{color:#803e2c;background:#e8d0b5}.fd-mark-ucd{color:#234e3e;background:#d6e1d2}.fd-mark-dcu{color:#24445e;background:#d4dce2}.fd-card-category{color:#8b7656;letter-spacing:1.4px;font-size:8px;font-weight:800;display:block}.fd-university-card>strong,.fd-attraction-info>strong{letter-spacing:-.4px;margin-top:8px;font-size:25px;line-height:1.05;display:block}.fd-card-location{color:#697568;margin-top:8px;font-size:11px;display:block}.fd-card-link{color:var(--fd-green);justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:18px;font-size:10px;font-weight:800;display:flex}.fd-card-link b{font-size:16px;font-weight:500;transition:transform .2s}.fd-university-card:hover .fd-card-link b,.fd-attraction-card:hover .fd-card-link b{transform:translate(3px,-3px)}.fd-moving-hint{color:#858879;letter-spacing:1.4px;margin:18px 9% 0;font-size:9px;font-weight:700}.fd-attraction-card{width:310px;min-height:390px}.fd-attraction-card-link{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.fd-attraction-image-wrap{background:#d9dfd0;height:160px;position:relative;overflow:hidden}.fd-attraction-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.7,.3,1);display:block}.fd-attraction-card:hover .fd-attraction-image-wrap img{transform:scale(1.06)}.fd-attraction-image-wrap>span{background:var(--fd-cream);width:31px;height:31px;color:var(--fd-green);place-items:center;font-size:10px;font-weight:800;display:grid;position:absolute;top:10px;left:10px}.fd-attraction-image-wrap>.fd-attraction-icon{color:#fffaf0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#123d31e6;border:1px solid #fffaf0d1;border-radius:50%;width:38px;height:38px;box-shadow:0 4px 14px #08231a3d}.fd-attraction-icon svg{width:19px;height:19px}.fd-attraction-icon svg path{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.fd-attraction-info{flex-direction:column;flex:1;padding:17px;display:flex}.fd-attraction-info>strong{font-size:25px}.fd-attraction-info p{color:#657165;margin:9px 0 14px;font-size:11px;line-height:1.7}.fd-attraction-photo-credit{color:#7a806f;border-top:1px solid #ece5d7;margin:0;padding:7px 12px 9px;font-size:8px;line-height:1.4}.fd-attraction-photo-credit a{color:#53644f;text-underline-offset:2px;text-decoration:underline}.fd-final-section{background:var(--fd-green);color:var(--fd-cream);grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:25px;padding:77px 9%;display:grid}.fd-final-mark{color:#edcf9e;border:1px solid #d4c59b;border-radius:50%;place-items:center;width:64px;height:64px;font-size:34px;display:grid}.fd-final-section .fd-section-kicker{color:#e4c18d;margin-bottom:13px}.fd-final-section h2{max-width:600px;font-size:clamp(32px,4vw,49px)}.fd-final-section h2 em{color:#d0d9bc;display:inline}.fd-final-section>div:nth-child(2)>p:not(.fd-section-kicker){color:#d5dfd4;max-width:540px;margin:15px 0 0;font-size:12px;line-height:1.8}.fd-final-actions{flex-direction:column;align-items:flex-start;gap:15px;display:flex}.fd-final-text-link{color:var(--fd-cream);text-underline-offset:4px;font-size:11px;text-decoration:underline}.fd-final-section>small{color:#bacbbe;grid-column:2/-1;font-size:10px;line-height:1.7}@media (width<=850px){.fd-hero{min-height:740px;padding:150px 7% 120px}.fd-hero h1{font-size:clamp(58px,10vw,83px)}.fd-hero-footer-left{left:7%}.fd-film-section{grid-template-columns:1fr;gap:30px;padding:75px 7%}.fd-film-copy>p:not(.fd-section-kicker){max-width:520px}.fd-moving-heading{grid-template-columns:1fr;gap:18px;padding:0 7%}.fd-moving-hint{margin-left:7%}.fd-final-section{grid-template-columns:58px minmax(0,1fr);padding:62px 7%}.fd-final-mark{width:54px;height:54px;font-size:28px}.fd-final-actions{flex-flow:wrap;grid-column:2;align-items:center}.fd-final-section>small{grid-column:2}}@media (width<=600px){.fd-hero{align-items:center;min-height:740px;padding:143px 6% 135px}.fd-hero-shade{background:linear-gradient(90deg,#08231ad1,#08231a6b),linear-gradient(#0000 35%,#08231a94)}.fd-hero h1{letter-spacing:-3px;font-size:clamp(55px,15vw,75px)}.fd-hero h1>span{font-size:16px}.fd-hero-description{font-size:13px}.fd-hero-actions{flex-direction:column;align-items:flex-start;gap:18px}.fd-hero-footer-left{font-size:8px;bottom:69px}.fd-hero-footer-right{font-size:8px;bottom:43px;right:6%}.fd-hero-side-label{font-size:7px;right:9px}.fd-search-wrap{width:92%;margin-top:-34px}.fd-search-bar{border-radius:14px;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:15px}.fd-search-symbol{width:27px;height:27px;font-size:21px}.fd-search-field input{font-size:12px}.fd-search-bar button{grid-column:1/-1;justify-content:center;min-height:43px}.fd-search-hints{flex-wrap:wrap;font-size:9px}.fd-film-section{padding:68px 6% 60px}.fd-film-copy h2,.fd-moving-heading h2{font-size:49px}.fd-film-wrap{padding:7px}.fd-film-caption{letter-spacing:.8px;font-size:7px}.fd-moving-section{padding:62px 0 58px}.fd-moving-heading{padding:0 6%}.fd-university-card{width:236px;min-height:260px;padding:16px}.fd-attraction-card{width:275px}.fd-moving-hint{margin-left:6%;font-size:8px}.fd-final-section{grid-template-columns:1fr;gap:20px;padding:55px 6%}.fd-final-actions,.fd-final-section>small{grid-column:1}}@media (prefers-reduced-motion:reduce){.fd-home *,.fd-home :before,.fd-home :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.fd-hero-kicker{letter-spacing:1.5px;gap:13px;margin-bottom:25px;font-size:13px}.fd-hero h1{max-width:820px;font-size:clamp(57px,7.8vw,112px)}.fd-hero h1 em{color:#e9b789}.fd-hero h1>span{max-width:570px;margin-top:22px;font-size:clamp(19px,2.4vw,28px);font-weight:500;line-height:1.35}.fd-hero-description{max-width:520px;font-size:15px}.fd-search-field input::placeholder{color:#70796d}.fd-film-section{isolation:isolate;color:#f5efe2;background:radial-gradient(at 8% 18%,#b95f3b33,#0000 35%),radial-gradient(at 91% 80%,#bac5a829,#0000 33%),linear-gradient(130deg,#0b2b22 0%,#123d31 55%,#1b4938 100%);position:relative;overflow:hidden}.fd-film-section:before{content:"";z-index:-1;border:1px solid #f5efe221;border-radius:50%;width:380px;height:380px;position:absolute;top:-190px;left:28%;box-shadow:0 0 0 26px #f5efe206,0 0 0 58px #f5efe206,0 0 0 92px #f5efe205}.fd-film-section:after{content:"EXPLORE";z-index:-1;color:#f5efe20b;pointer-events:none;font-family:Fraunces,Georgia,serif;font-size:clamp(100px,18vw,260px);font-weight:600;line-height:1;position:absolute;bottom:5px;right:-18px}.fd-film-copy,.fd-film-wrap,.fd-film-note{z-index:1;position:relative}.fd-film-copy .fd-section-kicker{color:#e9b789}.fd-film-copy h2{color:#fff8e9}.fd-film-copy h2 em{color:#c5d0ae}.fd-film-copy>p:not(.fd-section-kicker){color:#dbe4d5}.fd-film-note{color:#e6d9c2;border-color:#f5efe259}.fd-film-wrap{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f5efe217;border:1px solid #f5efe240;padding:13px;box-shadow:0 25px 70px #0000003d}.fd-film-video{background:#071a14;border:1px solid #fffaf01f}.fd-film-caption{color:#f0e5d1}.fd-film-note code{color:#f0c49b}@media (width<=850px){.fd-hero-kicker{font-size:12px}}@media (width<=600px){.fd-hero-kicker{letter-spacing:1.1px;margin-bottom:19px;font-size:11px}.fd-hero h1{letter-spacing:-2.6px;font-size:clamp(48px,13vw,72px)}.fd-hero h1>span{font-size:19px}.fd-film-section:before{width:260px;height:260px;top:-120px;left:38%}.fd-film-wrap{padding:7px}}.fd-search-field label{letter-spacing:1.3px;font-size:11px}.fd-search-field input:focus-visible{outline-offset:5px;border-radius:2px;outline:2px solid #a85c3b}.fd-search-message{color:#7b3927;text-align:center;margin:11px 0 0;font-size:12px;line-height:1.6}.fd-university-card{background:var(--fd-paper);border:1px solid #d6d1bf;border-radius:2px;width:300px;min-height:300px;padding:0;transition:transform .3s,box-shadow .3s;box-shadow:0 9px 24px #112c200f}.fd-university-card:hover{transform:translateY(-5px);box-shadow:0 18px 38px #112c2026}.fd-university-card-link{color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.fd-university-card-link:focus-visible{outline:2px solid var(--fd-terracotta);outline-offset:-3px}.fd-university-photo{color:#fffaf0;isolation:isolate;background-color:#4a6352;background-position:50%;background-size:cover;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:11px;min-height:190px;padding:13px 14px 16px;display:flex;position:relative;overflow:hidden}.fd-university-photo-shade{z-index:-1;background:linear-gradient(#051a131f 0%,#051a132e 32%,#051a13db 100%);transition:background .3s;position:absolute;inset:0}.fd-university-card:hover .fd-university-photo-shade{background:linear-gradient(#051a1314 0%,#051a133d 26%,#051a13e6 100%)}.fd-university-logo-wrap{background:#fffaf0f2;border:1px solid #fffaf0a6;border-radius:3px;width:80px;height:56px;position:relative;box-shadow:0 4px 15px #0000001a}.fd-university-logo{z-index:1;object-fit:contain;width:calc(100% - 18px);height:calc(100% - 12px);display:block;position:absolute;inset:6px 9px}.fd-university-photo .fd-card-category{color:#f2d7a8;letter-spacing:1.5px;font-size:9px}.fd-university-name{color:#fffaf0;letter-spacing:-.5px;text-shadow:0 2px 12px #0000003d;max-width:100%;margin:0;font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:500;line-height:1.02;display:block}.fd-university-details{flex-direction:column;flex:1;padding:13px 15px 14px;display:flex}.fd-university-details .fd-card-location{color:#697568;margin-top:0;font-size:11px}.fd-university-photo-credit{color:#7a806f;border-top:1px solid #ece5d7;margin:0;padding:7px 12px 9px;font-size:8px;line-height:1.4}.fd-university-photo-credit a{color:#53644f;text-underline-offset:2px;text-decoration:underline}.fd-university-photo-credit a:focus-visible,.fd-attraction-photo-credit a:focus-visible{outline:2px solid var(--fd-terracotta);outline-offset:2px}.fd-university-details .fd-card-link{border-top:1px solid #e3ddce;margin-top:auto;padding-top:13px}@media (width<=600px){.fd-university-card{width:265px;min-height:286px;padding:0}.fd-university-photo{min-height:178px}.fd-university-name{font-size:22px}}.fd-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fd-hero-links{width:min(560px,100%);display:grid}.fd-hero-links a{color:#fffaf0;border-bottom:1px solid #fffaf047;grid-template-columns:48px minmax(0,1fr) 32px;align-items:center;gap:12px;min-height:92px;text-decoration:none;transition:padding .25s,color .25s;display:grid}.fd-hero-links a:first-child{border-top:1px solid #fffaf047}.fd-hero-links a:hover,.fd-hero-links a:focus-visible{color:#f0c49b;padding-inline:8px}.fd-hero-links a:focus-visible{outline-offset:4px;outline:2px solid #f0c49b}.fd-hero-links span{color:#e4c18d;letter-spacing:1.5px;font-size:13px;font-weight:800}.fd-hero-links strong{letter-spacing:-1px;font-family:Fraunces,Georgia,serif;font-size:clamp(28px,3.1vw,50px);font-weight:500;line-height:1.05}.fd-hero-links b{justify-self:end;font-size:24px;font-weight:500;transition:transform .25s}.fd-hero-links a:hover b{transform:translate(3px,-3px)}.fd-hero-rails{z-index:1;flex-direction:column;justify-content:center;gap:20px;width:min(560px,40vw);display:flex;position:absolute;top:104px;bottom:48px;right:7%}.fd-hero-rail{min-width:0}.fd-hero-rail-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.fd-hero-rail-title{color:#f4dfb9;letter-spacing:1.8px;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.fd-hero-rail-arrows{gap:8px;display:flex}.fd-hero-rail-arrows button{color:#fffaf0;width:34px;height:34px;font:inherit;cursor:pointer;background:#08231a59;border:1px solid #fffaf0a6;border-radius:50%;place-items:center;font-size:15px;transition:background .2s,color .2s;display:grid}.fd-hero-rail-arrows button:hover,.fd-hero-rail-arrows button:focus-visible{background:var(--fd-cream);color:var(--fd-green)}.fd-hero-rail-row{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#fffaf08c transparent;gap:14px;padding-bottom:8px;display:flex;overflow-x:auto}.fd-hero-rail-row:focus-visible{outline-offset:4px;outline:2px solid #f0c49b}.fd-hero-rail-row>article{scroll-snap-align:start}.fd-hero-rails .fd-university-card,.fd-hero-rails .fd-attraction-card{flex:none;width:230px;min-height:0}.fd-hero-rails .fd-university-photo{min-height:132px}.fd-hero-rails .fd-university-name{font-size:18px}.fd-hero-rails .fd-university-logo-wrap{width:64px;height:44px}.fd-hero-rails .fd-attraction-image-wrap{height:104px}.fd-hero-rails .fd-attraction-info{padding:12px 14px}.fd-hero-rails .fd-attraction-info>strong{font-size:20px}.fd-hero-rails .fd-attraction-info p{display:none}@media (width>=1001px){.fd-hero-copy{max-width:calc(100% - min(560px,40vw) - 40px)}}@media (width<=1000px){.fd-hero{flex-direction:column;align-items:stretch;gap:36px}.fd-hero-rails{width:100%;position:static}.fd-hero-links strong{font-size:clamp(26px,7vw,38px)}.fd-hero-links a{min-height:72px}}@media (width<=600px){.fd-hero{padding-top:200px}}.fd-location-map{background:#fffaf0c7;border:1px solid #d5d4c3;margin:38px 9% 0;padding:27px}.fd-location-map-attractions{background:#f7f3e9;border-color:#e6dece}.fd-map-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px;display:flex}.fd-map-heading .fd-section-kicker{margin:0 0 8px;font-size:8px}.fd-map-heading h3{color:var(--fd-green);letter-spacing:-.8px;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(24px,3vw,36px);font-weight:500}.fd-map-caption{color:#788172;letter-spacing:1.1px;flex-shrink:0;align-items:center;gap:8px;padding-bottom:5px;font-size:8px;font-weight:800;display:inline-flex}.fd-map-caption i{background:var(--fd-terracotta);border-radius:50%;width:7px;height:7px}.fd-map-panel{background:#eeefe4;border:1px solid #d8d8c8;grid-template-columns:minmax(0,1.55fr) minmax(260px,.8fr);height:360px;display:grid}.fd-map-canvas{background:#eeefe4;min-width:0;min-height:0;overflow:hidden}.fd-map-legend-icon path{fill:none;stroke:#fffaf0;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.fd-leaflet-map{background:#e8eee1;width:100%;height:100%}.fd-map-marker{background:0 0;border:0}.fd-map-marker-campus,.fd-map-marker-attraction{background:var(--fd-green);border:3px solid #fffaf0;border-radius:50%;place-items:center;width:40px;height:40px;transition:transform .18s,background .18s;display:grid;box-shadow:0 2px 8px #19302459}.fd-map-marker-attraction{background:var(--fd-terracotta)}.fd-map-marker-campus svg,.fd-map-marker-attraction svg{fill:none;stroke:#fffaf0;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px;height:20px}.fd-map-marker.is-active .fd-map-marker-campus,.fd-map-marker.is-active .fd-map-marker-attraction{background:var(--fd-terracotta);transform:scale(1.2)}.fd-map-marker.is-active .fd-map-marker-attraction{background:var(--fd-green)}.fd-map-popup .leaflet-popup-content{margin:12px 15px}.fd-map-popup p{color:#788172;margin:4px 0 8px;font-size:12px}.fd-map-popup a{color:var(--fd-green);font-weight:700}.fd-leaflet-map .leaflet-control-zoom a{color:var(--fd-green)}.fd-leaflet-map .leaflet-control-attribution{font-size:9px}.fd-map-legend{background:#fffaf0;border-left:1px solid #d8d8c8;align-content:start;gap:0;height:100%;min-height:0;margin:0;padding:9px 18px;list-style:none;display:grid;overflow-y:auto}.fd-map-legend li+li{border-top:1px solid #e8e2d5}.fd-map-legend a{min-height:50px;color:var(--fd-green);grid-template-columns:29px minmax(0,1fr) 18px;align-items:center;gap:9px;text-decoration:none;transition:padding .18s,color .18s;display:grid}.fd-map-legend a:hover,.fd-map-legend a:focus-visible,.fd-map-legend a.is-active{color:var(--fd-terracotta);padding-inline:4px}.fd-map-legend a:focus-visible{outline:2px solid var(--fd-terracotta);outline-offset:2px}.fd-map-legend-icon{background:var(--fd-green);border-radius:50%;place-items:center;width:32px;height:32px;padding:7px;transition:transform .2s,background .2s;display:grid}.fd-location-map-attractions .fd-map-legend-icon{background:var(--fd-terracotta)}.fd-map-legend a:hover .fd-map-legend-icon,.fd-map-legend a:focus-visible .fd-map-legend-icon,.fd-map-legend a.is-active .fd-map-legend-icon{background:var(--fd-terracotta);transform:rotate(-8deg)scale(1.08)}.fd-location-map-attractions .fd-map-legend a:hover .fd-map-legend-icon,.fd-location-map-attractions .fd-map-legend a:focus-visible .fd-map-legend-icon,.fd-location-map-attractions .fd-map-legend a.is-active .fd-map-legend-icon{background:var(--fd-green)}.fd-map-legend strong,.fd-map-legend small{display:block}.fd-map-legend strong{font-size:10px;line-height:1.4}.fd-map-legend small{color:#788172;margin-top:2px;font-size:9px;line-height:1.35}.fd-map-legend b{justify-self:end;font-size:14px;font-weight:500}.fd-map-disclaimer{color:#788172;margin:13px 0 0;font-size:9px;line-height:1.6}@media (width<=850px){.fd-location-map{margin-inline:7%}}@media (width<=700px){.fd-location-map{margin:30px 6% 0;padding:18px}.fd-map-heading{flex-direction:column;align-items:start;gap:8px}.fd-map-heading h3{font-size:27px}.fd-map-panel{grid-template-columns:1fr;height:auto}.fd-map-canvas{height:280px}.fd-map-legend{border-top:1px solid #d8d8c8;border-left:0;grid-template-columns:repeat(2,minmax(0,1fr));height:auto;max-height:250px;padding:8px 12px}.fd-map-legend li:nth-child(2){border-top:0}.fd-map-legend a{grid-template-columns:28px minmax(0,1fr) 14px;gap:6px;padding-inline:4px}.fd-map-legend-icon{width:27px;height:27px}}@media (width<=420px){.fd-location-map{padding:14px}.fd-map-legend{grid-template-columns:1fr}.fd-map-legend li:nth-child(2){border-top:1px solid #e8e2d5}}@media (prefers-reduced-motion:reduce){.fd-map-marker-campus,.fd-map-marker-attraction,.fd-map-legend a,.fd-map-legend-icon{transition:none}}.fd-hero{--fd-lime:#c8f25a;align-items:center;min-height:min(900px,100svh);padding:150px 7% 200px}.fd-hero-image{object-position:70% 55%}.fd-hero .fd-hero-shade{background:radial-gradient(at 0 100%,#0c4a30f2 0%,#0c4a3000 45%),linear-gradient(90deg,#062e21f0 0%,#083a28d1 34%,#083a2840 62%,#083a2800 80%),linear-gradient(#062e2100 66%,#062e21e6 100%)}.fd-hero .fd-hero-copy{z-index:2;max-width:640px;position:relative}.fd-hero-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.fd-hero-pill{color:#fffaf0;border:1.5px solid #fffaf0bf;border-radius:999px;align-items:center;gap:12px;margin:0 0 30px;padding:10px 22px 10px 14px;font-size:15px;font-weight:600;display:inline-flex}.fd-hero-pill .fd-hero-icon{width:24px;height:24px}.fd-hero h1{color:#fff;letter-spacing:-2px;text-shadow:0 4px 24px #00000040;max-width:none;margin:0;font-family:Manrope,sans-serif;font-size:clamp(46px,6vw,88px);font-weight:800;line-height:1.02;position:relative}.fd-hero h1 em{color:var(--fd-lime);transform-origin:0 100%;font-style:normal;font-weight:800;display:block;transform:skew(-9deg)}.fd-hero-underline{fill:none;width:min(420px,70%);height:18px;stroke:var(--fd-lime);stroke-linecap:round;stroke-width:5px;margin:2px 0 0 12%;display:block}.fd-hero-lead{color:#f1f5ec;max-width:520px;margin:26px 0 0;font-size:clamp(16px,1.4vw,19px);line-height:1.6}.fd-hero-cta{flex-wrap:wrap;gap:18px;margin-top:34px;display:flex}.fd-cta-primary,.fd-cta-outline{border-radius:999px;align-items:center;gap:14px;min-height:58px;padding:0 30px;font-size:18px;font-weight:800;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.fd-cta-primary{background:var(--fd-lime);color:#0d3a28;box-shadow:0 10px 30px #c8f25a59}.fd-cta-primary span{font-size:22px}.fd-cta-outline{color:#fffaf0;border:1.5px solid #fffaf0d9;font-weight:700}.fd-cta-primary:hover,.fd-cta-outline:hover{transform:translateY(-2px)}.fd-cta-outline:hover{background:#fffaf01f}.fd-cta-primary:focus-visible,.fd-cta-outline:focus-visible{outline-offset:3px;outline:3px solid #fffaf0}.fd-hero-card{z-index:2;color:#123d31;background:#fffffff2;border-radius:22px;width:min(360px,30vw);padding:26px 26px 20px;position:absolute;top:150px;right:6%;box-shadow:0 20px 50px #062e214d}.fd-hero-flag{border-radius:6px;width:62px;height:42px;display:flex;position:absolute;top:-20px;left:22px;overflow:hidden;transform:rotate(-10deg);box-shadow:0 6px 14px #00000040}.fd-hero-flag i{flex:1}.fd-hero-flag i:first-child{background:#169b62}.fd-hero-flag i:nth-child(2){background:#fff}.fd-hero-flag i:nth-child(3){background:#ff883e}.fd-hero-card h2{letter-spacing:-.5px;margin:6px 0 14px 64px;font-family:Manrope,sans-serif;font-size:26px;font-weight:800}.fd-hero-card ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.fd-hero-card li{color:#1a392d;align-items:center;gap:12px;padding:7px 6px;font-size:15px;font-weight:600;display:flex}.fd-hero-card .fd-hero-icon{color:#fff;stroke-width:2.4px;background:#22a45d;border-radius:50%;width:24px;height:24px}.fd-hero-card .fd-hero-icon.gold{background:#d99a2b}.fd-hero-card .fd-hero-icon path:first-child{stroke:none}.fd-hero-place{z-index:2;color:#fffaf0;text-shadow:0 2px 10px #00000080;align-items:center;gap:8px;margin:0;font-family:Fraunces,Georgia,serif;font-size:18px;font-style:italic;display:flex;position:absolute;bottom:230px;right:12%}.fd-hero-flight{z-index:1;pointer-events:none;width:min(520px,36vw);position:absolute;top:95px;left:32%}.fd-hero-flight-path{fill:none;stroke:#fffaf0cc;stroke-dasharray:6 9;stroke-linecap:round;stroke-width:2.5px}.fd-hero-plane{fill:#fffaf0;filter:drop-shadow(0 2px 4px #0000004d)}.fd-hero-shamrock{z-index:1;fill:#3db552;filter:drop-shadow(0 6px 14px #0000004d);pointer-events:none;width:clamp(90px,9vw,150px);position:absolute;bottom:70px;left:-10px;transform:rotate(-12deg)}.fd-hero-shamrock-stem{fill:none;stroke:#2e9a43;stroke-linecap:round;stroke-width:6px}.fd-hero-skyline{z-index:1;fill:none;width:100%;height:150px;stroke:var(--fd-lime);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;filter:drop-shadow(0 0 6px #c8f25a8c);pointer-events:none;position:absolute;bottom:18px;left:0;right:0}.fd-search-wrap{margin-top:28px}.fd-section-rail{margin:0 9% 8px}.fd-section-rail .fd-hero-rail-title{color:#a14d30}.fd-section-rail .fd-hero-rail-arrows button{color:#123d31;background:#fffaf0;border-color:#c9c4b1}.fd-section-rail .fd-hero-rail-arrows button:hover,.fd-section-rail .fd-hero-rail-arrows button:focus-visible{color:#fffaf0;background:#123d31}.fd-section-rail .fd-hero-rail-row{scrollbar-color:#b9b39f transparent}.fd-section-rail .fd-university-card,.fd-section-rail .fd-attraction-card{flex:none}@media (width<=1000px){.fd-hero{flex-direction:column;align-items:flex-start;gap:30px;padding:130px 6% 190px}.fd-hero-card{width:min(420px,100%);margin-top:16px;position:relative;top:auto;right:auto}.fd-hero-flight,.fd-hero-place{display:none}}@media (width<=600px){.fd-hero{padding-top:200px}.fd-hero-pill{font-size:13px}.fd-cta-primary,.fd-cta-outline{min-height:50px;padding:0 22px;font-size:16px}.fd-hero-skyline{height:90px}.fd-section-rail{margin-inline:6%}}.fd-hero .fd-hero-image{object-position:45% 62%;filter:saturate(1.35)contrast(1.1)brightness(.72)sepia(.12);width:72%;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 30%);mask-image:linear-gradient(90deg,#0000 0%,#000 30%)}.fd-hero-dusk{z-index:-1;mix-blend-mode:soft-light;pointer-events:none;background:linear-gradient(#ff6e968c 0%,#ff965a6b 28%,#ffaf641f 50%,#0c1e5073 100%);width:72%;position:absolute;inset:0 0 0 auto;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 30%);mask-image:linear-gradient(90deg,#0000 0%,#000 30%)}.fd-hero-credit{z-index:2;color:#fffaf0b3;margin:0;font-size:10px;position:absolute;bottom:6px;right:18px}.fd-hero-credit a{color:inherit}.fd-guide-page{min-height:calc(100vh - 82px)}.fd-guide-section{padding-top:48px}.fd-guide-page .fd-moving-heading h1{letter-spacing:-2px;margin:0;font-size:clamp(38px,4.5vw,60px);line-height:1}.fd-guide-page .fd-moving-heading h1 em{font-weight:400;display:block}@media (width<=1000px){.fd-hero .fd-hero-image,.fd-hero-dusk{width:100%}}.hx-hero{--hx-lime:#dff27f;--hx-lime-deep:#c7ec5c;--hx-yellow:#f6d23a;isolation:isolate;color:#fff;background:#0f4430;height:clamp(760px,100svh,1000px);font-family:DM Sans,sans-serif;position:relative;overflow:hidden}.hx-photo{z-index:-3;object-fit:cover;object-position:62% 46%;filter:saturate(1.45)contrast(1.08)brightness(1.02);width:72%;height:86%;position:absolute;top:0;right:0}.hx-sky{z-index:-2;pointer-events:none;mix-blend-mode:overlay;background:linear-gradient(#785aff8c 0%,#ff69aa80 14%,#ff967852 26%,#ffaa6e00 40%),linear-gradient(#0000 52%,#0a285a59 100%);width:72%;height:86%;position:absolute;top:0;right:0}.hx-backdrop{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hx-copy{z-index:2;width:min(640px,40vw);position:absolute;top:clamp(108px,13vh,140px);left:7%}.hx-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:26px;height:26px}.hx-pill{color:#fff;letter-spacing:.005em;background:#0a2d2040;border:2px solid #ffffffb8;border-radius:999px;align-items:center;gap:14px;margin:0;padding:12px 26px 12px 22px;font-size:clamp(16px,1.1vw,20px);font-weight:500;display:inline-flex}.hx-sparkle{fill:none;width:34px;height:34px;stroke:var(--hx-yellow);stroke-linecap:round;stroke-width:3.4px;filter:drop-shadow(0 0 4px #f6d23a73);pointer-events:none;position:absolute}.hx-sparkle-pill{top:-26px;left:min(448px,70%);transform:rotate(10deg)}.hx-copy h1{letter-spacing:-.015em;font-variation-settings:"opsz" 144;margin:clamp(22px,3vh,34px) 0 0;font-family:Fraunces,Georgia,serif;font-size:clamp(52px,4.75vw,92px);font-weight:800;line-height:1.04;position:relative}.hx-line1{color:#fff;text-shadow:0 6px 26px #00000047;display:block}.hx-line2{background:linear-gradient(100deg,#f8fcd8 0%,#ecf8a8 35%,#d6f07a 70%,#c3e85e 100%);color:#0000;filter:drop-shadow(0 0 18px #d6f07a59);-webkit-background-clip:text;background-clip:text;padding-right:.08em;font-style:italic;font-weight:800;display:inline-block;position:relative}.hx-sparkle-title{stroke-width:3.6px;width:.5em;height:.5em;top:.18em;right:-.62em;transform:rotate(18deg)}.hx-brush{fill:none;width:58%;height:22px;stroke:var(--hx-lime);stroke-linecap:round;stroke-width:6px;filter:drop-shadow(0 0 6px #d6f07a73);margin:2px 0 0 38%;display:block}.hx-lead{color:#eef4ea;max-width:560px;margin:clamp(18px,2.6vh,30px) 0 0;font-size:clamp(16px,1.15vw,21px);line-height:1.55}.hx-cta{flex-wrap:wrap;gap:clamp(14px,1.4vw,24px);margin-top:clamp(22px,3.4vh,36px);display:flex}.hx-btn{border-radius:999px;justify-content:center;align-items:center;gap:14px;min-height:clamp(54px,7.3vh,70px);padding:0 clamp(24px,2vw,38px);font-size:clamp(16px,1.15vw,21px);text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.hx-btn-primary{color:#10261b;background:linear-gradient(#f3fad0 0%,#e2f3a6 100%);font-weight:800;box-shadow:0 10px 30px #d6f07a47,inset 0 -2px #0000000f}.hx-btn-primary span{font-size:1.15em}.hx-btn-outline{color:#fff;background:#0a2d202e;border:2px solid #ffffffd9;font-weight:500}.hx-btn-outline .hx-icon{width:30px;height:30px}.hx-btn:hover{transform:translateY(-2px)}.hx-btn-primary:hover{box-shadow:0 14px 34px #d6f07a66}.hx-btn-outline:hover{background:#ffffff1f}.hx-btn:focus-visible{outline-offset:3px;outline:3px solid #fff}.hx-card{z-index:3;color:#121a16;background:#fffffff7;border-radius:26px;width:clamp(300px,19vw,380px);padding:clamp(20px,2.3vh,26px) clamp(20px,1.6vw,28px) clamp(16px,2vh,22px);position:absolute;top:clamp(110px,13.5vh,150px);right:5%;box-shadow:0 24px 60px #0a1e3252}.hx-sparkle-card{width:46px;height:46px;top:-34px;right:-30px;transform:rotate(-8deg)}.hx-card-head{align-items:center;gap:14px;margin-bottom:10px;display:flex}.hx-flag{border-radius:7px;flex:none;width:58px;height:42px;margin:-42px 0 0 -14px;display:flex;position:relative;overflow:hidden;transform:rotate(-12deg)perspective(120px)rotateY(-12deg);box-shadow:0 8px 16px #00000038}.hx-flag i{flex:1}.hx-flag i:first-child{background:linear-gradient(#23b26d,#149058)}.hx-flag i:nth-child(2){background:linear-gradient(#fff,#ececec)}.hx-flag i:nth-child(3){background:linear-gradient(#ff9a4d,#f4782a)}.hx-flag:after{content:"";background:linear-gradient(105deg,#0000 30%,#ffffff4d 45%,#0000 60%,#00000014 85%);position:absolute;inset:0}.hx-card h2{letter-spacing:-.02em;margin:0;font-family:Manrope,sans-serif;font-size:clamp(22px,1.5vw,29px);font-weight:800}.hx-card ul{gap:clamp(4px,.8vh,8px);margin:0;padding:0;list-style:none;display:grid}.hx-card li{color:#1c2420;align-items:center;gap:12px;font-size:clamp(14px,.92vw,17px);font-weight:500;display:flex}.hx-tick{color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;display:grid;box-shadow:inset 0 -2px #0000001f}.hx-tick .hx-icon{stroke-width:3px;width:16px;height:16px}.hx-tick.amber{background:linear-gradient(#f3b24a,#e2961f)}.hx-tick.green{background:linear-gradient(#3fc069,#26a453)}.hx-place{z-index:2;color:#fff;text-shadow:0 2px 10px #0000008c;align-items:flex-start;gap:8px;margin:0;font-family:Caveat,cursive;font-size:clamp(22px,1.45vw,28px);font-weight:700;line-height:1.05;display:flex;position:absolute;top:52%;left:75.5%;transform:rotate(-6deg)}.hx-place .hx-icon{stroke-width:2.2px;width:24px;height:24px;margin-top:4px}.hx-place span{text-align:center}.hx-place-arrow{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.6px;filter:drop-shadow(0 2px 6px #00000073);width:180px;height:54px;position:absolute;top:48px;left:0}.hx-shamrock{z-index:1;filter:drop-shadow(0 10px 18px #0000004d)drop-shadow(0 0 16px #50c86440);pointer-events:none;width:clamp(110px,8.5vw,170px);position:absolute;top:49%;left:-2.2%;transform:rotate(-14deg)}.hx-shamrock-leaf{fill:#3fbd57}.hx-shamrock-vein{fill:none;stroke:#2a9a43;stroke-linecap:round;stroke-width:2px;opacity:.7}.hx-shamrock-stem{fill:none;stroke:#2fa548;stroke-linecap:round;stroke-width:7px}.hx-skyline{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hx-skyline-lines{fill:none;stroke:#f1f8b4;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;filter:drop-shadow(0 0 3px #e2f682e6)drop-shadow(0 0 10px #cdf0648c)}.hx-tram-track{fill:none;stroke:#e8f69a;stroke-width:2.4px;stroke-linecap:round}.hx-tram-windows{fill:#0f3a28;stroke:#e7f6a2;stroke-width:1.2px}.hx-tram-front{fill:none;stroke:#f8ffd6;stroke-width:2px}.hx-credit{z-index:3;color:#fff9;margin:0;font-size:10.5px;position:absolute;bottom:8px;right:14px}.hx-credit a{color:inherit}.hx-copy,.hx-card{animation:.9s cubic-bezier(.2,.8,.2,1) .1s both hx-rise}.hx-card{animation-delay:.25s}.hx-photo{animation:1.4s ease-out both hx-fade}@keyframes hx-rise{0%{opacity:0;transform:translateY(18px)}}@keyframes hx-fade{0%{opacity:0;transform:scale(1.04)}}@media (width<=1100px){.hx-hero{height:auto;min-height:980px}.hx-photo,.hx-sky{width:100%;height:62%;top:38%}.hx-copy{width:auto;padding:120px 6% 0;position:relative;top:auto;left:auto}.hx-card{width:min(380px,88%);margin:34px 6% 0;position:relative;top:auto;right:auto}.hx-place,.hx-shamrock{display:none}}@media (width<=600px){.hx-copy{padding-top:150px}.hx-copy h1{font-size:clamp(42px,12vw,56px)}.hx-btn{width:100%}}@media (prefers-reduced-motion:reduce){.hx-copy,.hx-card,.hx-photo{animation:none}}.hx-copy h1{font-variation-settings:"opsz" 72;letter-spacing:-.01em;font-variant-ligatures:no-common-ligatures;font-feature-settings:"liga" 0, "clig" 0;font-weight:700}.hx-line2{font-weight:700}.hx-brush{width:50%;margin:-2px 0 0 36%}.hx-hero:before{content:"";z-index:-4;background:radial-gradient(60% 70% at 70% 20%,#ff96bed9,#0000 70%),radial-gradient(50% 60% at 25% 35%,#ff78aabf,#0000 70%),linear-gradient(#4a63d8 0%,#7a6fe6 30%,#e58bc0 62%,#ffb08a 100%);width:72%;height:46%;position:absolute;top:0;right:0}.hx-photo,.hx-sky{height:70%;top:18%}.hx-photo{object-position:62% 30%;filter:saturate(1.6)sepia(.16)contrast(1.1)brightness(1.04);-webkit-mask-image:linear-gradient(#0000 0%,#000 22%);mask-image:linear-gradient(#0000 0%,#000 22%)}.hx-sky{background:linear-gradient(#ff78b48c 0%,#ff966e59 22%,#ffaa6400 38%),linear-gradient(#0000 55%,#0a285a4d 100%)}.hx-card{width:clamp(330px,21vw,400px)}.hx-card li{white-space:nowrap;font-size:clamp(14px,.9vw,17px)}.hx-tram{transform-origin:50%;transform-box:fill-box;transform:scale(.8)}.hx-copy h1{font-variation-settings:"opsz" 72, "WONK" 0, "SOFT" 50}.hx-credit{left:14px;right:auto}.hx-copy{width:min(640px,38vw)}.hx-cta{flex-wrap:nowrap}@media (width<=1100px){.hx-hero{background:linear-gradient(#0b3727 0%,#134a33 55%,#0f4430 100%);flex-direction:column;height:auto;min-height:0;padding-bottom:210px;display:flex}.hx-hero:before,.hx-sky{display:none}.hx-backdrop{opacity:.55}.hx-copy{order:1;width:auto;padding:130px 6% 0}.hx-lead{max-width:560px}.hx-cta{flex-wrap:wrap}.hx-photo{order:2;width:100%;height:320px;margin-top:34px;position:relative;inset:auto;-webkit-mask-image:none;mask-image:none}.hx-card{order:3;margin:-70px 6% 0}}@media (width<=700px){.hx-copy{padding-top:205px}.hx-copy h1{font-size:clamp(40px,11.5vw,54px)}.hx-brush{width:62%;margin-left:30%}.hx-photo{height:240px}.hx-sparkle-pill{display:none}}@media (width<=1100px){.hx-backdrop{display:none}.hx-photo{z-index:0}.hx-skyline{height:240px;top:auto;bottom:0}}@media (width<=700px){.hx-skyline{height:170px}.hx-hero{padding-bottom:110px}.hx-credit{bottom:4px}}.hx-hero:before,.hx-sky{display:none}.hx-photo{object-position:40% 58%;filter:saturate(1.12)contrast(1.04);height:90%;top:0;-webkit-mask-image:linear-gradient(#000 82%,#0000 100%);mask-image:linear-gradient(#000 82%,#0000 100%)}.hx-skyline-lines{stroke:#f3f9c4;stroke-width:1.5px;filter:drop-shadow(0 0 2px #e8f896f2)drop-shadow(0 0 7px #cdf06480)}.hx-tram{filter:drop-shadow(0 0 4px #e1f678bf)drop-shadow(0 0 14px #c8f05a59);transform:none}.hx-tram-rail{fill:none;stroke:#e9f6a6;stroke-width:1.6px;stroke-linecap:round}.hx-tram-sleepers{stroke-width:1.2px;opacity:.7}.hx-tram-wire{fill:none;stroke:#dceea0;stroke-width:1.3px;stroke-linecap:round;opacity:.85}.hx-tram-body{fill:#d4ec6a;stroke:#f6fcd0;stroke-width:1.6px;stroke-linejoin:round}.hx-tram-joint{fill:none;stroke:#8fb33a;stroke-width:1.4px}.hx-tram-door{fill:#10382a2e;stroke:#6f9230;stroke-width:1.1px}.hx-tram-stripe{fill:none;stroke:#fff;stroke-width:2px;opacity:.75}.hx-tram-roof{fill:none;stroke:#f0f9c2;stroke-width:1.4px}.hx-tram-panto{fill:none;stroke:#f0f9c2;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.hx-tram-wheels{fill:none;stroke:#f0f9c2;stroke-width:1.4px}.hx-tram-light{fill:#fffbe0;filter:drop-shadow(0 0 6px #fff6a8)}.hx-tram{filter:drop-shadow(0 0 2px #e8f896f2)drop-shadow(0 0 8px #cdf06473)}.hx-tram-body{fill:#d4ec6a24;stroke:#f3f9c4;stroke-width:1.6px}.hx-tram-glass{fill:#0a281c8c;stroke:#f3f9c4;stroke-width:1.2px}.hx-tram-joint{stroke:#f3f9c4;stroke-width:1.2px;opacity:.8}.hx-tram-door{fill:none;stroke:#f3f9c4;stroke-width:1.1px;opacity:.7}.hx-tram-stripe{stroke:#d6f06a;stroke-width:2.4px;opacity:1}.hx-tram-rail{stroke-width:1.5px}.hx-tram-body{fill:#1f5c3c}.hx-place-arrow{top:-30px}.hx-bg{z-index:-3;object-fit:cover;object-position:50% 100%;width:100%;height:100%;animation:1.1s ease-out both hx-bg-in;position:absolute;inset:0}.hx-bg-shade{display:none}@keyframes hx-bg-in{0%{opacity:0;transform:scale(1.03)}to{opacity:1;transform:none}}.hx-place-arrow{width:150px;height:45px;top:-40px;left:150px}@media (width<=1100px){.hx-hero{padding-bottom:0}.hx-bg{z-index:0;object-position:82% 100%;order:2;height:380px;margin-top:34px;position:relative;inset:auto}.hx-card{z-index:1;order:3;margin:-80px 6% 40px;position:relative}}@media (width<=700px){.hx-bg{object-position:88% 100%;height:300px}}@media (prefers-reduced-motion:reduce){.hx-bg{animation:none}}.hx-lead{max-width:min(500px,27vw)}.hx-bg-shade{z-index:-2;pointer-events:none;background:linear-gradient(90deg,#0834228c 0%,#08342261 28%,#08342200 44%);display:block;position:absolute;inset:0}@media (width<=1100px){.hx-bg-shade{display:none}.hx-lead{max-width:560px}.hx-card{margin-top:-50px}}.hx-lead{text-wrap:pretty}.hx-bg-shade{background:radial-gradient(60% 75% at 12% 42%,#093e26e6 0%,#093e26b8 45%,#093e2600 75%),linear-gradient(90deg,#093e26d9 0%,#093e2699 30%,#093e2600 50%);-webkit-mask-image:linear-gradient(#000 0% 62%,#0000 80%);mask-image:linear-gradient(#000 0% 62%,#0000 80%)}.hx-place{top:69%;left:60%}.hx-hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0a3a2300 0%,#0a3a23 100%);height:70px;position:absolute;bottom:0;left:0;right:0}@media (width>=1101px){.hx-copy{top:clamp(130px,15.5vh,165px)}.hx-pill{margin-bottom:4px}.hx-card{top:max(140px,14vh)}.hx-btn{white-space:nowrap}}@media (width>=1101px) and (width<=1500px){.hx-copy{width:clamp(470px,45vw,640px)}.hx-lead{max-width:clamp(420px,38vw,560px)}.hx-copy h1{font-size:clamp(46px,5.4vw,76px)}}@media (width<=700px){.hx-copy{padding-top:118px}}.hx-card-link{color:#fff;background:linear-gradient(135deg,#1f5641,#173f32);border-radius:14px;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding:11px 14px;font-size:14.5px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex}.hx-card-link b{color:#dff27f}.hx-card-link:hover{transform:translateY(-2px);box-shadow:0 10px 22px #173f324d}.hx-card-arrow{color:#173f32;background:#dff27f;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;transition:transform .2s;display:grid}.hx-card-link:hover .hx-card-arrow{transform:translate(3px)}.hx-card-link span:first-child{white-space:nowrap}@media (width<=1100px){.hx-card{width:min(380px,100% - 32px);margin-inline:16px}.hx-sparkle-card{right:4px}}@media (width>=701px) and (width<=1100px){.hx-card{width:auto;margin-inline:6%}.hx-card ul{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}}.hf{--hf-lime:#dff27f;--hf-lime-deep:#c7ec5c;--hf-green:#0a3a23;isolation:isolate;background:radial-gradient(70% 50% at 85% 30%, #78c85a29, transparent 70%), radial-gradient(50% 40% at 10% 90%, #c7ec5c14, transparent 70%), linear-gradient(180deg, var(--hf-green) 0%, #0b3524 45%, #082a1c 100%);color:#fff;padding:110px 7% 72px;font-family:DM Sans,sans-serif;position:relative;overflow:hidden}.hf-waves{z-index:-1;fill:none;pointer-events:none;width:100%;height:220px;position:absolute;top:0;left:0}.hf-wave-a{stroke:#dff27f8c;stroke-width:1.6px;filter:drop-shadow(0 0 6px #c7ec5cb3)}.hf-wave-b{stroke:#dff27f2e;stroke-width:1.2px}.hf-glow{z-index:-1;filter:blur(80px);pointer-events:none;border-radius:50%;position:absolute}.hf-glow-1{background:#c7ec5c1f;width:520px;height:520px;top:18%;right:8%}.hf-glow-2{background:#2ea0642e;width:380px;height:380px;bottom:6%;left:-120px}.hf-inner{grid-template-columns:minmax(0,.82fr) minmax(0,1.3fr);align-items:center;gap:clamp(40px,5vw,90px);max-width:1560px;margin:0 auto;display:grid}.hf-icon{flex:none;width:1em;height:1em}.hf h2{font-variation-settings:"opsz" 72, "WONK" 0, "SOFT" 50;font-feature-settings:"liga" 0, "clig" 0;letter-spacing:-.01em;text-shadow:0 4px 24px #00000040;flex-direction:column;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(44px,4.3vw,76px);font-weight:700;line-height:1.04;display:flex;position:relative}.hf h2 em{color:var(--hf-lime);font-style:italic}.hf-brush{fill:none;width:52%;height:16px;stroke:var(--hf-lime);stroke-width:3.5px;stroke-linecap:round;filter:drop-shadow(0 0 6px #c7ec5c99);margin:4px 0 0 30%}.hf-lead{color:#ffffffdb;text-wrap:pretty;max-width:480px;margin:22px 0 0;font-size:clamp(17px,1.15vw,20px);line-height:1.6}.hf-points{gap:14px;margin:30px 0 0;padding:0;list-style:none;display:grid}.hf-points li{align-items:center;gap:14px;display:flex}.hf-points strong{color:#fff;font-size:16px;font-weight:700;display:block}.hf-points li>span:last-child{color:#ffffffb3;font-size:14.5px;line-height:1.45}.hf-point-icon{width:46px;height:46px;color:var(--hf-lime);background:#dff27f14;border:1px solid #dff27f59;border-radius:14px;flex:none;place-items:center;font-size:22px;display:grid}.hf-cta{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.hf-btn{min-height:56px;font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:10px;padding:0 26px;font-size:17px;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.hf-btn:hover{transform:translateY(-2px)}.hf-btn:focus-visible{outline:3px solid var(--hf-lime);outline-offset:3px}.hf-btn-primary{background:linear-gradient(180deg, #f1fbb8 0%, var(--hf-lime) 55%, var(--hf-lime-deep) 100%);color:#0d3b26;border:0;box-shadow:0 10px 30px #c7ec5c4d}.hf-btn-primary:hover{box-shadow:0 14px 38px #c7ec5c73}.hf-btn-primary small{background:#0d3b261f;border-radius:999px;padding:3px 9px;font-size:13px;font-weight:700}.hf-btn-ghost{color:#fff;border:1.5px solid #ffffffb3}.hf-btn-ghost:hover{background:#ffffff14}.hf-stage{position:relative}.hf-frame{background:#061a11;border-radius:26px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #dff27f73,0 0 0 9px #ffffff0d,0 0 50px #c7ec5c38,0 30px 80px #00000073}.hf-video{aspect-ratio:16/9;object-fit:cover;background:#061a11;width:100%;display:block}.hf-overlay{color:#fff;font:inherit;text-align:left;cursor:pointer;background:radial-gradient(circle at 50% 46%,#0000 0%,#0000001f 50%),linear-gradient(#04180f00 45%,#04180fd1 100%);border:0;align-items:flex-end;gap:18px;padding:clamp(18px,2.4vw,34px);display:flex;position:absolute;inset:0}.hf-play{background:var(--hf-lime);color:#0d3b26;border-radius:50%;place-items:center;width:clamp(76px,6.5vw,104px);height:clamp(76px,6.5vw,104px);font-size:clamp(28px,2.4vw,38px);transition:transform .25s,box-shadow .25s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 12px #dff27f38,0 0 60px #dff27f8c}.hf-play .hf-icon{margin-left:.12em}.hf-play:after{content:"";border:2px solid #dff27f99;border-radius:50%;animation:2.2s ease-out infinite hf-pulse;position:absolute;inset:-12px}@keyframes hf-pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.hf-overlay:hover .hf-play{transform:translate(-50%,-50%)scale(1.07);box-shadow:0 0 0 14px #dff27f47,0 0 80px #dff27fb3}.hf-overlay:focus-visible{outline:3px solid var(--hf-lime);outline-offset:-3px}.hf-overlay-text{gap:2px;display:grid}.hf-overlay-text strong{font-variation-settings:"opsz" 48, "WONK" 0;font-family:Fraunces,Georgia,serif;font-size:clamp(22px,1.7vw,30px);font-weight:700}.hf-overlay-text span{color:#fffc;font-size:15px}.hf-duration{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000059;border:1px solid #ffffff59;border-radius:999px;margin-left:auto;padding:7px 14px;font-size:14px;font-weight:700}@media (width<=1100px){.hf{padding:90px 6% 70px}.hf-inner{grid-template-columns:1fr}.hf-lead{max-width:620px}}@media (width<=640px){.hf{padding:70px 20px 56px}.hf-btn{justify-content:center;width:100%}.hf-frame{border-radius:18px}.hf-overlay-text span{display:none}}@media (prefers-reduced-motion:reduce){.hf-play:after{animation:none}.hf-btn,.hf-play{transition:none}}.faq{color:#1f2a24;background:radial-gradient(60% 50% at 0 0,#dff27f2e,#0000 60%),#f4f1e8;padding:84px 7% 90px;font-family:DM Sans,sans-serif}.faq-inner{grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);align-items:start;gap:clamp(30px,5vw,80px);max-width:1400px;margin:0 auto;display:grid}.faq-intro{position:sticky;top:110px}.faq-kicker{color:#a8753f;letter-spacing:.18em;margin:0 0 12px;font-size:13px;font-weight:800}.faq h2{color:#173f32;font-variation-settings:"opsz" 72, "WONK" 0;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(36px,3.6vw,56px);font-weight:700;line-height:1.05}.faq h2 em{color:#2f7a5a;font-style:italic;display:block}.faq-lead{color:#4d5a52;margin:16px 0 0;font-size:17px;line-height:1.6}.faq-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.faq-btn{color:#173f32;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #cfd9c9;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:inline-flex}.faq-btn:hover{border-color:#245b48;transform:translateY(-2px)}.faq-btn-solid{color:#fff;background:#173f32;border-color:#173f32;box-shadow:0 10px 24px #173f3238}.faq-btn:focus-visible{outline-offset:2px;outline:3px solid #dff27f}.faq-list{gap:12px;display:grid}.faq-item{background:#fffdf8;border:1px solid #e6dfcf;border-radius:20px;transition:box-shadow .25s,border-color .25s;box-shadow:0 4px 14px #173f320d}.faq-item:hover{border-color:#cfdcc8}.faq-item.is-open{border-color:#b9d6b0;box-shadow:0 16px 34px #173f321a}.faq-item h3{margin:0}.faq-item button{color:#173f32;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:16px;padding:20px 22px;display:flex}.faq-item button:focus-visible{outline-offset:-3px;border-radius:20px;outline:3px solid #dff27f}.faq-n{color:#b0a58e;font-family:Fraunces,Georgia,serif;font-size:18px;font-weight:700;transition:color .2s}.faq-item.is-open .faq-n{color:#2f7a5a}.faq-q{flex:1;font-size:clamp(17px,1.25vw,19.5px);font-weight:700;line-height:1.35}.faq-plus{background:#f1ece0;border-radius:50%;flex:none;width:34px;height:34px;transition:background .25s,transform .35s cubic-bezier(.3,1.4,.5,1);position:relative}.faq-plus:before,.faq-plus:after{content:"";background:#173f32;border-radius:2px;width:14px;height:2px;transition:transform .3s,background .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-plus:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-item.is-open .faq-plus{background:#173f32;transform:rotate(180deg)}.faq-item.is-open .faq-plus:before,.faq-item.is-open .faq-plus:after{background:#dff27f}.faq-item.is-open .faq-plus:after{transform:translate(-50%,-50%)rotate(0)}.faq-a{grid-template-rows:0fr;transition:grid-template-rows .35s;display:grid}.faq-item.is-open .faq-a{grid-template-rows:1fr}.faq-a>div{overflow:hidden}.faq-a p{color:#3e4b43;margin:0;padding:0 22px 22px 72px;font-size:16px;line-height:1.65}.faq-a a{color:#245b48;font-weight:700}@media (width<=900px){.faq{padding:64px 6% 70px}.faq-inner{grid-template-columns:1fr}.faq-intro{position:static}.faq-a p{padding-left:22px}}@media (prefers-reduced-motion:reduce){.faq-a,.faq-plus,.faq-plus:before,.faq-plus:after{transition:none}}.back-button{font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:14px}.progress-fill{transition:width .3s}.field-note{color:#a8753f;margin:16px 0 0;font-size:13px;line-height:1.6}.questionnaire-next:disabled{cursor:not-allowed;background:#9aa89f}fieldset.question-group{min-width:0;margin:0}.factor-name{float:left;width:100%;margin-bottom:8px;padding:0;font-family:Georgia,serif;font-size:21px;line-height:1.4}.factor-name+.field-hint{clear:both}.rating-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.rating-option{color:#173f32;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #e0d8c9;border-radius:8px;padding:12px 10px;font-size:13px}.rating-option.selected{background:#edf0e6;border:2px solid #173f32;padding:11px 9px;font-weight:600}@media (width<=520px){.rating-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.question-group>.separate-toggle{color:#245b48;cursor:pointer;align-items:center;gap:10px;margin:16px 0 0;font-family:inherit;font-size:13px;font-weight:600;line-height:1.5;display:flex}.separate-toggle input{accent-color:#173f32;cursor:pointer;width:16px;height:16px;margin:0}.item-ratings{border-top:1px dashed #e0d8c9;flex-direction:column;gap:16px;margin-top:16px;padding-top:16px;display:flex}.item-name{margin:0 0 8px;font-size:14px;font-weight:600}.rating-options.mode-options{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width>=1001px){.questionnaire-container .question-group-wide{grid-column:1/-1}.question-group-wide .item-ratings{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px 28px;display:grid}}.priority-value{color:#617067;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:14px;display:flex}.priority-value strong{color:#173f32;font-family:Georgia,serif;font-size:20px}.priority-value .priority-name{color:#173f32;font-family:inherit;font-size:14px;display:block}.priority-slider input[type=range]{accent-color:#173f32;cursor:pointer;width:100%}.priority-controls{background:#fffdf7;border:1px solid #e0d8c9;border-radius:12px;margin:0 0 24px;padding:16px 20px}.priority-controls summary{color:#245b48;cursor:pointer;font-weight:600}.priority-controls>.result-muted{margin:8px 0 0;font-size:13px}.priority-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px 28px;margin-top:16px;display:grid}.flow-page{--flow-green:#173f32;--flow-cream:#fffdf7;--flow-line:#e3dccd;--flow-muted:#617067;box-sizing:border-box;height:calc(100svh - 82px);min-height:560px;color:var(--flow-green);background:#f3f0e7;grid-template-columns:210px minmax(240px,.75fr) minmax(0,1.7fr);gap:18px;padding:18px clamp(16px,2vw,28px);display:grid}.flow-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.flow-sidebar{background:var(--flow-green);border-radius:16px;flex-direction:column;gap:6px;padding:16px 10px;display:flex}.flow-step{color:#e3ebe5;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;font-size:14px;transition:background .2s;display:flex}.flow-step span{flex-direction:column;line-height:1.25;display:flex}.flow-step small{color:#a9bdb1;letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:700}.flow-step:not(:disabled):hover{background:#fffdf71a}.flow-step.is-current{background:var(--flow-cream);color:var(--flow-green);cursor:default;font-weight:700}.flow-step.is-current small{color:#a8753f}.flow-step:focus-visible{outline-offset:2px;outline:2px solid #f0c49b}.flow-photo{background-color:#6f8f9c;background-position:30%;background-size:cover;border-radius:16px;position:relative;overflow:hidden}.flow-photo-text{background:linear-gradient(#fffdf7f0,#fffdf7db 70%,#fffdf700);padding:26px 24px 70px}.flow-eyebrow{color:#a8753f;letter-spacing:1.6px;margin:0 0 14px;font-size:11px;font-weight:800}.flow-progress-info{color:var(--flow-muted);letter-spacing:1px;justify-content:space-between;font-size:10px;font-weight:700;display:flex}.flow-progress{background:#e2d9c6;border-radius:999px;height:4px;margin:8px 0 20px}.flow-progress span{background:var(--flow-green);border-radius:999px;height:100%;display:block}.flow-photo h1{margin:0;font-family:Georgia,serif;font-size:clamp(28px,2.6vw,40px);line-height:1.08}.flow-photo h1 em{color:#7d936f}.flow-description{color:#4d5e53;margin:14px 0 0;font-size:14px;line-height:1.6}.flow-rows{flex-direction:column;gap:10px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.flow-row{border:1px solid var(--flow-line);background:var(--flow-cream);border-radius:14px;flex:1 0 auto;grid-template-columns:46px minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:16px;max-height:150px;padding:12px 18px;display:grid}.flow-row-items{max-height:none}.flow-row-icon{width:44px;height:44px;color:var(--flow-green);background:#e6ede4;border-radius:10px;place-items:center;display:grid}.flow-row-text h2{margin:0;font-family:Georgia,serif;font-size:18px;font-weight:600}.flow-row-text p{color:var(--flow-muted);margin:2px 0 0;font-size:12.5px;line-height:1.45}.flow-row-control{flex-direction:column;gap:6px;min-width:0;display:flex}.flow-row-control input[type=range]{width:100%;accent-color:var(--flow-green);cursor:pointer;margin:0}.flow-row-control select{width:100%;color:var(--flow-green);font:inherit;background:#fff;border:1px solid #d9d1c1;border-radius:8px;padding:10px 12px;font-size:13px}.flow-value{color:var(--flow-muted);justify-content:space-between;align-items:baseline;gap:10px;font-size:12px;display:flex}.flow-value strong{color:var(--flow-green);font-family:Georgia,serif;font-size:22px}.flow-choices{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:8px;display:grid}.flow-choices-rooms{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row}.flow-choice{min-height:38px;color:var(--flow-green);font:inherit;text-align:center;cursor:pointer;background:#fff;border:1px solid #ddd5c5;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 8px;font-size:12px;line-height:1.2;display:flex}.flow-choice .flow-icon{width:17px;height:17px}.flow-choice.selected{border:2px solid var(--flow-green);background:#e6ede4;font-weight:700}.flow-choice:focus-visible,.flow-next:focus-visible,.flow-back:focus-visible{outline-offset:2px;outline:2px solid #a8753f}.flow-note{color:#8a3b2b;margin:0;font-size:12px}.flow-note-strong{font-weight:700}.flow-row .priority-value{margin-bottom:2px;font-size:12px}.flow-row .priority-value strong{font-size:18px}.flow-row .range-labels{display:none}.flow-item-sliders{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:6px 16px;display:grid}.flow-item-sliders .priority-value .priority-name{font-family:inherit;font-size:13px}.flow-separate{color:#245b48;cursor:pointer;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.flow-separate input{accent-color:var(--flow-green);margin:0}.flow-actions{justify-content:flex-end;align-items:center;gap:14px;margin-top:auto;padding-top:4px;display:flex}.flow-next,.flow-back{min-height:46px;font:inherit;cursor:pointer;border-radius:10px;align-items:center;gap:18px;padding:0 22px;font-size:14px;font-weight:700;display:inline-flex}.flow-next{background:var(--flow-green);color:var(--flow-cream);border:0}.flow-next:disabled{opacity:.45;cursor:not-allowed}.flow-back{border:1px solid var(--flow-line);background:var(--flow-cream);color:var(--flow-green);margin-right:auto}.flow-panel{border:1px solid var(--flow-line);background:var(--flow-cream);border-radius:16px;flex-direction:column;gap:4px;min-height:0;padding:22px 20px;display:flex;overflow-y:auto}.flow-panel h1{margin:0;font-family:Georgia,serif;font-size:clamp(24px,2.1vw,32px);line-height:1.1}.flow-panel h1 em{color:#7d936f}.flow-summary{color:var(--flow-muted);margin:8px 0 6px;font-size:12.5px;line-height:1.5}.flow-panel-group{border-top:1px solid var(--flow-line);flex-direction:column;gap:8px;margin-top:8px;padding-top:14px;display:flex}.flow-panel-group h2{margin:0;font-family:Georgia,serif;font-size:16px}.flow-panel-group input[type=range]{width:100%;accent-color:var(--flow-green);cursor:pointer;margin:0}.flow-panel .priority-value{margin-bottom:0;font-size:12px}.flow-panel .priority-value .priority-name{font-family:inherit;font-size:13px}.flow-panel .priority-value strong{font-size:15px}.flow-panel .range-labels{display:none}.flow-results{flex-direction:column;gap:12px;min-height:0;display:flex}.flow-results .results-warning{margin:0;font-size:12.5px}.flow-matches{grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:12px;display:grid}.flow-match{border:1px solid var(--flow-line);background:var(--flow-cream);min-width:0;color:var(--flow-green);font:inherit;text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;gap:6px;padding:14px 16px;transition:border-color .2s,box-shadow .2s;display:flex}.flow-match:hover{border-color:#b9c6b4}.flow-match.selected{border:2px solid var(--flow-green);padding:13px 15px;box-shadow:0 8px 22px #173f321f}.flow-match:focus-visible{outline-offset:2px;outline:2px solid #a8753f}.flow-match-top{justify-content:space-between;align-items:center;display:flex}.flow-match-score{background:var(--flow-green);color:var(--flow-cream);border-radius:8px;padding:3px 9px;font-family:Georgia,serif;font-size:16px;font-weight:700}.flow-match-score small{letter-spacing:1px;text-transform:uppercase;margin-left:4px;font-family:inherit;font-size:9px}.flow-match-name{text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,serif;font-size:20px;overflow:hidden}.flow-match-name span{color:#7d936f;font-size:16px;font-weight:400}.flow-match-line{flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:13px;display:flex}.flow-match-line .flow-icon{width:16px;height:16px;color:var(--flow-muted)}.flow-match-line .budget-tag{margin-left:0}.flow-detail{flex-direction:column;flex:1;min-height:0;margin:0;padding:18px 20px 0;display:flex}.flow-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.flow-detail-head h2{margin:0 0 2px;font-family:Georgia,serif;font-size:22px}.flow-detail-head p{margin:0;font-size:12.5px;line-height:1.5}.flow-detail-head .rent-note{display:inline}.flow-detail-head .result-profile-link{flex:none;margin:0}.flow-tabs{border-bottom:1px solid var(--flow-line);gap:4px;margin-top:12px;display:flex;overflow-x:auto}.flow-tab{color:var(--flow-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:none;padding:9px 12px;font-size:13px;font-weight:600}.flow-tab.selected{border-bottom-color:var(--flow-green);color:var(--flow-green)}.flow-tab:focus-visible{outline-offset:-2px;outline:2px solid #a8753f}.flow-tab-body{flex:1;min-height:0;padding:4px 2px 18px;overflow-y:auto}.flow-tab-body>section>h3:first-child,.flow-tab-body .result-why>h3:first-child{margin-top:12px}.flow-empty{text-align:center;grid-column:2/-1;place-self:center;max-width:420px}.flow-empty h1{font-family:Georgia,serif}@media (width<=1100px){.flow-page-results{grid-template-columns:190px minmax(0,1fr);height:auto}.flow-page-results .flow-panel,.flow-page-results .flow-results{grid-column:2}.flow-page-results .flow-sidebar{grid-row:1/span 2}}@media (width<=760px){.flow-page-results .flow-panel,.flow-page-results .flow-results,.flow-page-results .flow-sidebar{grid-area:auto/1}.flow-page-results .flow-results{order:1}.flow-page-results .flow-panel{order:2}.flow-matches{grid-template-columns:minmax(0,1fr);grid-auto-flow:row}.flow-detail-head{flex-direction:column}}.flow-panel-group>.result-muted{margin:0;font-size:12.5px;line-height:1.5}.route-summary{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:2px 0 0;font-size:13px;display:flex}.route-summary strong{font-family:Georgia,serif;font-size:24px}.route-map-wrap{flex-direction:column;gap:6px;display:flex}.route-map{border:1px solid var(--flow-line);background:#e8eee1;border-radius:12px;height:260px}.route-map-note{color:var(--flow-muted);margin:0;font-size:11.5px}.route-pin-wrap{background:0 0;border:0}.route-pin{color:#fffdf7;border:3px solid #fffdf7;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid;box-shadow:0 2px 6px #0000004d}.route-pin-from{background:#a8753f}.route-pin-to{background:#173f32}@media (height<=800px) and (width>=761px){.flow-page{gap:14px;padding-block:12px}.flow-rows{gap:8px}.flow-row{padding:8px 16px}.flow-row-icon{width:38px;height:38px}.flow-row-text h2{font-size:16px}.flow-row-text p{font-size:12px}.flow-choice{min-height:32px;padding:4px 6px}.flow-value strong{font-size:18px}.flow-next,.flow-back{min-height:40px}.flow-photo h1{font-size:clamp(24px,2.2vw,32px)}}@media (width<=1100px){.flow-page{grid-template-columns:190px minmax(0,1fr)}.flow-photo{display:none}}@media (width<=760px){.flow-page{grid-template-columns:minmax(0,1fr);height:auto;min-height:0;padding:12px}.flow-sidebar{flex-direction:row;padding:8px;overflow-x:auto}.flow-step{flex:1 0 auto;padding:8px 10px;font-size:13px}.flow-rows{padding-right:0;overflow:visible}.flow-row{flex:none;grid-template-columns:40px minmax(0,1fr);gap:10px 12px;max-height:none;padding:12px 14px}.flow-row-icon{width:40px;height:40px}.flow-row-control{grid-column:1/-1}}.flow-page.flow-q{background:radial-gradient(900px 500px at 100% 0,#d9f17e1f,#0000 70%),#f3f0e7;grid-template-columns:236px minmax(280px,.78fr) minmax(0,1.65fr);gap:20px;padding:20px clamp(16px,2vw,28px)}.flow-q .flow-sidebar{border-radius:20px;gap:8px;padding:18px 12px;box-shadow:0 18px 40px #173f322e}.flow-q .flow-step{border-radius:14px;gap:14px;padding:14px;font-size:16px;position:relative}.flow-q .flow-step small{font-size:11px}.flow-q .flow-step.is-current{box-shadow:0 8px 20px #0000002e}.flow-step-lock{color:#f0c49b;background:#fffdf71f;border-radius:50%;place-items:center;width:26px;height:26px;margin-left:auto;display:grid}.flow-step-lock .flow-icon{width:15px;height:15px}.flow-step.is-locked{color:#b9c9be}.flow-step.is-locked:hover .flow-step-lock{background:#f0c49b38}.flow-photo{isolation:isolate}.flow-photo-slide{z-index:-1;opacity:0;background-size:cover;transition:opacity 1.2s,transform 6.5s ease-out;position:absolute;inset:0;transform:scale(1.06)}.flow-photo-slide.is-shown{opacity:1;transform:scale(1)}.flow-photo-dots{z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#102f2a59;border-radius:999px;gap:7px;padding:7px 10px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.flow-photo-dots button{cursor:pointer;background:#ffffff8c;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .3s,background .3s}.flow-photo-dots button.is-shown{background:#fff;width:22px}.flow-photo-dots button:focus-visible{outline-offset:2px;outline:2px solid #f0c49b}.flow-q .flow-photo{border-radius:20px;box-shadow:0 18px 40px #173f321f}.flow-q .flow-photo-text{padding:30px 28px 80px}.flow-q .flow-eyebrow{font-size:12px}.flow-q .flow-progress-info{font-size:11.5px}.flow-q .flow-progress{height:6px}.flow-q .flow-progress span{transition:width .5s}.flow-q .flow-photo h1{font-size:clamp(32px,2.9vw,46px)}.flow-q .flow-description{font-size:16px}.flow-q .flow-rows{gap:12px;padding:2px 6px 2px 2px}.flow-q .flow-row{background:#fffdf8;border:1px solid #e6dfd0;border-radius:18px;flex:none;grid-template-columns:54px minmax(0,.95fr) minmax(0,1.35fr);gap:20px;max-height:none;padding:18px 22px;transition:border-color .2s,box-shadow .2s;box-shadow:0 4px 14px #173f320d}.flow-q .flow-row:hover,.flow-q .flow-row:focus-within{border-color:#c9d9cc;box-shadow:0 10px 26px #173f3217}.flow-q .flow-row-icon{background:linear-gradient(140deg,#e3eee5,#d5e5d9);border-radius:16px;width:54px;height:54px}.flow-q .flow-row-icon .flow-icon{width:26px;height:26px}.flow-q .flow-row-text h2{letter-spacing:-.01em;font-size:22px}.flow-q .flow-row-text p{margin-top:4px;font-size:15px}.flow-q .flow-row-control{gap:10px}.flow-q .flow-value{font-size:14px}.flow-q .flow-value strong{font-size:30px;line-height:1}.flow-q .flow-row-control input[type=range]{appearance:none;background:linear-gradient(90deg, #1f5a45 var(--fill,50%), #e2dccd var(--fill,50%));border-radius:999px;height:10px}.flow-q input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;cursor:grab;background:#173f32;border:4px solid #fff;border-radius:50%;width:26px;height:26px;transition:transform .15s;box-shadow:0 3px 10px #173f3259}.flow-q input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.12)}.flow-q input[type=range]::-moz-range-thumb{cursor:grab;background:#173f32;border:4px solid #fff;border-radius:50%;width:18px;height:18px;box-shadow:0 3px 10px #173f3259}.flow-q input[type=range]:focus-visible{outline-offset:6px;outline:2px solid #a8753f}.flow-q .flow-row-control select{cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23173f32' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center/20px no-repeat;border:1.5px solid #d7cfbf;border-radius:12px;min-height:52px;padding:0 44px 0 16px;font-size:16px;font-weight:600}.flow-q .flow-row-control select:hover{border-color:#9cbfa6}.flow-q .flow-row-control select:focus{border-color:#1f5a45;outline:0;box-shadow:0 0 0 4px #1f5a4524}.flow-q .flow-choices{gap:10px}.flow-q .flow-choice{border:1.5px solid #ddd5c5;border-radius:12px;gap:8px;min-height:52px;padding:8px 12px;font-size:15px;font-weight:600;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.flow-q .flow-choice:hover{border-color:#9cbfa6;transform:translateY(-1px);box-shadow:0 6px 14px #173f3214}.flow-q .flow-choice .flow-icon{width:20px;height:20px}.flow-q .flow-choice.selected{color:#fffdf7;background:#173f32;border:1.5px solid #173f32;box-shadow:0 8px 18px #173f3238}.flow-q .flow-note,.flow-q .flow-separate{font-size:14px}.flow-q .flow-separate input{width:18px;height:18px}.flow-q .flow-row .priority-value{font-size:14px}.flow-q .flow-row .priority-value strong{font-size:22px}.flow-q .flow-item-sliders .priority-value .priority-name{font-size:15px}.flow-q .flow-actions{z-index:2;background:linear-gradient(#f3f0e700,#f3f0e7 40%);margin-top:auto;padding:14px 4px 4px;position:sticky;bottom:0}.flow-q .flow-next,.flow-q .flow-back{border-radius:14px;min-height:54px;padding:0 28px;font-size:16px}.flow-q .flow-next{transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 10px 24px #173f3240}.flow-q .flow-next:hover:not([aria-disabled=true]):not(:disabled){transform:translateY(-2px);box-shadow:0 14px 28px #173f324d}.flow-q .flow-next span{transition:transform .15s}.flow-q .flow-next:hover span{transform:translate(3px)}.flow-q .flow-next[aria-disabled=true]{opacity:.5;cursor:not-allowed;box-shadow:none}@media (height<=820px) and (width>=761px){.flow-page.flow-q{gap:16px;padding-block:14px}.flow-q .flow-rows{gap:10px}.flow-q .flow-row{padding:13px 20px}.flow-q .flow-row-icon{width:46px;height:46px}.flow-q .flow-row-text h2{font-size:19px}.flow-q .flow-row-text p{font-size:14px}.flow-q .flow-choice{min-height:44px}.flow-q .flow-row-control select{min-height:46px}.flow-q .flow-value strong{font-size:25px}.flow-q .flow-next,.flow-q .flow-back{min-height:48px}.flow-q .flow-photo h1{font-size:clamp(28px,2.5vw,38px)}}@media (width<=1100px){.flow-page.flow-q{grid-template-columns:200px minmax(0,1fr)}}@media (width<=760px){.flow-page.flow-q{grid-template-columns:minmax(0,1fr)}.flow-q .flow-row{grid-template-columns:46px minmax(0,1fr)}.flow-q .flow-row-control{grid-column:1/-1}.flow-q .flow-choices-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}}.flow-dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10251e73;place-items:center;padding:20px;animation:.2s both flow-fade;display:grid;position:fixed;inset:0}.flow-dialog{color:#173f32;background:#fffdf8;border-radius:22px;width:min(460px,100%);padding:30px 28px 24px;animation:.28s cubic-bezier(.3,1.4,.5,1) both flow-pop;position:relative;box-shadow:0 30px 70px #0a1e1859}.flow-dialog-icon{color:#a8753f;background:#fbeee0;border-radius:16px;place-items:center;width:52px;height:52px;margin-bottom:14px;display:grid}.flow-dialog-icon .flow-icon{width:26px;height:26px}.flow-dialog h2{margin:0 0 8px;font-family:Georgia,serif;font-size:26px;line-height:1.15}.flow-dialog-text{color:#4d5e53;margin:0 0 18px;font-size:15.5px;line-height:1.55}.flow-checklist{gap:10px;margin:0 0 22px;padding:0;list-style:none;display:grid}.flow-checklist li{background:#fbf8f1;border:1px solid #ece4d4;border-radius:14px;align-items:center;gap:14px;padding:12px 14px;display:flex}.flow-checklist li>span{color:#8a7a64;border:2px solid #d7cfbf;border-radius:50%;flex:0 0 34px;place-items:center;height:34px;font-weight:800;display:grid}.flow-checklist li.is-done>span{color:#fff;background:#1f5a45;border-color:#1f5a45}.flow-checklist li>span .flow-icon{stroke-width:2.6px;width:18px;height:18px}.flow-checklist b{font-size:15.5px;display:block}.flow-checklist small{color:#8a3b2b;font-size:13.5px}.flow-checklist li.is-done small{color:#2e7d4f}.flow-dialog-actions{flex-wrap:wrap;gap:10px;display:flex}.flow-dialog-actions .flow-next,.flow-dialog-actions .flow-back{border-radius:14px;min-height:50px;padding:0 24px;font-size:15.5px}.flow-dialog-actions .flow-back{margin-right:0}.flow-dialog-close{color:#617067;cursor:pointer;background:0 0;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:14px;right:14px}.flow-dialog-close:hover{color:#173f32;background:#f1ece2}@keyframes flow-fade{0%{opacity:0}}@keyframes flow-pop{0%{opacity:0;transform:translateY(10px)scale(.96)}}@media (prefers-reduced-motion:reduce){.flow-photo-slide{transition:none;transform:none}.flow-dialog-backdrop,.flow-dialog{animation:none}}.flow-q .flow-choices,.flow-q .flow-choices-rooms{flex-wrap:wrap;display:flex}.flow-q .flow-choice{white-space:nowrap;flex:auto;padding:8px 16px}.flow-q .flow-rows>:first-child{margin-top:auto}.flow-q .flow-actions{margin-top:4px;margin-bottom:auto}.flow-q .flow-choice{padding:8px 12px;font-size:14.5px}.flow-q .flow-choices{flex-wrap:nowrap}.flow-q .flow-choices-rooms{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.flow-q .flow-choices-rooms .flow-choice:last-child{grid-column:span 2}@media (width<=1350px){.flow-q .flow-choices{flex-wrap:wrap}.flow-q .flow-choices-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-q .flow-choices-rooms .flow-choice:last-child{grid-column:span 1}}.flow-page.flow-q{grid-template-columns:224px minmax(260px,.66fr) minmax(0,1.8fr)}.flow-q .flow-row{grid-template-columns:54px minmax(205px,.62fr) minmax(0,1.9fr)}.flow-q .flow-row-text h2{overflow-wrap:normal;word-break:normal;-webkit-hyphens:manual;hyphens:manual}.flow-q .flow-row{padding-block:clamp(14px,2.1vh,30px)}@media (height>=980px) and (width>=1500px){.flow-q .flow-rows{gap:16px}.flow-q .flow-row-icon{width:60px;height:60px}.flow-q .flow-row-text h2{font-size:25px}.flow-q .flow-row-text p{font-size:16px}.flow-q .flow-choice{min-height:58px;font-size:16px}.flow-q .flow-row-control select{min-height:58px;font-size:17px}.flow-q .flow-value strong{font-size:34px}.flow-q .flow-next,.flow-q .flow-back{min-height:58px;font-size:17px}}.flow-q .flow-step span:not(.flow-step-lock){white-space:nowrap}.flow-q .flow-step.is-locked{padding-right:44px}.flow-q .flow-step-lock{margin:0;position:absolute;top:50%;right:12px;transform:translateY(-50%)}@media (width<=1350px) and (width>=1101px){.flow-page.flow-q{grid-template-columns:208px minmax(220px,.55fr) minmax(0,1.9fr)}.flow-q .flow-row{grid-template-columns:50px minmax(180px,.6fr) minmax(0,1.9fr);gap:16px;padding-inline:18px}.flow-q .flow-choices{flex-wrap:nowrap}.flow-q .flow-choice{gap:6px;padding:6px 10px;font-size:14px}.flow-q .flow-choices-rooms .flow-choice:last-child{grid-column:span 2}.flow-q .flow-step{gap:10px;padding-inline:12px;font-size:15px}.flow-q .flow-step.is-locked{padding-right:36px}.flow-q .flow-step-lock{width:24px;height:24px;right:8px}}.flow-q .flow-row .range-labels{color:#7a877f;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;margin-top:6px;font-size:12.5px;font-weight:700;display:flex}.flow-q .flow-row .range-labels span:first-child:before{content:"↓ "}.flow-q .flow-row .range-labels span:last-child:after{content:"  ↑"}.flow-step span.flow-step-lock{flex-direction:initial;place-items:center;line-height:0;display:grid}.flow-step span.flow-step-lock .flow-icon{width:15px;height:15px;margin:0;display:block}.route-card{background:linear-gradient(160deg,#fbfaf4,#f3f1e8);border:1px solid #e6dfd0;border-radius:16px;gap:10px;padding:14px 16px;display:grid}.route-ends{gap:6px;display:grid}.route-end{color:#173f32;align-items:center;gap:10px;min-width:0;font-size:14px;font-weight:700;display:flex}.route-end>span{text-overflow:ellipsis;white-space:nowrap;flex-direction:column;min-width:0;line-height:1.25;display:flex;overflow:hidden}.route-end small{color:#7a877f;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.route-dot{color:#fff;border:2px solid #fff;border-radius:50%;flex:0 0 26px;place-items:center;height:26px;font-size:12px;font-style:normal;font-weight:800;display:grid;box-shadow:0 2px 6px #0003}.route-dot-from{background:#a8753f}.route-dot-to{background:#173f32}.route-numbers{color:#4d5e53;border-top:1px dashed #ddd5c5;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding-top:8px;font-size:14px;display:flex}.route-numbers strong{color:#173f32;font-family:Georgia,serif;font-size:30px;line-height:1.1}.route-loading{color:#7a877f;font-style:italic}.route-reset{color:#1f5a45;font:inherit;cursor:pointer;background:#fff;border:1px solid #c9d9cc;border-radius:999px;justify-self:start;padding:7px 12px;font-size:13px;font-weight:700}.route-reset:hover{background:#eef5ef}.route-map-box{position:relative}.flow-page-results .route-map{cursor:crosshair;border:1px solid #dbe4d4;border-radius:16px;height:320px;overflow:hidden;box-shadow:0 8px 22px #173f3214}.route-map-hint{z-index:500;color:#173f32;white-space:nowrap;pointer-events:none;background:#ffffffeb;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #102f2a26}.flow-page-results .route-map .leaflet-bar{border:0;border-radius:12px;overflow:hidden;box-shadow:0 6px 16px #102f2a2e}.flow-page-results .route-map .leaflet-bar a{color:#173f32;width:34px;height:34px;line-height:34px}.flow-page-results .route-map .leaflet-control-attribution{border-top-left-radius:8px;font-size:9px}.route-pin{cursor:grab;width:32px;height:32px;font-size:13px}.route-pin-from{background:#a8753f;box-shadow:0 0 0 5px #a8753f38,0 3px 8px #0000004d}.route-pin-to{box-shadow:0 0 0 5px #173f3233,0 3px 8px #0000004d}.route-map-note{font-size:12px}.flow-page.flow-page-results{background:radial-gradient(900px 500px at 100% 0,#d9f17e1f,#0000 70%),#f3f0e7;gap:20px}.flow-page-results .flow-sidebar{border-radius:20px;gap:8px;padding:18px 12px;box-shadow:0 18px 40px #173f322e}.flow-page-results .flow-step{border-radius:14px;gap:14px;padding:14px;font-size:16px}.flow-page-results .flow-step small{font-size:11px}.flow-page-results .flow-step.is-current{box-shadow:0 8px 20px #0000002e}.flow-page-results .flow-panel{background:#fffdf8;border-color:#e6dfd0;border-radius:20px;gap:6px;padding:24px 22px;box-shadow:0 12px 30px #173f320f}.flow-page-results .flow-panel h1{font-size:clamp(28px,2.4vw,38px)}.flow-page-results .flow-summary{font-size:14.5px}.flow-page-results .flow-panel-group{gap:10px;margin-top:12px;padding-top:18px}.flow-page-results .flow-panel-group h2{font-size:21px}.flow-page-results .flow-panel .flow-choices{gap:8px}.flow-page-results .flow-panel .flow-choice{border-radius:12px;min-height:46px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s}.flow-page-results .flow-panel .flow-choice:hover{border-color:#9cbfa6}.flow-page-results .flow-panel .flow-choice.selected{color:#fffdf7;background:#173f32;border:1.5px solid #173f32}.flow-page-results .flow-matches{gap:14px}.flow-page-results .flow-match{background:#fffdf8;border:1px solid #e6dfd0;border-radius:18px;gap:8px;padding:16px 18px;transition:transform .18s,box-shadow .18s,border-color .18s;box-shadow:0 6px 18px #173f320d}.flow-page-results .flow-match:hover{border-color:#c9d9cc;transform:translateY(-3px);box-shadow:0 14px 30px #173f321a}.flow-page-results .flow-match.selected{background:linear-gradient(165deg,#f1f7f1,#fffdf8 60%);border:2px solid #173f32;padding:15px 17px;box-shadow:0 16px 34px #173f3229}.flow-page-results .flow-match-score{border-radius:999px;padding:5px 12px;font-size:18px;box-shadow:0 4px 10px #173f3233}.flow-page-results .flow-match-name{font-size:24px}.flow-page-results .flow-match-name span{font-size:18px}.flow-page-results .flow-match-line{font-size:15px}.flow-page-results .flow-match-line .flow-icon{width:18px;height:18px}.flow-page-results .flow-detail{border-radius:20px;padding:22px 24px 0;box-shadow:0 12px 30px #173f320f}.flow-page-results .flow-detail-head h2{font-size:28px}.flow-page-results .flow-detail-head p{font-size:14.5px}.flow-page-results .flow-tabs{border-bottom:1px solid #ece6d8;gap:6px;margin-top:16px;padding-bottom:12px}.flow-page-results .flow-tab{border:1px solid #0000;border-radius:999px;padding:9px 16px;font-size:14.5px;font-weight:700;transition:background .15s,color .15s}.flow-page-results .flow-tab:hover{color:#173f32;background:#f1f5ec}.flow-page-results .flow-tab.selected{color:#fffdf7;background:#173f32;border-color:#0000;box-shadow:0 6px 14px #173f3233}.flow-page-results .why-row{border-radius:16px;transition:box-shadow .18s}.flow-page-results .why-row:hover{box-shadow:0 8px 20px #173f3214}.route-stop-wrap{background:0 0;border:0}.route-stop{border:3px solid var(--c);background:#fff;border-radius:50%;width:12px;height:12px;display:block;box-shadow:0 0 0 1.5px #fff,0 1px 4px #0000004d}.route-stop.is-rail{border-radius:3px}.route-bike{background:#fff;border:2px solid #1f6fb2;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;display:grid;box-shadow:0 2px 6px #00000040}.leaflet-tooltip.route-stop-tip{color:#173f32;border:0;border-radius:9px;padding:6px 9px;font:600 12px/1.4 DM Sans,sans-serif;box-shadow:0 6px 16px #102f2a33}.route-near{border-top:1px dashed #ddd5c5;gap:6px;padding-top:8px;display:grid}.route-near p{color:#4d5e53;gap:3px;margin:0;font-size:13px;display:grid}.route-near b{color:#173f32;letter-spacing:.06em;text-transform:uppercase;font-size:11px}.route-chips{flex-wrap:wrap;gap:4px;display:flex}.route-chips i{color:#2b2200;background:#f5b400;border-radius:6px;padding:2px 7px;font-size:12px;font-style:normal;font-weight:800}.route-chips em{color:#7a877f;align-self:center;font-size:12px;font-style:normal}.route-legend{color:#5f6f67;flex-wrap:wrap;gap:6px 12px;margin:0;font-size:12px;display:flex}.route-legend span{align-items:center;gap:5px;display:inline-flex}.route-legend i{border-radius:2px;width:16px;height:4px}.route-legend i.is-dot{border:1.5px solid #fff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 1px #d9a000}.route-bike{border-width:1.5px;width:16px;height:16px;font-size:8px}.flow-photo-credit{z-index:2;color:#ffffffeb;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 4px #000000b3;white-space:nowrap;max-width:calc(100% - 32px);margin:0;font-size:11px;position:absolute;bottom:50px;left:50%;overflow:hidden;transform:translate(-50%)}.flow-photo-credit a{color:inherit;text-underline-offset:2px;text-decoration:underline}@keyframes route-draw{to{stroke-dashoffset:0}}@keyframes route-fade{to{opacity:.95}}.route-stop-dot{box-sizing:border-box;border:4px solid var(--c);width:16px;height:16px;animation:route-stop-pop .4s cubic-bezier(.3,1.6,.5,1) var(--d,0s) both;background:#fff;border-radius:50%;display:block;box-shadow:0 2px 6px #00000040}@keyframes route-stop-pop{0%{transform:scale(0)}to{transform:scale(1)}}.route-traveller{box-sizing:border-box;background:var(--c,#173f32);border:3px solid #fff;border-radius:50%;width:18px;height:18px;transition:background .3s;display:block;position:relative;box-shadow:0 2px 8px #00000059}.route-traveller i{background:var(--c,#173f32);opacity:.25;border-radius:50%;animation:1.4s ease-out infinite route-traveller-pulse;position:absolute;inset:-9px}@keyframes route-traveller-pulse{0%{opacity:.45;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}@media (prefers-reduced-motion:reduce){.route-stop-dot,.route-traveller i{animation:none}}.flow-page-results .flow-panel>*{flex-shrink:0}.flow-page-results .flow-panel .flow-eyebrow{letter-spacing:1.8px;margin:0 0 10px;font-size:13.5px}.flow-page-results .flow-panel .flow-progress-info{letter-spacing:1.2px;font-size:12.5px}.flow-page-results .flow-panel .flow-progress{height:6px;margin:10px 0 18px}.flow-page-results .flow-panel h1{margin-bottom:4px}.flow-page-results .flow-summary{margin:6px 0 10px}.student-rooms{margin-top:12px;animation:.3s both student-in}@keyframes student-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.student-rooms-q{color:#173f32;margin:0 0 8px;font-size:14px;font-weight:700}.student-rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.student-room{color:#173f32;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #ddd6c6;border-radius:14px;gap:2px;padding:10px 12px;transition:border-color .15s,background .15s,transform .15s;display:grid}.student-room:hover{border-color:#9cbfa6;transform:translateY(-1px)}.student-room strong{font-size:14.5px}.student-room span{color:#5f6f67;font-size:12.5px;line-height:1.35}.student-room em{color:#a8753f;font-size:12px;font-style:normal;font-weight:700}.student-room.is-on{color:#fff;background:#173f32;border-color:#173f32}.student-room.is-on span{color:#fffc}.student-room.is-on em{color:#dff27f}.student-room:focus-visible{outline-offset:2px;outline:3px solid #dff27f}@media (width<=520px){.student-rooms-grid{grid-template-columns:1fr}}@media (width<=1100px){.flow-page.flow-q{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}.flow-q .flow-sidebar{flex-direction:row;padding:8px}.flow-q .flow-photo{min-height:0;display:block}.flow-q .flow-photo-text{padding:20px 22px 54px}.flow-q .flow-photo h1{font-size:clamp(26px,4.4vw,36px)}.flow-q .flow-eyebrow{margin-bottom:10px}.flow-q .flow-photo-dots{bottom:12px}.flow-q .flow-rows{padding:0;overflow:visible}.flow-q .flow-rows>:first-child{margin-top:0}.flow-q .flow-row{grid-template-columns:50px minmax(160px,.7fr) minmax(0,1.6fr)}.flow-q .flow-choices{flex-wrap:wrap}.flow-q .flow-photo-credit{text-align:right;white-space:normal;text-overflow:clip;max-width:58%;line-height:1.3;bottom:14px;left:auto;right:12px;overflow:visible;transform:none}.flow-q .flow-photo-dots{left:16px;transform:none}.flow-page.flow-page-results{grid-template-columns:minmax(0,1fr)}.flow-page-results .flow-sidebar,.flow-page-results .flow-panel,.flow-page-results .flow-results{grid-area:auto/1}.flow-page-results .flow-sidebar{flex-direction:row;padding:8px}.flow-page-results .flow-sidebar .flow-step{flex:1 1 0;min-width:0}.flow-page-results .flow-empty{grid-column:1}}@media (width<=760px){.flow-sidebar,.flow-q .flow-sidebar{border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:6px;display:grid;overflow:visible}.flow-step,.flow-q .flow-step{text-align:center;flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:8px 4px;font-size:12.5px}.flow-step .flow-icon{width:18px;height:18px}.flow-step span,.flow-q .flow-step span:not(.flow-step-lock){white-space:normal;align-items:center;line-height:1.2}.flow-step small,.flow-q .flow-step small{font-size:9.5px}.flow-q .flow-step.is-locked{padding-right:4px}.flow-q .flow-step-lock{width:20px;height:20px;top:6px;right:6px;transform:none}.flow-step span.flow-step-lock .flow-icon{width:12px;height:12px}.flow-page.flow-q{gap:12px;padding:12px}.flow-q .flow-photo-text{padding:16px 18px 46px}.flow-q .flow-photo h1{font-size:26px}.flow-q .flow-description{font-size:14.5px}.flow-q .flow-row{grid-template-columns:44px minmax(0,1fr);gap:12px 14px;padding:16px}.flow-q .flow-row-icon{border-radius:13px;width:44px;height:44px}.flow-q .flow-row-icon .flow-icon{width:22px;height:22px}.flow-q .flow-row-text h2{font-size:19px}.flow-q .flow-row-text p{font-size:14px}.flow-q .flow-row-control{grid-column:1/-1}.flow-q .flow-choices{flex-wrap:wrap}.flow-q .flow-choice{white-space:normal;min-height:48px}.flow-q .flow-choices-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-q .flow-choices-rooms .flow-choice:last-child{grid-column:1/-1}.flow-q .flow-actions{padding:12px 0 calc(8px + env(safe-area-inset-bottom));flex-wrap:wrap;align-items:center;gap:10px;display:flex;position:sticky;bottom:0}.flow-q .flow-next{flex:auto;justify-content:center}.flow-q .flow-back{flex:none;padding:0 18px}.flow-page-results .flow-tabs{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.flow-page-results .flow-tabs::-webkit-scrollbar{display:none}}@media (width<=380px){.flow-step small,.flow-q .flow-step small{display:none}}@media (width>=1101px){.flow-page-results .flow-panel .flow-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.flow-page-results .flow-panel .flow-choice{white-space:normal;text-align:center;flex-direction:column;justify-content:center;gap:4px;min-width:0;min-height:56px;padding:8px 4px;font-size:13px;line-height:1.15}.flow-page-results .flow-panel .route-end>span{white-space:normal;overflow:visible}}.rm-ctx{background:0 0;border:0}.rm-ctx>span:first-child{box-sizing:border-box;border-radius:50%;place-items:center;width:100%;height:100%;display:grid;box-shadow:0 2px 6px #0000004d}.rm-luas{background:var(--c);color:#fff;border:2.5px solid #fff;font:900 12px/1 DM Sans,sans-serif}.rm-rail{background:#6f3f98;border:2.5px solid #fff;font-size:12px}.rm-bus{background:#f5b400;border:2px solid #173f37}.rm-bus svg{width:15px;height:15px}.rm-home{background:#fff;border:2px solid #7a3fa0;font-size:11px}.rm-label{color:#5a2d7a;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#ffffffeb;border-radius:5px;max-width:130px;padding:1px 5px;font:700 10px/1.3 DM Sans,sans-serif;display:none;position:absolute;top:calc(100% + 2px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 1px 3px #00000026}.rm-near .rm-label{display:block}.leaflet-tooltip.rm-tip{color:#33443b;border:0;border-radius:8px;padding:5px 8px;font:500 11px/1.35 DM Sans,sans-serif;box-shadow:0 4px 12px #102f2a33}.leaflet-tooltip.rm-tip b{color:#173f32;font-weight:800}.leaflet-tooltip.rm-bus-tip b{color:#6b4b00}.leaflet-tooltip.rm-board-tip{color:#f6f1e6;background:#173f32;border:0;border-radius:8px;padding:4px 8px;font:500 11px/1.35 DM Sans,sans-serif;box-shadow:0 4px 12px #102f2a4d}.leaflet-tooltip.rm-board-tip b{color:#d9f17e}.leaflet-tooltip.rm-board-tip:before{border-top-color:#173f32}.rm-pop{color:#4d5e53;gap:2px;font:500 12px/1.4 DM Sans,sans-serif;display:grid}.rm-pop small{color:#7a3fa0;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.rm-pop strong{color:#202d29;font-size:14px}.rm-pop a{color:#7a3fa0;margin-top:4px;font-weight:800;text-decoration:none}.rm-options{border-top:1px dashed #ddd5c5;grid-template-columns:1fr 1fr;gap:6px;padding-top:8px;display:grid}.rm-options button{color:#4d5e53;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #dbe4d4;border-radius:12px;gap:1px;padding:8px 10px;transition:border-color .15s,background .15s;display:grid}.rm-options button small{color:#7a877f;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.rm-options button b{color:#173f32;font-size:16px}.rm-options button span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rm-options button[aria-checked=true]{background:#eef5ef;border-color:#173f32}.rm-legend i{box-sizing:border-box;place-items:center;font-style:normal;display:inline-grid}.rm-legend .rm-key-a,.rm-legend .rm-key-b{color:#fff;border-radius:50%;width:16px;height:16px;font-size:9px;font-weight:800}.rm-legend .rm-key-a{background:#a8753f}.rm-legend .rm-key-b{background:#173f32}.rm-legend .rm-key-bus{background:#f5b400;border:2px solid #173f37;border-radius:50%;width:12px;height:12px}.rm-legend .rm-key-luas{background:var(--c);color:#fff;border-radius:50%;width:15px;height:15px;font-size:9px;font-weight:900}.rm-legend .rm-key-rail{background:#6f3f98;border-radius:50%;width:15px;height:15px;font-size:8px}.rm-legend .rm-key-home{background:#fff;border:1.5px solid #7a3fa0;border-radius:50%;width:15px;height:15px;font-size:8px}.leaflet-tooltip.rm-tip-hidden{visibility:hidden}.leaflet-marker-icon:hover+.leaflet-tooltip.rm-tip-hidden{visibility:visible}.flow-page-results .route-map{height:380px}.flow-page-results .route-map-hint{padding:5px 10px;font-size:11px;top:auto;bottom:10px;left:10px;transform:none}.leaflet-tooltip.rm-tip small{color:#6b4b00;font-size:10.5px;font-weight:700}.rm-pop .rm-pop-dist{border-top:1px dashed #e2d6ec;gap:2px;margin-top:6px;padding-top:6px;display:grid}.rm-pop .rm-pop-dist>b{color:#7a3fa0;letter-spacing:.06em;text-transform:uppercase;font-size:10px}.rm-pop .rm-pop-dist b{color:#202d29}.rm-pop .rm-pop-dist i{color:#8a968f}.leaflet-tooltip.rm-tip small{color:#7a3fa0;font-weight:700}.leaflet-popup.rm-hover .leaflet-popup-content{margin:11px 13px;width:240px!important}.rm-card .rm-web{color:#7a3fa0;background:#fbf8fd;border:1.5px solid #d9c8e6;border-radius:999px;justify-self:start;margin-top:6px;padding:5px 10px;font-weight:800;text-decoration:none}.rm-card .rm-web:hover{background:#f3ecf8;border-color:#7a3fa0}.rm-card .rm-hint{color:#74817a;border-top:1px dashed #e2d6ec;margin-top:6px;padding-top:6px;font-size:11px;font-style:normal;line-height:1.4}.leaflet-popup.rm-hover .leaflet-popup-tip-container{transform:translateX(var(--tip-x,0px))}.leaflet-popup.rm-hover.is-below .leaflet-popup-tip-container{transform:translateX(var(--tip-x,0px)) rotate(180deg)}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.jp-scope{--forest:#173f37;--forest-deep:#102f2a;--forest-soft:#24594d;--mint:#dcebe2;--lime:#d9f17e;--ink:#202d29;--muted:#74817a;--line:#e4eae4;font-family:DM Sans,sans-serif}.jp-route-map{cursor:crosshair;background:#eef1ec;position:absolute;inset:0}.jp-route-map .jp-tiles-osm{filter:saturate(.6)brightness(1.04)contrast(.94)}.jp-map-vignette{z-index:400;pointer-events:none;background:linear-gradient(#102f2a1a,#0000 90px);position:absolute;inset:0;box-shadow:inset 0 0 70px #102f2a29}.jp-map-hint{z-index:600;color:var(--ink);-webkit-backdrop-filter:blur(10px)saturate(1.4);backdrop-filter:blur(10px)saturate(1.4);white-space:nowrap;pointer-events:none;background:#ffffffd1;border:1px solid #ffffffb3;border-radius:999px;align-items:center;gap:9px;padding:10px 16px;font-size:12px;font-weight:600;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #102f2a29}.jp-map-hint strong{color:var(--forest)}.jp-map-hint.jp-hint-swap{animation:.35s cubic-bezier(.2,.9,.3,1.2) jp-hint-in}.jp-map-hint.jp-is-loading{color:#fff;background:#173f37eb;border-color:#0000}.jp-map-hint .jp-spinner{border-color:#ffffff59;border-top-color:var(--lime)}@keyframes jp-hint-in{0%{opacity:0;transform:translate(-50%,-8px)scale(.96)}}.jp-amenity-status{z-index:600;color:#43524a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #ffffffb8;border-radius:11px;max-width:min(330px,100% - 28px);padding:9px 12px;font-size:10px;font-weight:600;line-height:1.5;position:absolute;top:62px;left:14px;box-shadow:0 8px 22px #102f2a1f}.jp-amenity-status.jp-is-error{color:#8c302b;background:#fff8f5f2}.jp-map-legend{z-index:600;color:#43524a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:12px;flex-wrap:wrap;gap:6px 12px;max-width:calc(100% - 90px);padding:9px 12px;font-size:10.5px;font-weight:600;animation:.4s both jp-rise-in;display:flex;position:absolute;bottom:26px;left:14px;box-shadow:0 8px 22px #102f2a1f}.jp-map-legend span{align-items:center;gap:6px;display:inline-flex}.jp-map-legend i{background:var(--c);border-radius:3px;width:18px;height:5px}.jp-map-legend .jp-legend-walk{background:radial-gradient(circle,#5f6f67 1.6px,#0000 2px) 0/6px 4px repeat-x;height:4px}.jp-map-legend .jp-legend-alt{opacity:.75;background:#8d9a93}.jp-route-map .leaflet-bar{border:0;border-radius:12px;overflow:hidden;box-shadow:0 8px 22px #102f2a29}.jp-route-map .leaflet-bar a{width:36px;height:36px;color:var(--forest);border-bottom-color:var(--line);font-size:18px;line-height:36px}.jp-route-map .leaflet-bar a:hover{background:var(--mint)}.jp-route-map .leaflet-control-attribution{background:#ffffffbf;border-top-left-radius:8px;font-size:9.5px}.jp-route-pin{transform-origin:50% 100%;width:34px;height:42px;animation:.55s cubic-bezier(.3,1.5,.5,1) both jp-pin-drop;position:relative}.jp-route-pin span{z-index:1;border:3px solid #fff;border-radius:50% 50% 50% 0;width:34px;height:34px;transition:transform .2s;position:absolute;top:0;left:0;transform:rotate(-45deg);box-shadow:0 6px 14px #00000047}.jp-route-pin.jp-pin-start span{background:linear-gradient(135deg, var(--forest-soft), var(--forest-deep))}.jp-route-pin.jp-pin-end span{background:linear-gradient(135deg,#e5533f,#b02a20)}.jp-route-pin b{z-index:2;color:#fff;text-align:center;width:34px;font:800 13px/20px Manrope,sans-serif;position:absolute;top:7px;left:0}.jp-route-pin.jp-pin-start b{color:var(--lime)}.jp-pin-pulse{background:#102f2a47;border-radius:50%;width:20px;height:10px;position:absolute;bottom:-6px;left:7px}.jp-pin-pulse:after{content:"";opacity:0;border:2px solid;border-radius:50%;animation:2.2s ease-out .6s infinite jp-pin-ring;position:absolute;inset:-6px -9px}.jp-pin-start .jp-pin-pulse{color:var(--forest)}.jp-pin-end .jp-pin-pulse{color:#c8352b}.jp-is-dragging .jp-route-pin{animation:none;transform:translateY(-10px)scale(1.08)}.jp-is-dragging .jp-route-pin span{box-shadow:0 16px 22px #00000040}.leaflet-marker-icon:hover .jp-route-pin span{transform:rotate(-45deg)scale(1.06)}@keyframes jp-pin-drop{0%{opacity:0;transform:translateY(-46px)scale(.8)}60%{opacity:1;transform:translateY(3px)scale(1.04,.94)}to{transform:none}}@keyframes jp-pin-ring{0%{opacity:.7;transform:scale(.4)}to{opacity:0;transform:scale(1.6)}}.jp-click-ripple{border:3px solid var(--forest-soft);pointer-events:none;border-radius:50%;width:44px;height:44px;animation:.65s ease-out forwards jp-ripple;position:absolute;top:-22px;left:-22px}@keyframes jp-ripple{0%{opacity:.8;transform:scale(.2)}to{opacity:0;transform:scale(1.5)}}@keyframes jp-route-draw{to{stroke-dashoffset:0}}@keyframes jp-route-fade{to{opacity:.95}}.jp-route-map path.jp-route-alt{cursor:pointer;transition:stroke .2s,stroke-opacity .2s;animation:.5s both jp-route-fade-alt}.jp-route-map path.jp-route-alt:hover{stroke:#4f5e56;stroke-opacity:.95}@keyframes jp-route-fade-alt{0%{opacity:0}to{opacity:1}}.jp-stop-dot{border:4px solid var(--c);width:16px;height:16px;animation:jp-stop-pop .4s cubic-bezier(.3,1.6,.5,1) var(--d,0s) both;background:#fff;border-radius:50%;display:block;box-shadow:0 2px 6px #00000040}@keyframes jp-stop-pop{0%{opacity:0;transform:scale(0)}}.jp-traveller{background:var(--c,var(--forest));border:3px solid #fff;border-radius:50%;width:18px;height:18px;transition:background .3s;display:block;position:relative;box-shadow:0 2px 8px #00000059}.jp-traveller i{background:var(--c,var(--forest));opacity:.25;border-radius:50%;animation:1.4s ease-out infinite jp-traveller-pulse;position:absolute;inset:-9px}@keyframes jp-traveller-pulse{0%{opacity:.45;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}.leaflet-tooltip.jp-route-tooltip{color:#fff;background:#102f2af0;border:0;border-radius:9px;padding:6px 10px;font:600 11px DM Sans,sans-serif;box-shadow:0 6px 16px #0003}.leaflet-tooltip.jp-route-tooltip:before{display:none}.jp-route-controls{gap:10px;margin-bottom:18px;display:grid}.jp-segmented{background:#eef2ea;border-radius:13px;grid-template-columns:1.5fr 1fr 1fr;padding:4px;display:grid;position:relative}.jp-segmented label{position:relative}.jp-segmented input{opacity:0;pointer-events:none;position:absolute}.jp-segmented span{color:#5b6a61;text-align:center;cursor:pointer;border-radius:10px;padding:9px 6px;font-size:11px;font-weight:700;transition:background .25s,color .25s,box-shadow .25s,transform .15s;display:block}.jp-segmented span:hover{color:var(--forest)}.jp-segmented label:active span{transform:scale(.97)}.jp-segmented input:checked+span{color:#fff;background:linear-gradient(135deg, var(--forest-soft), var(--forest));box-shadow:0 4px 12px #173f3740}.jp-segmented input:focus-visible+span{outline:2px solid var(--forest-soft);outline-offset:2px}.jp-time-row{gap:8px;display:flex}.jp-time-row select,.jp-time-row input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:10px;padding:9px 10px;font:600 12px DM Sans,sans-serif;transition:border-color .2s,box-shadow .2s}.jp-time-row select:focus,.jp-time-row input:focus{border-color:var(--forest-soft);outline:0;box-shadow:0 0 0 3px #24594d1f}.jp-time-row select{flex:none}.jp-time-row input{flex:1;animation:.25s both jp-rise-in}.jp-spinner{border:2px solid #c9d6cc;border-top-color:var(--forest);border-radius:50%;flex:none;width:15px;height:15px;animation:.8s linear infinite jp-spin}@keyframes jp-spin{to{transform:rotate(360deg)}}.jp-route-status{gap:10px;display:grid}.jp-route-status span,.jp-skeleton-line{background:linear-gradient(90deg,#eef2ec 25%,#f8faf6 50%,#eef2ec 75%) 0 0/300% 100%;border-radius:10px;animation:1.3s ease-in-out infinite jp-shimmer;display:block}.jp-skeleton-tabs{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.jp-skeleton-tabs span{height:62px}.jp-skeleton-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.jp-skeleton-grid span{height:44px}.jp-skeleton-line{height:14px}.jp-skeleton-line.jp-short{width:60%}@keyframes jp-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.jp-route-empty{color:var(--muted);text-align:center;background:#fafbf8;border:1px dashed #cfdacf;border-radius:16px;padding:18px 18px 20px;animation:.4s both jp-rise-in}.jp-route-empty strong{color:var(--ink);font:800 15px Manrope,sans-serif}.jp-route-empty p{max-width:280px;margin:6px auto 0;font-size:12px;line-height:1.6}.jp-empty-art{width:100%;max-width:250px;height:auto;margin:0 auto 8px;display:block;overflow:visible}.jp-empty-road{fill:none;stroke:#e1e8e0;stroke-width:10px;stroke-linecap:round}.jp-empty-route{fill:none;stroke:var(--forest-soft);stroke-width:4px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:3.2s ease-in-out .3s infinite jp-empty-draw}.jp-empty-stop{fill:#fff;stroke:#2f8f46;stroke-width:3px}.jp-empty-pin path{stroke:#fff;stroke-width:2px}.jp-empty-pin-a path{fill:var(--forest)}.jp-empty-pin-b path{fill:#c8352b}.jp-empty-pin text{fill:#fff;text-anchor:middle;font:800 10px Manrope,sans-serif}.jp-empty-pin-a text{fill:var(--lime)}.jp-empty-pin-b{animation:3.2s ease-in-out infinite jp-bob}@keyframes jp-empty-draw{0%{stroke-dashoffset:1px}55%,80%{stroke-dashoffset:0}to{stroke-dashoffset:-1px}}@keyframes jp-bob{0%,to{translate:0}50%{translate:0 -4px}}.jp-route-result{animation:.35s both jp-rise-in}.jp-route-tabs{gap:6px;margin-bottom:14px;padding-bottom:2px;display:flex;overflow-x:auto}.jp-route-tab{border:1px solid var(--line);color:#526158;text-align:left;min-width:104px;animation:jp-rise-in .35s ease calc(var(--i) * 70ms) both;background:#fff;border-radius:13px;flex:1 1 0;gap:5px;padding:10px 11px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:grid;position:relative}.jp-route-tab:hover{transform:translateY(-2px);box-shadow:0 8px 18px #173f3714}.jp-route-tab strong{color:var(--ink);font:800 15px Manrope,sans-serif}.jp-route-tab .jp-tab-chips{flex-wrap:wrap;gap:3px;display:flex}.jp-route-tab .jp-tab-label{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.jp-route-tab[aria-selected=true]{border-color:var(--forest);background:linear-gradient(160deg, #eaf4ec, var(--mint));box-shadow:0 8px 20px #173f371f}.jp-route-tab[aria-selected=true]:after{content:"";background:var(--forest);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px;left:12px;right:12px}.jp-chip{color:#fff;background:var(--c);border-radius:6px;padding:2px 6px;font-size:9.5px;font-style:normal;font-weight:800;line-height:1.4;display:inline-block}.jp-chip-walk{color:#43524a;background:#e4ebe5}.jp-route-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px;display:grid}.jp-route-summary div{animation:jp-rise-in .35s ease calc(var(--i) * 45ms + 80ms) both;background:#f4f7f2;border-radius:12px;padding:10px 11px}.jp-route-summary div:first-child{color:#fff;background:linear-gradient(135deg, var(--forest-soft), var(--forest-deep))}.jp-route-summary div:first-child dt{color:#b9d2c5}.jp-route-summary div:first-child dd{color:var(--lime)}.jp-route-summary dt{color:var(--muted);letter-spacing:.8px;text-transform:uppercase;font-size:9px;font-weight:700}.jp-route-summary dd{color:var(--ink);margin:3px 0 0;font:800 15px Manrope,sans-serif}.jp-route-steps{margin:0;padding:0;list-style:none}.jp-route-step{animation:jp-slide-in .4s ease calc(var(--i) * 90ms + .2s) both;grid-template-columns:15px minmax(0,1fr) auto;gap:11px;padding:0 0 15px;display:grid;position:relative}.jp-route-step:before{content:"";background:var(--leg-color);border-radius:2px;width:3px;position:absolute;top:15px;bottom:0;left:6px}.jp-route-step.jp-is-walk:before{background:radial-gradient(circle, var(--leg-color) 1.5px, transparent 2px) 50% 0 / 3px 7px repeat-y}.jp-route-step:last-child:before{display:none}.jp-step-dot{border:3px solid var(--leg-color);background:#fff;border-radius:50%;width:15px;height:15px;margin-top:1px}.jp-route-step p{color:var(--ink);margin:0;font-size:12px;line-height:1.45}.jp-route-step small{color:var(--muted);margin-top:2px;font-size:10.5px;line-height:1.45;display:block}.jp-route-step time{color:#55645b;font-size:11px;font-weight:700}@keyframes jp-rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes jp-slide-in{0%{opacity:0;transform:translate(-10px)}}.jp-landmark{border:2px solid var(--forest-deep);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-size:15px;line-height:1;transition:transform .15s;display:grid;box-shadow:0 4px 12px #102f2a47}.jp-landmark:hover{transform:scale(1.15)}.jp-landmark-place{background:#fffaf0;border-color:#b8862f}.jp-landmark-landmark{background:#fff4e8;border-color:#a65c3b}.jp-landmark-airport{border-width:3px;width:38px;height:38px;margin:-4px 0 0 -4px;font-size:19px}.jp-landmark-tooltip{color:var(--forest-deep);border:0;border-radius:8px;padding:6px 9px;font:700 12px/1.4 DM Sans,sans-serif;box-shadow:0 6px 16px #102f2a2e}.jp-landmark-category{color:#7a877f;font-weight:500}.jp-amenity-marker-icon{background:0 0;border:0}.jp-amenity-marker{color:#fff;background:var(--amenity-color);border:2px solid #fff;border-radius:50%;place-items:center;width:32px;height:32px;font-size:16px;line-height:1;transition:transform .16s;display:grid;box-shadow:0 3px 10px #102f2a4d}.jp-amenity-marker:hover{transform:scale(1.13)}.jp-amenity-marker.jp-amenity-tesco,.jp-amenity-marker.jp-amenity-spar,.jp-amenity-marker.jp-amenity-dunnes,.jp-amenity-marker.jp-amenity-aldi,.jp-amenity-marker.jp-amenity-centra,.jp-amenity-marker.jp-amenity-lidl,.jp-amenity-marker.jp-amenity-supervalu,.jp-amenity-marker.jp-amenity-circlek,.jp-amenity-marker.jp-amenity-mace,.jp-amenity-marker.jp-amenity-daybreak,.jp-amenity-marker.jp-amenity-londis,.jp-amenity-marker.jp-amenity-eurospar,.jp-amenity-marker.jp-amenity-polonez,.jp-amenity-marker.jp-amenity-gala,.jp-amenity-marker.jp-amenity-costcutter,.jp-amenity-marker.jp-amenity-daytoday{width:46px;height:46px;color:inherit;background:#fff;border:0}.jp-brand-logo{color:#244b80;letter-spacing:-.35px;text-align:center;background:#fff;border:2px solid;border-radius:5px;place-items:center;width:34px;height:24px;font:900 7px/1 Manrope,sans-serif;display:inline-grid;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000001f}.jp-amenity-marker .jp-brand-logo{width:37px;height:27px;font-size:8px}.jp-brand-logo-tesco{color:#e31b34;background:linear-gradient(#fff 0 72%,#fce5e8 72%);border-color:#e31b34;font-size:9px;font-style:italic}.jp-brand-logo-spar{color:#168441;background:linear-gradient(135deg,#fff 0 65%,#e7f4e9 65%);border-color:#168441;font-size:9px}.jp-brand-logo-spar:before{content:"";background:#e3322c;border-radius:50% 50% 50% 0;width:5px;height:5px;position:absolute;top:2px;left:3px;transform:rotate(-45deg)}.jp-brand-logo-dunnes{color:#244b80;letter-spacing:-.5px;background:linear-gradient(#fff 0 70%,#e8eef6 70%);border-color:#244b80;font-size:7px}.jp-brand-logo-aldi{color:#064e9b;background:linear-gradient(135deg,#fff 0 42%,#e6f0fb 42%);border-color:#064e9b;font-size:9px;font-style:italic}.jp-brand-logo-aldi:before{content:"";border-top:2px solid #e53235;border-bottom:1px solid #e53235;width:4px;height:3px;position:absolute;top:2px;left:3px}.jp-brand-logo-centra{color:#fff;background:linear-gradient(#e82b38 0 68%,#ffcf24 68%);border-color:#d5232f;font-size:8px}.jp-brand-logo-lidl{color:#064e9b;background:#ffdf00;border:3px solid #134f9b;border-radius:50%;font-size:9px;font-style:italic}.jp-brand-logo-lidl:after{content:"";background:#e5322b;border-radius:50%;width:5px;height:5px;position:absolute;top:3px;right:5px}.jp-brand-logo-supervalu{color:#bd1934;background:linear-gradient(135deg,#fff 0 55%,#e8f4eb 55%);border:0;font-size:7px;font-style:italic}.jp-brand-logo-supervalu:after{content:"";background:#318b4c;border-radius:7px 0;width:7px;height:4px;position:absolute;bottom:3px;right:3px;transform:rotate(-25deg)}.jp-brand-logo-circlek{color:#e5222a;background:#fff;border:2px solid #e5222a;border-radius:50%;font-size:10px}.jp-brand-logo-mace{color:#fff;text-shadow:0 1px 1px #8f1720;background:linear-gradient(135deg,#d3272f 0 48%,#fff 48%);border-color:#d3272f;font-size:9px}.jp-brand-logo-daybreak{color:#99500e;background:linear-gradient(#fff 0 55%,#ffd777 55%);border-color:#e17a20;font-size:6px}.jp-brand-logo-daybreak:before{content:"";background:#f3a322;border-radius:50%;width:7px;height:7px;position:absolute;top:2px}.jp-brand-logo-londis{color:#14539a;background:linear-gradient(135deg,#fff 0 70%,#5ca45e 70%);border-color:#14539a;font-size:8px;font-style:italic}.jp-brand-logo-eurospar{color:#16783e;background:linear-gradient(135deg,#fff 0 73%,#e53235 73%);border-color:#16783e;font-size:7px}.jp-brand-logo-polonez{color:#315d9c;background:linear-gradient(90deg,#fff 0 50%,#f6e8e8 50%);border-color:#315d9c;font-size:7px}.jp-brand-logo-gala{color:#c52535;background:linear-gradient(#fff 0 70%,#ffd444 70%);border-color:#c52535;font-size:9px;font-style:italic}.jp-brand-logo-costcutter{color:#258545;background:linear-gradient(135deg,#fff 0 55%,#f4d84c 55%);border-color:#258545;font-size:6px}.jp-brand-logo-daytoday{color:#fff;background:linear-gradient(135deg,#d5252d 0 50%,#245a9a 50%);border-color:#d5252d;font-size:6px}.jp-layer-subcategory{align-items:center;gap:7px;margin-left:18px;display:inline-flex}.jp-amenity-supermarkets{--amenity-color:#2f7b50}.jp-amenity-tesco{--amenity-color:#e31b34}.jp-amenity-spar{--amenity-color:#168441}.jp-amenity-dunnes{--amenity-color:#244b80}.jp-amenity-aldi{--amenity-color:#064e9b}.jp-amenity-centra{--amenity-color:#d5232f}.jp-amenity-lidl{--amenity-color:#064e9b}.jp-amenity-supervalu{--amenity-color:#d21e38}.jp-amenity-circlek{--amenity-color:#e5222a}.jp-amenity-mace{--amenity-color:#d3272f}.jp-amenity-daybreak{--amenity-color:#e17a20}.jp-amenity-londis{--amenity-color:#14539a}.jp-amenity-eurospar{--amenity-color:#16783e}.jp-amenity-polonez{--amenity-color:#315d9c}.jp-amenity-gala{--amenity-color:#c52535}.jp-amenity-costcutter{--amenity-color:#258545}.jp-amenity-daytoday{--amenity-color:#d5252d}.jp-amenity-groceries{--amenity-color:#58835a}.jp-amenity-pharmacies{--amenity-color:#7054a0}.jp-amenity-hospitals{--amenity-color:#bd4138}.jp-amenity-shopping{--amenity-color:#bd7627}.jp-amenity-parks{--amenity-color:#4b8550}.jp-amenity-landmarks{--amenity-color:#a65c3b}.jp-amenity-tooltip small{color:#a9beb0;margin-top:2px;font-size:9px;font-weight:600;display:block}.jp-route-map .leaflet-control-layers{color:#43524a;border:0;border-radius:10px;max-width:min(270px,100vw - 30px);font:600 12px DM Sans,sans-serif;box-shadow:0 8px 22px #102f2a1f}.jp-route-map .leaflet-control-layers-list{max-height:min(52vh,360px);overflow-y:auto}.jp-route-map .leaflet-control-layers label{padding:3px 1px}.jp-route-map .leaflet-control-layers-separator{margin:7px 0}@media (width<=650px){.jp-amenity-status{max-width:min(250px,100% - 72px);top:12px;left:12px}}.jp-howto{color:var(--ink);background:#f1f7f2;border:1px solid #d9e6dc;border-radius:14px;margin:0 0 12px;padding:11px 13px}.jp-howto>b{color:var(--forest);margin-bottom:6px;font:800 13px Manrope,sans-serif;display:block}.jp-howto ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.jp-howto li{align-items:flex-start;gap:6px;font-size:12px;line-height:1.45;display:flex}.jp-howto li strong{color:var(--forest)}.jp-howto-pin,.jp-howto-drag{color:#fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:10px;font-weight:800;display:inline-grid}.jp-howto-pin.is-a{color:#d9f17e;background:#173f37}.jp-howto-pin.is-b{background:#c8352b}.jp-howto-drag{color:var(--forest);background:#fff;border:1px solid #cfdccf;font-size:13px}.district-map.jp-scope{background:#eef1ec}.district-map .jp-route-map{font-family:DM Sans,Arial,sans-serif}.dp-icon{background:0 0;border:0}.dp-anchor{white-space:nowrap;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.dp-anchor-bottom{transform:translate(-50%,calc(-100% - 6px))}.dp-code .dm-code,.dp-place .dm-place{cursor:pointer}.district-map .leaflet-popup-content-wrapper{border-radius:14px;box-shadow:0 12px 30px #102f2a2e}.district-map .leaflet-popup-content{margin:12px 14px}.dp-popup-actions{gap:6px;margin-top:10px;display:grid}.dp-popup-actions .stop-open{margin-top:0}.stop-open.dp-route-here{color:var(--forest,#173f37);background:#e8f0e9}.district-map .leaflet-control-layers-toggle{border-radius:10px;width:38px;height:38px}.district-map .leaflet-top.leaflet-right{top:4px;right:4px}.jp-panel{gap:14px;display:grid}.jp-panel .jp-route-controls{margin-bottom:0}.jp-reset-button{border:1px solid var(--line);color:var(--forest);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 12px;font:700 12px DM Sans,sans-serif;transition:background .2s,border-color .2s;display:inline-flex}.jp-reset-button:hover{border-color:var(--forest-soft);background:var(--mint)}.jp-reset-button.jp-route-reset{margin-left:auto}.jp-error-box{color:#8c302b;background:#fff6f3;border:1px solid #f0cbc4;border-radius:12px;padding:11px 13px;font-size:12px;line-height:1.5}.jp-quick{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:12px;display:flex}.jp-quick button{border:1px solid var(--line);color:var(--forest);cursor:pointer;background:#fff;border-radius:999px;padding:7px 11px;font:700 11px DM Sans,sans-serif}.jp-quick button:hover{background:var(--mint)}.map-legend .district-outline-line{background:0 0;border-top:3px dashed;border-radius:0;height:0}.pm-icon{background:0 0;border:0}.pm{--size:30px;--emoji:16px;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.pm-dot{width:var(--size);height:var(--size);border:2px solid var(--ring);font-size:var(--emoji);cursor:pointer;background:#fff;border-radius:50%;place-items:center;line-height:1;transition:width .2s,height .2s,font-size .2s,transform .15s;display:grid;box-shadow:0 3px 10px #102f2a40}.pm:hover .pm-dot,.pm.on .pm-dot{transform:scale(1.15)}.pm-label{color:#1f3d33;text-align:center;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 6px #fff,0 0 6px #fff;pointer-events:none;width:max-content;max-width:150px;font:700 11px/1.2 DM Sans,sans-serif;display:none;position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%)}.z-far .pm{--size:20px;--emoji:11px}.z-far .pm-dot{border-width:1.5px;box-shadow:0 2px 5px #102f2a38}.z-far .pm-amenity{--size:16px;--emoji:9px}.z-mid .pm-amenity{--size:24px;--emoji:13px}.z-near .pm{--size:34px;--emoji:18px}.z-near .pm-amenity{--size:28px;--emoji:15px}.z-near .pm-uni .pm-label,.z-near .pm-place .pm-label,.z-near .pm-landmark .pm-label{display:block}.z-street .pm{--size:38px;--emoji:20px}.z-street .pm-amenity{--size:32px;--emoji:17px}.z-street .pm-amenity .pm-label{font-size:10px;display:block}.pm-uni{z-index:2}.pm-row{vertical-align:middle;align-items:center;gap:7px;display:inline-flex}.pm-row-dot{border:2px solid var(--ring);background:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;line-height:1;display:grid}.pm-sub{margin-left:16px;display:inline-block}.district-map .leaflet-control-layers-expanded{padding:8px 12px 8px 8px}.district-map .leaflet-control-layers label{margin:2px 0}.map-legend .legend-pin i{background:#fff;border:2px solid #173f37;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-style:normal;display:inline-grid}.map-legend .legend-more{color:#8a988b}.jp-scope [hidden]{display:none!important}.pm-label.pm-label-hidden{visibility:hidden}.pm-dot.pm-brand{border-width:0;border-radius:9px;width:auto;height:auto;padding:3px}.pm-brand .jp-brand-logo{width:40px;height:26px;font-size:8px}.pm-brand .jp-brand-logo-tesco,.pm-brand .jp-brand-logo-spar,.pm-brand .jp-brand-logo-aldi,.pm-brand .jp-brand-logo-lidl,.pm-brand .jp-brand-logo-gala{font-size:9px}.pm-brand .jp-brand-logo-lidl,.pm-brand .jp-brand-logo-circlek{width:30px;height:30px}.z-far .pm-dot.pm-brand{transform:scale(.55)}.z-mid .pm-dot.pm-brand{transform:scale(.75)}.z-far .pm:hover .pm-dot.pm-brand{transform:scale(.65)}.z-mid .pm:hover .pm-dot.pm-brand{transform:scale(.85)}.z-near .pm-bike .pm-label{font-size:10px;display:block}.tr-stop{position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.tr-stop-dot{border:3px solid var(--ring);cursor:pointer;background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .15s;display:block;box-shadow:0 0 0 2px #fff,0 2px 6px #0000004d}.tr-stop:hover .tr-stop-dot{transform:scale(1.3)}.tr-rail .tr-stop-dot{border-radius:4px}.z-near .tr-stop-dot{border-width:3.5px;width:14px;height:14px}.tr-stop .pm-label{color:#2b3a33;font-size:10.5px}.z-near .tr-stop .pm-label{display:block}.district-controls .tr-toggle i{vertical-align:-1px;border-radius:50%;width:12px;height:12px;margin-right:1px;display:inline-block}.district-controls .tr-toggle .tr-luas{background:linear-gradient(90deg,#e0312b 0 50%,#00a651 50%);border-radius:3px;width:22px;height:6px}.district-controls .tr-toggle .tr-bus{background:#f5b400;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #d9a000}.district-controls .tr-toggle .tr-bikes{background:#1f6fb2;box-shadow:inset 0 0 0 2px #fff,0 0 0 1px #1f6fb2}.district-controls .tr-toggle .tr-rail{background:linear-gradient(90deg,#7ac143 0 50%,#6f3f98 50%);border-radius:3px;width:22px;height:6px}.welcome-card{padding:26px 24px}.welcome-card .eyebrow{margin-bottom:6px}.welcome-card h2{color:#214c39;letter-spacing:-.03em;margin:0 0 8px;font:800 1.5rem/1.2 Manrope,sans-serif}.welcome-card>p{color:#66766b;margin:0 0 18px;font-size:.9rem;line-height:1.6}.welcome-card h3{color:#214c39;margin:22px 0 12px;font:800 1rem Manrope,sans-serif}.district-controls .tr-toggle[aria-pressed=true]{color:#214c39;background:#eef6f0;border-color:#a9c9b2}.z-far .pm-bike{--size:9px;--emoji:0px}.z-far .pm-bike .pm-dot{background:#1f6fb2;border:1.5px solid #fff}.z-mid .pm-bike{--size:13px;--emoji:0px}.z-mid .pm-bike .pm-dot{background:#1f6fb2;border:2px solid #fff}.jp-map-hint .jp-hint-text{font:inherit}.jp-map-hint strong{font:inherit;letter-spacing:inherit;font-weight:700}.poi-text{width:max-content;max-width:130px;color:var(--c);text-align:center;text-shadow:0 0 2px #fff,0 0 3px #fff,0 0 5px #fff,0 0 7px #fff;cursor:pointer;font:600 10.5px/1.2 DM Sans,sans-serif;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.poi-text:hover{text-decoration:underline}.z-street .poi-text{font-size:11.5px}.poi-text.pm-label-hidden{visibility:hidden}.page-header.page-header-compact{margin:0 0 16px;padding-left:2px;display:block}.page-header-compact h1{margin:0;font-size:clamp(1.6rem,2.3vw,2.1rem);line-height:1.15}.page-header-compact .page-description{color:#66786b;max-width:none;margin-top:4px;font-size:.95rem;line-height:1.5}.district-page:has(.page-header-compact){padding-top:clamp(12px,1.6vw,22px)}.map-card .map-toolbar{gap:8px;margin:0 0 10px;display:grid}.map-toolbar .district-controls{gap:6px;margin:0}.map-toolbar .toolbar-divider{background:#dfe8da;width:1px;height:22px;margin:0 2px}.map-toolbar .district-chips{grid-template-columns:repeat(22,minmax(0,1fr)) auto;gap:4px;margin:0;padding:0;display:grid;overflow:visible}.map-toolbar .district-chips button,.map-toolbar .district-chips .chip-soon{text-align:center;white-space:nowrap;border-radius:8px;min-height:30px;padding:5px 0;font-size:.78rem;font-weight:800;transition:transform .12s,box-shadow .12s,border-color .12s}.map-toolbar .district-chips button:hover{border-color:#9cbfa6;transform:translateY(-1px);box-shadow:0 3px 8px #214b391f}@media (width<=1100px){.map-toolbar .district-chips{grid-template-columns:repeat(auto-fill,minmax(46px,1fr))}}.map-card .map-legend{padding-top:9px}@media (width>=1101px){.district-layout{align-items:start}.map-card{flex-direction:column;height:calc(100vh - 24px);min-height:560px;display:flex;position:sticky;top:12px}.map-card .district-map{flex:auto;height:auto;min-height:360px;max-height:none}.profile-card{max-height:calc(100vh - 24px);top:12px}.welcome-card{overflow-y:auto}}.jp-trip{gap:6px;margin:0;padding:0;list-style:none;display:grid;position:relative}.jp-trip:before{content:"";border-left:2px dashed #c9d6cc;position:absolute;top:30px;bottom:30px;left:21px}.jp-trip li{color:var(--ink);background:#f4f7f2;border-radius:12px;align-items:center;gap:10px;padding:9px 12px;display:flex;position:relative}.jp-trip b{color:#fff;border-radius:50%;flex:0 0 22px;place-items:center;height:22px;font:800 11px Manrope,sans-serif;display:grid}.jp-trip .is-a b{color:var(--lime);background:var(--forest)}.jp-trip .is-b b{background:#c8352b}.jp-trip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;line-height:1.3;overflow:hidden}.jp-trip small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9.5px;font-weight:700;display:block}.jp-trip .is-empty span{color:var(--muted);font-weight:500}.jp-map-hint{max-width:calc(100% - 130px)}.jp-map-hint .jp-hint-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.district-controls .tr-toggle .tr-safety{background:linear-gradient(90deg,#b23a2f,#e0694a,#f4cf62,#5fae6b,#25704a);border-radius:3px;width:22px;height:8px}.map-legend .legend-safety{color:#687968}.map-legend .legend-safety i{background:linear-gradient(90deg,#b23a2f,#e0694a,#f4cf62,#b5cf6c,#5fae6b,#25704a);border-radius:4px;width:70px;height:8px;display:inline-block}.leaflet-tooltip.safe-tooltip{white-space:normal;max-width:260px;font-weight:500}.map-toolbar .district-controls{flex-wrap:nowrap;gap:5px}.map-toolbar .seg-toggle button{padding:6px 10px;font-size:.74rem}.map-toolbar .tour-button{white-space:nowrap;padding:7px 11px;font-size:.74rem}.map-toolbar .tr-toggle{white-space:nowrap;gap:5px;padding:6px 9px;font-size:.72rem}.map-toolbar .toolbar-divider{margin:0}@media (width<=1250px){.map-toolbar .district-controls{flex-wrap:wrap}}.leaflet-tooltip.safe-tooltip{width:250px}.safe-tooltip .safe-pop>div{line-height:1.35}.map-card .district-map{border:1px solid #d9e3d3;border-radius:18px;box-shadow:inset 0 0 0 1px #fff9,0 10px 30px #213c2c14}.district-map .jp-map-vignette{background:linear-gradient(#102f2a14,#0000 110px);box-shadow:inset 0 0 90px #102f2a24}.district-map .leaflet-bottom.leaflet-right{bottom:18px;right:6px}.district-map .leaflet-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:0;border-radius:14px;overflow:hidden;box-shadow:0 8px 22px #102f2a2e}.district-map .leaflet-bar a{color:#1f4a39;background:0 0;width:40px;height:40px;font-size:20px;font-weight:500;line-height:40px;transition:background .15s,color .15s}.district-map .leaflet-bar a:hover{color:#102f2a;background:#e8f2ec}.district-map .dp-home-control{margin-bottom:8px!important}.dp-home{place-items:center;display:grid!important}.dp-home svg{color:#1f4a39;width:24px;height:24px}.dp-home .dp-needle{transform-origin:12px 12px}.dp-home.is-spinning .dp-needle{animation:.9s cubic-bezier(.3,1.4,.5,1) dp-needle-spin}@keyframes dp-needle-spin{0%{transform:rotate(0)}60%{transform:rotate(400deg)}to{transform:rotate(360deg)}}.district-map .leaflet-control-layers{border:0;border-radius:14px;box-shadow:0 8px 22px #102f2a2e}.district-map .leaflet-control-layers-toggle{color:#1f4a39;background-color:#fffffff2;background-position:11px;background-size:20px 20px;border-radius:14px;align-items:center;gap:7px;padding:0 14px 0 38px;font:800 12.5px DM Sans,sans-serif;text-decoration:none;width:auto!important;height:40px!important;display:inline-flex!important}.district-map .leaflet-control-layers-toggle:hover{background-color:#e8f2ec}.district-map .leaflet-control-layers-expanded{border-radius:14px;padding:10px 12px 10px 10px}.district-map .leaflet-control-scale{margin-bottom:18px!important;margin-left:12px!important}.district-map .leaflet-control-scale-line{color:#2f4a3e;background:#ffffffd9;border:2px solid #4b6457;border-top:0;border-radius:0 0 4px 4px;font:700 10px DM Sans,sans-serif}.dp-outline-line{animation:22s linear infinite dp-outline-march}@keyframes dp-outline-march{to{stroke-dashoffset:-280px}}.pm-dot,.tr-stop-dot{animation:.35s cubic-bezier(.3,1.5,.5,1) both dp-pin-pop}@keyframes dp-pin-pop{0%{opacity:0;transform:scale(.4)}}.poi-text{animation:.4s both dp-fade}@keyframes dp-fade{0%{opacity:0}}.district-map .jp-map-hint{background:#ffffffe6;border:1px solid #ffffffd9;box-shadow:0 10px 28px #102f2a2e}@media (prefers-reduced-motion:reduce){.dp-outline-line,.pm-dot,.tr-stop-dot,.poi-text,.dp-home.is-spinning .dp-needle{animation:none}}.district-page:has(.page-header-compact){background:radial-gradient(900px 420px at 0 0,#7cb69129,#0000 70%),radial-gradient(800px 380px at 100% 0,#d9f17e24,#0000 70%)}.map-card{border-color:#e1eadc;box-shadow:0 18px 44px #213c2c17}.map-toolbar .district-controls{background:#f7f9f3;border:1px solid #e6ede1;border-radius:16px;padding:6px}.map-toolbar .seg-toggle{background:#fff;border-color:#e1e9dc}.map-toolbar .tour-button{border-radius:12px;box-shadow:0 4px 12px #d9435140}.map-toolbar .tr-toggle{background:#fff;border-color:#e1e9dc;transition:background .15s,border-color .15s,transform .15s}.map-toolbar .tr-toggle:hover{border-color:#b9d0bf;transform:translateY(-1px)}.map-toolbar .tr-toggle[aria-pressed=false]{opacity:.72}.map-toolbar .district-chips button{background:#fff;box-shadow:0 1px 2px #213c2c0d}.map-toolbar .district-chips button[aria-pressed=true]{transform:translateY(-1px);box-shadow:0 6px 14px #213c2c38}.map-card .map-legend{gap:6px;padding-top:10px}.map-card .map-legend>span{background:#fbfcf8;border:1px solid #e6ede1;border-radius:999px;padding:4px 10px;font-size:.72rem}.map-card .map-legend>span.legend-more{background:0 0;border:0;padding:4px 2px}.map-toolbar .district-chips button{position:relative}.map-toolbar .district-chips .chip-clear{color:#fff;background:#1f2d29;border:1.5px solid #fff;border-radius:50%;place-items:center;width:15px;height:15px;font-size:10px;font-weight:800;line-height:1;display:grid;position:absolute;top:-6px;right:-5px;box-shadow:0 2px 5px #00000040}.map-toolbar .district-chips button[aria-pressed=true]:hover .chip-clear{background:#d94351}.map-toolbar .district-chips.county-chips{grid-template-columns:auto repeat(12,minmax(0,1fr));align-items:stretch}.map-toolbar .chips-label{color:#5f7666;letter-spacing:.08em;text-align:center;text-transform:uppercase;white-space:normal;place-items:center;max-width:70px;padding:0 8px 0 2px;font-size:.62rem;font-weight:800;line-height:1.15;display:grid}.map-toolbar .county-chips button{flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:34px;padding:3px 2px;line-height:1.1;display:flex}.map-toolbar .county-chips button small{color:#7a8a7e;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.56rem;font-weight:700;overflow:hidden}.map-toolbar .county-chips button[aria-pressed=true] small{color:#ffffffd9}@media (width<=1100px){.map-toolbar .district-chips.county-chips{grid-template-columns:repeat(auto-fill,minmax(64px,1fr))}.map-toolbar .chips-label{grid-column:1/-1;justify-self:start;max-width:none}}.map-toolbar .county-toggle{color:#1f4a39;white-space:nowrap;cursor:pointer;background:#eef6f0;border:1px solid #c9dccd;border-radius:8px;align-items:center;gap:5px;min-height:30px;padding:5px 10px;font:800 .74rem DM Sans,sans-serif;transition:background .15s,border-color .15s;display:inline-flex}.map-toolbar .county-toggle:hover{background:#e2efe6;border-color:#9cbfa6}.map-toolbar .county-toggle[aria-expanded=true]{color:#fff;background:#1f4a39;border-color:#1f4a39}.map-toolbar .county-toggle.has-selection:after{content:"";background:#d94351;border-radius:50%;width:7px;height:7px}.map-toolbar .county-chips{animation:.22s both dp-county-in}@keyframes dp-county-in{0%{opacity:0;transform:translateY(-4px)}}.district-map .dp-full-control{margin-bottom:8px!important}.dp-full{place-items:center;display:grid!important}.dp-full svg{color:#1f4a39;width:20px;height:20px}:is(.district-map.is-fullscreen,.district-map:fullscreen){border:0;border-radius:0;width:100vw;max-height:none;height:100vh!important}.district-map:-webkit-full-screen{border-radius:0;width:100vw;height:100vh!important}.dp-info-control{position:relative;margin-bottom:8px!important;margin-left:12px!important}.dp-info{color:#1f4a39;cursor:pointer;background:#fffffff2;border:0;border-radius:50%;place-items:center;width:30px;height:30px;padding:0;font:italic 800 15px Georgia,serif;transition:background .15s,color .15s;display:grid;box-shadow:0 6px 16px #102f2a33}.dp-info:hover,.dp-info.is-open{color:#fff;background:#1f4a39}.dp-info-card{color:#43524a;background:#fffffff7;border-radius:14px;width:300px;max-width:calc(100vw - 60px);padding:12px 14px;font:500 11.5px/1.5 DM Sans,sans-serif;animation:.2s both dp-county-in;position:absolute;bottom:40px;left:0;box-shadow:0 12px 30px #102f2a38}.dp-info-card[hidden]{display:none}.dp-info-card b{color:#1f4a39;letter-spacing:.06em;text-transform:uppercase;margin-top:6px;font-size:11px;display:block}.dp-info-card b:first-child{margin-top:0}.dp-info-card p{margin:3px 0 0}.dp-info-card a{color:#1f5a45;font-weight:700}@media (width<=600px){.jp-map-hint{white-space:normal;border-radius:14px;max-width:calc(100% - 72px);padding:8px 12px;line-height:1.35;top:62px;left:12px;right:auto;transform:none}.jp-map-hint .jp-hint-text{white-space:normal;overflow:visible}}@media (width<=1100px){.map-toolbar .district-chips .county-toggle{grid-column:span 2;justify-content:center}}.district-map.is-browsing .jp-route-map.leaflet-container{cursor:grab}.district-map.is-browsing .jp-route-map.leaflet-container.leaflet-dragging{cursor:grabbing}.district-map.is-browsing .jp-map-hint{display:none}.jp-search-pin span{background:#c29450;border:3px solid #fff;border-radius:50% 50% 50% 0;animation:.45s cubic-bezier(.3,1.4,.5,1) both jp-search-drop;position:absolute;inset:0 3px 8px;transform:rotate(-45deg);box-shadow:0 6px 14px #102f2a59}.jp-search-pin span:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:7px}@keyframes jp-search-drop{0%{opacity:0;transform:translateY(-18px)rotate(-45deg)}}.jp-search-popup .leaflet-popup-content{margin:12px 14px}.jp-search-pop strong{color:#202d29;font:700 14px DM Sans,sans-serif;display:block}.jp-search-pop small{color:#74817a;margin-top:2px;font:500 12px DM Sans,sans-serif;display:block}.jp-search-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.jp-search-actions button{color:#214b39;cursor:pointer;background:#fff;border:1px solid #dfe8da;border-radius:99px;padding:7px 11px;font:700 12px DM Sans,sans-serif}.jp-search-actions button:hover{background:#f0f5ec;border-color:#9cbfa6}.jp-search-actions button[data-end=to]{color:#d9f17e;background:#173f37;border-color:#173f37}@media (prefers-reduced-motion:reduce){.jp-search-pin span{animation:none}}.district-map.has-search-pop .jp-map-hint{display:none}.jp-bus-stop{justify-items:center;display:grid}.jp-bus-badge{box-sizing:border-box;background:#f5b400;border:2px solid #173f37;border-radius:50%;place-items:center;width:24px;height:24px;transition:transform .15s;display:grid;box-shadow:0 2px 6px #102f2a59}.jp-bus-badge svg{width:15px;height:15px}.jp-bus-badge.is-big{border-width:2.5px;width:30px;height:30px}.jp-bus-badge.is-big svg{width:19px;height:19px}.jp-bus-stop:hover .jp-bus-badge{transform:scale(1.15)}.jp-bus-stop small{color:#ffd34d;white-space:nowrap;background:#173f37;border-radius:4px;margin-top:2px;padding:0 4px;font:800 9.5px/1.5 Manrope,sans-serif}.jp-bus-badge{position:relative}.jp-bus-badge i{box-sizing:border-box;color:#ffd34d;text-align:center;background:#173f37;border:1.5px solid #fff;border-radius:99px;min-width:15px;height:15px;padding:0 3px;font:800 9px/12px Manrope,sans-serif;position:absolute;top:-6px;right:-7px}.district-controls .tr-toggle .tr-housing{background:0 0;width:auto;height:auto;font-size:13px;font-style:normal;line-height:1}.z-near .pm-housing .pm-label{display:block}.pm-housing .pm-label{color:#5a2d7a}.sh-popup .leaflet-popup-content{margin:12px 14px}.sh-pop{gap:3px;font-family:DM Sans,sans-serif;display:grid}.sh-pop .sh-kicker{color:#7a3fa0;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:800}.sh-pop strong{color:#202d29;font-size:14.5px;font-weight:800}.sh-pop small{color:#5f6f67;font-size:12px;font-weight:600}.sh-pop .sh-addr{color:#74817a;font-size:12px}.sh-pop .sh-price{color:#202d29;margin-top:4px;font-size:13px}.sh-pop .sh-rooms{color:#74817a;font-size:11.5px}.sh-pop a{color:#7a3fa0;margin-top:6px;font-size:12.5px;font-weight:800;text-decoration:none}.sh-pop a:hover{text-decoration:underline}.leaflet-tooltip.sh-tip{white-space:normal;max-width:250px}.leaflet-tooltip.sh-tip small{margin-top:2px;display:block}.leaflet-tooltip.sh-tip .sh-tip-hint{color:#7a3fa0;margin-top:5px;font-weight:700}.sh-pop .sh-web{justify-self:start}.sh-uni{border-top:1px dashed #e2d6ec;gap:6px;margin-top:10px;padding-top:10px;display:grid}.sh-uni-label{color:#7a3fa0;letter-spacing:.08em;text-transform:uppercase;gap:4px;font:800 10.5px DM Sans,sans-serif;display:grid}.sh-uni-label select{color:#202d29;letter-spacing:0;text-transform:none;background:#fff;border:1.5px solid #d9c8e6;border-radius:9px;width:100%;max-width:100%;padding:7px 8px;font:600 12.5px DM Sans,sans-serif}.sh-pop .sh-row{color:#4d5e53;align-items:baseline;gap:7px;margin:0;font-size:12.5px;line-height:1.4;display:flex}.sh-pop .sh-row b{color:#202d29}.sh-pop .sh-row i{color:#8a968f}.sh-go{color:#fff;cursor:pointer;background:#5a2d7a;border:0;border-radius:999px;justify-self:start;margin-top:2px;padding:7px 12px;font:700 12px DM Sans,sans-serif}.sh-go:hover{background:#7a3fa0}.sh-pop .sh-row b{white-space:nowrap}.sh-pop .sh-price .sh-rooms{color:#74817a;font-size:11.5px}.sh-actions{align-items:center;gap:12px;margin-top:2px;display:flex}.sh-actions .sh-web{margin:0}.sh-uni{margin-top:8px;padding-top:8px}.sh-cluster{border:2.5px solid var(--ring);color:#5a2d7a;cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:3px;padding:3px 8px 3px 5px;font:800 12px/1 DM Sans,sans-serif;transition:transform .15s;display:inline-flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%);box-shadow:0 3px 8px #102f2a47}.sh-cluster span{font-size:13px}.sh-cluster:hover{transform:translate(-50%,-50%)scale(1.1)}.z-far .sh-cluster{padding:2px 6px 2px 4px;font-size:11px}.leaflet-popup.sh-hover .leaflet-popup-content{margin:12px 14px;width:250px!important}.sh-pop .sh-actions .sh-web{background:#fbf8fd;border:1.5px solid #d9c8e6;border-radius:999px;padding:6px 11px;text-decoration:none}.sh-pop .sh-actions .sh-web:hover{background:#f3ecf8;border-color:#7a3fa0;text-decoration:none}.sh-pop .sh-actions:empty{display:none}.sh-pop .sh-hint{color:#74817a;border-top:1px dashed #e2d6ec;margin-top:6px;padding-top:7px;font-size:11.5px;line-height:1.4}.sh-pop .sh-hint b{border-radius:50%;place-items:center;width:16px;height:16px;font-size:9.5px;display:inline-grid}.sh-pop .sh-hint b.is-a{color:#d9f17e;background:#173f37}.sh-pop .sh-hint b.is-b{color:#fff;background:#c8352b}.leaflet-popup.is-below .leaflet-popup-tip-container{transform:translateX(var(--tip-x,0px)) rotate(180deg);top:-20px;bottom:auto}.leaflet-popup .leaflet-popup-tip-container{transform:translateX(var(--tip-x,0px))}.bike-dot{background:#1f6fb2;border:2px solid #fff;box-shadow:0 0 0 1px #1f6fb2}.luas-toggle i.bike-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.stop-line.bikes{background:#1f6fb2}.bike-address{color:#6b8170;margin:0 0 2px;font-size:12px}.bike-live{margin:8px 0 0;font-size:12px}.bike-counts{gap:6px;margin-bottom:4px;display:flex}.bike-counts span{color:#174f80;background:#e6f0f9;border-radius:6px;padding:3px 8px;font-size:12px;font-weight:800}.bike-live small{color:#91a18c;font-size:10px}.ps{background:#fff;border:1px solid #dfe8da;border-radius:12px;align-items:center;gap:8px;min-width:0;padding:0 6px 0 12px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.ps:focus-within{border-color:#214b39;box-shadow:0 0 0 3px #214b391f}.ps.is-open{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ps-icon{fill:none;stroke:#214b39;stroke-width:2px;stroke-linecap:round;flex:none;width:18px;height:18px}.ps-badge{color:#fff;border-radius:50%;flex:0 0 22px;place-items:center;height:22px;font:800 11px Manrope,sans-serif;display:grid}.ps input{color:#202d29;background:0 0;border:0;outline:0;flex:1;min-width:0;height:40px;padding:0;font:600 14px DM Sans,sans-serif}.ps input::placeholder{color:#8a968f;font-weight:500}.ps input::-webkit-search-cancel-button{display:none}.ps-clear{color:#4f5f55;cursor:pointer;background:#eef3ec;border:0;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:17px;line-height:1;display:grid}.ps-clear:hover{color:#202d29;background:#dfe8da}.ps-list{z-index:1200;background:#fff;border:1px solid #dfe8da;border-radius:4px 4px 14px 14px;max-height:min(360px,60vh);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:-1px;right:-1px;overflow-y:auto;box-shadow:0 18px 40px #102f2a2e}.ps-list li{cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.ps-list li.is-active{background:#f0f5ec}.ps-kind{text-align:center;flex:none;width:22px;font-size:16px}.ps-text{flex:1;min-width:0}.ps-text strong,.ps-text small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ps-text strong{color:#202d29;font-size:13.5px;font-weight:700}.ps-text small{color:#74817a;font-size:11.5px}.ps-list em{color:#4f5f55;letter-spacing:.03em;background:#eef3ec;border-radius:99px;flex:none;padding:2px 7px;font-size:10px;font-style:normal;font-weight:700}.ps-list li.ps-more{border-top:1px dashed #dfe8da;border-radius:0 0 10px 10px;margin-top:2px}.ps-list li.ps-more strong{color:#214b39}.ps-list li.ps-note{color:#74817a;cursor:default;font-size:12.5px}.map-search{max-width:min(640px,100%);margin-bottom:10px}.map-search .ps{box-shadow:0 4px 14px #102f2a0f}.jp-ends{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 8px;display:grid;position:relative}.jp-ends .ps{background:#f4f7f2;border-color:#0000;grid-column:1}.jp-ends .ps:focus-within{background:#fff;border-color:#214b39}.jp-ends .ps input{height:38px;font-size:13px}.jp-ends .is-a .ps-badge{color:#d9f17e;background:#173f37}.jp-ends .is-b .ps-badge{background:#c8352b}.jp-swap{color:#214b39;cursor:pointer;background:#fff;border:1px solid #dfe8da;border-radius:50%;grid-area:1/2/span 2;place-items:center;width:34px;height:34px;font-size:16px;transition:transform .2s,background .2s;display:grid}.jp-swap:hover:not(:disabled){background:#f0f5ec;transform:rotate(180deg)}.jp-swap:disabled{opacity:.4;cursor:default}.jp-ends-note{color:#74817a;grid-column:1/-1;margin:0;font-size:11.5px}@media (width<=480px){.ps-list em{display:none}.ps input{font-size:16px}}.map-search-kicker{color:#9a7445;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:6px;margin:0 0 6px 4px;font:800 11px DM Sans,sans-serif;display:flex}.map-search-kicker span{font-size:12px}.ps.ps-hero{background:linear-gradient(#fff,#fbfdf6) 0 0/100% 100% padding-box padding-box,linear-gradient(120deg,#c29450,#dff27f,#2f8f6a,#e9cf9a,#c29450) 0 0/300% 300% border-box;border:2px solid #0000;border-radius:16px;padding:0 8px 0 16px;animation:8s linear infinite ps-border,1.5s ease-out .8s 3 ps-attention;box-shadow:0 12px 30px #173f3229,0 0 0 5px #dff27f47,inset 0 2px #fff,inset 0 -2px #173f320d}.ps.ps-hero input{color:#173f32;height:52px;font-size:15.5px;font-weight:700}.ps.ps-hero input::placeholder{color:#55665c;font-weight:600}.ps.ps-hero .ps-icon{stroke:#a8753f;stroke-width:2.4px;width:22px;height:22px}.ps.ps-hero:focus-within{animation-play-state:running,paused;box-shadow:0 14px 34px #173f3233,0 0 0 6px #dff27f8c,inset 0 2px #fff}.ps.ps-hero.is-open{border-bottom-right-radius:6px;border-bottom-left-radius:6px}@keyframes ps-border{to{background-position:0 0,300% 0}}@keyframes ps-attention{0%{transform:none}30%{filter:drop-shadow(0 0 12px #dff27fe6);transform:translateY(-2px)scale(1.012)}to{filter:none;transform:none}}@media (prefers-reduced-motion:reduce){.ps.ps-hero{animation:none}}@media (width<=480px){.ps.ps-hero input{height:48px;font-size:16px}}.profile-card.pc{background:#fffefa;border-color:#e3ebde;border-radius:22px;box-shadow:0 18px 44px #213c2c17}.pc .profile-banner{background:radial-gradient(120% 90% at 100% 0%, #ffffff24, transparent 55%), linear-gradient(150deg, var(--banner), color-mix(in srgb, var(--banner) 72%, #000));padding:22px 22px 20px}.pc .profile-banner:after{border-color:#ffffff1a;width:240px;height:240px;bottom:-110px;right:-40px}.pc .profile-kicker{color:#fffdf3b8;letter-spacing:.14em;text-transform:uppercase;font-size:.66rem}.pc .district-pill{color:#fff6d8;background:#ffffff1a;border-color:#ffffff47;min-width:50px;min-height:38px;font-size:1rem}.pc .profile-banner h2{margin:12px 0 10px;font-size:clamp(1.55rem,2.1vw,2rem)}.pc .profile-banner>p{color:#fffdf3d1;max-width:340px;font-size:.85rem}.pc .banner-decoration{color:#ffffff0f;bottom:-40px}.pc-hoods{z-index:1;flex-wrap:wrap;gap:6px;max-width:380px;margin:0;padding:0;list-style:none;display:flex;position:relative}.pc-hoods li{color:#fffdf3;background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:600}.pc-stats{z-index:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid;position:relative}.pc-stats button{color:#fffdf3;min-width:0;font:inherit;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 11px;transition:background .18s,transform .18s;display:flex}.pc-stats button:hover{background:#ffffff2e;transform:translateY(-2px)}.pc-stats small{color:#fffdf3b3;letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:800}.pc-stats b{letter-spacing:-.03em;font-family:Manrope,sans-serif;font-size:1.3rem;font-weight:800;line-height:1.25}.pc-stats b i{border-radius:9px;place-items:center;min-width:38px;height:28px;padding:0 7px;font-size:1rem;font-style:normal;display:inline-grid}.pc-stats span{color:#fffdf3c7;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.68rem;line-height:1.3;overflow:hidden}.pc .profile-body{padding:0 20px 18px}.pc .profile-tabs{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffefaf5;border-bottom:1px solid #edf1e8;gap:4px;margin:0 -20px 16px;padding:12px 20px;position:sticky;top:0}.pc .profile-tabs button{color:#6d7d6c;border:1px solid #0000;border-radius:999px;padding:7px 13px;font-size:.8rem;font-weight:800;transition:background .15s,color .15s}.pc .profile-tabs button:hover{color:#2c503b;background:#f1f5ec}.pc .profile-tabs button[aria-selected=true]{background:var(--accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000}.pc .profile-section{margin-top:22px}.pc .section-title-row{margin-bottom:12px}.pc .section-eyebrow{color:var(--accent);opacity:.85;font-size:.62rem}.pc .section-title-row h3{color:#22422f;font-size:1.12rem}.pc .section-icon{background:color-mix(in srgb, var(--accent) 12%, #fff);width:34px;height:34px;color:var(--accent);border-radius:11px}.pc .section-description{color:#758473;font-size:.78rem}.pc .empty-note{background:#fafbf6;border:1px dashed #dbe4d4;font-size:.8rem}.pc .place-count{background:color-mix(in srgb, var(--accent) 12%, #fff);color:var(--accent);font-size:.68rem;font-weight:800}.pc .places-list{gap:10px;display:grid}.pc .place-card{border-color:#e7ece1;border-radius:16px;grid-template-columns:112px minmax(0,1fr);transition:transform .18s,box-shadow .18s,border-color .18s}.pc .place-card:hover,.pc .place-card.is-active{border-color:color-mix(in srgb, var(--accent) 35%, #e7ece1);transform:translateY(-2px);box-shadow:0 10px 24px #213c2c1a}.pc .place-image{width:112px;min-height:104px}.pc .place-content{padding:13px 34px 13px 14px;position:relative}.pc .place-content h4{color:#22422f;font-size:.92rem}.pc .place-content p{color:#6f7e6d;font-size:.76rem}.pc .place-content:after{content:"→";color:var(--accent);opacity:0;font-weight:800;transition:opacity .18s,transform .18s;position:absolute;top:12px;right:13px;transform:translate(-4px)}.pc .place-card:hover .place-content:after{opacity:1;transform:none}.pc .rent-grid{gap:10px}.pc .rent-tile{background:#fbfcf7;border-color:#e7ece1;border-radius:14px;padding:13px 14px 13px 16px;position:relative;overflow:hidden}.pc .rent-tile:before{content:"";background:var(--accent);opacity:.75;border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.pc .rent-tile span{color:#6f7e6d;font-size:.74rem}.pc .rent-tile strong{color:#22422f;font-size:clamp(1.05rem,1.6vw,1.3rem)}.pc .rent-tile small{color:#8d9a89;font-size:.68rem}.pc .rtb-areas div{font-size:.78rem}.pc .amenities-grid{gap:9px}.pc .amenity-tile{background:#fbfcf7;border-color:#e7ece1;border-radius:14px;padding:11px 12px}.pc .amenity-icon{background:#fff;border-radius:10px;width:32px;height:32px;box-shadow:inset 0 0 0 1px #e7ece1}.pc .amenity-label{color:#6f7e6d;font-size:.74rem}.pc .amenity-tile strong{color:#22422f;font-size:1.05rem}.pc .chain-picker button{padding:7px 11px;font-size:.78rem}.pc .chain-result{border-radius:12px;font-size:.8rem}.pc .seg-toggle button[aria-pressed=true]{background:var(--accent)}.pc .safety-key.in-tab{border-radius:14px}.pc .district-navigation{border-top:1px solid #edf1e8;border-bottom:0;grid-template-columns:1fr 1fr;gap:8px;margin:24px 0 0;padding:16px 0 0;display:grid}.pc .district-navigation button{color:#2c503b;white-space:nowrap;text-overflow:ellipsis;background:#f6f8f1;border-radius:12px;justify-content:center;min-height:40px;padding:8px 10px;font-size:.76rem;overflow:hidden}.pc .district-navigation button:hover{border-color:color-mix(in srgb, var(--accent) 40%, #dce6d7);background:color-mix(in srgb, var(--accent) 8%, #fff)}@media (width<=650px){.pc-stats{grid-template-columns:1fr 1fr}.pc .place-card{grid-template-columns:90px minmax(0,1fr)}.pc .place-image{width:90px}.pc .district-navigation{grid-template-columns:1fr}}.pc-hoods li.pc-hoods-more{background:0 0;border:0;padding:0}.pc-hoods-more button{color:#fffdf3;font:inherit;cursor:pointer;background:0 0;border:1px dashed #ffffff73;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:700}.pc-hoods-more button:hover{background:#ffffff24}.pc-residences{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pc-residences li{background:#fbf8fd;border:1px solid #ece6f2;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.pc-res-name{color:#202d29;min-width:0;font-size:13.5px;font-weight:800;display:grid}.pc-res-name a{color:#5a2d7a;text-decoration:none}.pc-res-name a:hover{text-decoration:underline}.pc-res-name small{color:#74817a;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:500;overflow:hidden}.pc-residences b{color:#202d29;flex:none;font-size:13px}.map-stage{position:relative}.map-stage.is-touring .jp-map-hint{opacity:0;pointer-events:none;transition:opacity .3s}@media (width>=1101px){.map-card .map-stage{flex-direction:column;flex:auto;min-height:360px;display:flex}}.dt-bar{z-index:900;color:#1f2a24;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f5;border:1px solid #173f321f;border-radius:18px;align-items:center;gap:14px;width:min(760px,100% - 140px);padding:10px 12px 14px;font-family:DM Sans,sans-serif;animation:.45s cubic-bezier(.2,.9,.3,1.15) both dt-drop;display:flex;position:absolute;top:12px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 14px 34px #102f2a38}@keyframes dt-drop{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}.dt-row{flex:1;align-items:center;gap:12px;min-width:0;animation:.35s both dt-swap;display:flex}@keyframes dt-swap{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}.dt-badge{box-sizing:border-box;color:#dff27f;background:#173f32;border-radius:14px;flex:none;place-items:center;min-width:46px;height:46px;padding:0 6px;font-family:Fraunces,Georgia,serif;font-size:19px;font-weight:700;animation:.5s cubic-bezier(.3,1.6,.5,1) both dt-pop;display:grid}.dt-badge.is-south{color:#fff3dc;background:#8a5a17}@keyframes dt-pop{0%{transform:scale(.5)rotate(-12deg)}to{transform:none}}.dt-copy{min-width:0}.dt-label{color:#a8753f;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:800}.dt-label b.is-north{color:#1e4f8a}.dt-label b.is-south{color:#8a5a17}.dt-copy p{color:#1f2a24;margin:2px 0 0;font-size:14px;line-height:1.4}.dt-copy p b{color:#173f32}.dt-copy p a{color:#245b48;font-weight:700}.dt-actions{flex:none;align-items:center;gap:6px;display:flex}.dt-actions button{color:#173f32;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #d9d2c1;border-radius:999px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}.dt-actions button:hover:not(:disabled){border-color:#245b48;transform:translateY(-1px)}.dt-actions button:disabled{opacity:.35;cursor:default}.dt-icon{width:32px;height:32px;padding:0;font-size:13px!important}.dt-next{white-space:nowrap;padding:7px 14px;font-size:13px;color:#fff!important;background:#173f32!important;border-color:#173f32!important}.dt-skip{text-underline-offset:3px;white-space:nowrap;padding:7px 12px;font-size:13px;text-decoration:underline;color:#6b766e!important;background:0 0!important;border-color:#0000!important}.dt-skip:hover{color:#173f32!important}.dt-actions button:focus-visible{outline-offset:2px;outline:2px solid #245b48}.dt-progress{background:#ece6d8;height:4px;position:absolute;bottom:0;left:0;right:0}.dt-progress>span{background:#245b48;transition:width .4s;position:absolute;inset:0 auto 0 0}.dt-progress>i{transform-origin:0;background:#245b4859;width:100%;animation:linear both dt-timer;position:absolute;inset:0 auto 0 0}@keyframes dt-timer{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.district-chips.is-filtered button:not(.is-dim):not([aria-pressed=true]):not(.county-toggle){color:#fff;background:#173f32;border-color:#173f32;animation:.3s both chip-on;box-shadow:0 4px 10px #173f322e}@keyframes chip-on{0%{transform:scale(.92)}to{transform:none}}.district-hint{color:#5f6f67;align-items:center;gap:8px;margin:2px 2px 0;font-size:12.5px;line-height:1.4;display:flex}.district-hint b{color:#173f32}.district-hint .dh-n,.district-hint .dh-s{border-radius:999px;padding:1px 7px;font-size:11px;font-weight:800}.district-hint .dh-n{color:#1e4f8a;background:#dbe7f7}.district-hint .dh-s{color:#8a5a17;background:#f6e6cf}@media (width<=760px){.dt-bar{flex-direction:column;align-items:stretch;gap:10px;width:calc(100% - 20px)}.dt-actions{justify-content:flex-end}}@media (prefers-reduced-motion:reduce){.dt-bar,.dt-row,.dt-badge,.dt-progress>i,.district-chips.is-filtered button{animation:none}}.dt-bar{width:min(720px,100% - 150px);animation-name:dt-drop-left;left:12px;transform:none}@keyframes dt-drop-left{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@media (width<=760px){.dt-bar{width:calc(100% - 20px);left:10px}}.dt-badge.is-feature{color:#fff;background:#c29450;font-family:DM Sans,sans-serif;font-size:20px}.dt-label b.is-feature{color:#173f32}.dt-actions .dt-jump{color:#536459;border-style:dashed;padding:7px 10px;font-size:12px}.dt-actions .dt-jump:hover{color:#173f32;border-color:#173f32}.dt-spot{z-index:5;border-radius:12px;animation:1.6s ease-in-out infinite dt-spot;position:relative;box-shadow:0 0 0 3px #c29450,0 0 0 9px #c2945047}@keyframes dt-spot{50%{box-shadow:0 0 0 3px #c29450,0 0 0 14px #c294501a}}.profile-tabs [role=tab].dt-spot{background:#fff4df}@media (prefers-reduced-motion:reduce){.dt-spot{animation:none}}.dt-icon{flex:none}.dt-actions .dt-jump{white-space:nowrap}@media (width<=760px){.dt-actions{flex-wrap:wrap;gap:6px}.dt-actions .dt-next{margin-left:auto}}.dt-bar.is-docked{z-index:2100;top:auto;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));width:auto;max-width:720px;margin:0 auto;animation:.35s cubic-bezier(.2,.9,.3,1.1) both dt-dock;position:fixed;left:10px}@keyframes dt-dock{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.dt-bar.is-docked{animation:none}}.dt-spot{scroll-margin:80px 0}.cmp-backdrop{z-index:3000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e261f8c;place-items:center;padding:24px 16px;animation:.2s both cmp-fade;display:grid;position:fixed;inset:0}@keyframes cmp-fade{0%{opacity:0}}.cmp{color:#202d29;background:#fffdf7;border-radius:22px;outline:none;flex-direction:column;width:min(980px,100%);max-height:calc(100dvh - 48px);font-family:DM Sans,sans-serif;animation:.3s cubic-bezier(.2,.8,.2,1) both cmp-rise;display:flex;overflow:hidden;box-shadow:0 30px 80px #0a1e1866}@keyframes cmp-rise{0%{opacity:0;transform:translateY(16px)scale(.98)}}.cmp-head{color:#f6f1e6;background:linear-gradient(135deg,#123d31,#1d5443);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px 14px;display:flex}.cmp-eyebrow{color:#e9cf9a;letter-spacing:1.3px;text-transform:uppercase;margin:0 0 2px;font-size:11px;font-weight:700}.cmp-head h2{color:#fff;margin:0;font:700 24px/1.2 Playfair Display,Georgia,serif}.cmp-close{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:22px;line-height:1;display:grid}.cmp-close:hover{background:#ffffff2b}.cmp-pickers{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;padding:16px 22px 6px;display:grid}.cmp-pick{gap:4px;min-width:0;display:grid}.cmp-pick small{color:#74817a;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.cmp-pick select{border:2px solid var(--c,#214b39);color:#202d29;cursor:pointer;background:#fff;border-radius:12px;width:100%;min-width:0;height:44px;padding:0 12px;font:700 14px DM Sans,sans-serif}.cmp-swap{color:#214b39;cursor:pointer;background:#fff;border:1px solid #dfe8da;border-radius:50%;width:40px;height:40px;margin-bottom:2px;font-size:18px;transition:transform .25s,background .2s}.cmp-swap:hover{background:#f0f5ec;transform:rotate(180deg)}.cmp-prefs{padding:8px 22px 12px}.cmp-prefs>p{color:#4f5f55;margin:0 0 8px;font-size:13.5px}.cmp-prefs>p b{color:#202d29}.cmp-chips{flex-wrap:wrap;gap:6px;display:flex}.cmp-chips button{color:#34463d;cursor:pointer;background:#fff;border:1px solid #dfe8da;border-radius:99px;padding:7px 13px;font:700 12.5px DM Sans,sans-serif;transition:background .15s,border-color .15s}.cmp-chips button[aria-pressed=true]{color:#d9f17e;background:#173f37;border-color:#173f37}.cmp-uni{background:#fff;border:1px solid #dfe8da;border-radius:10px;max-width:100%;height:38px;margin-top:10px;padding:0 10px;font:600 13px DM Sans,sans-serif}.cmp-verdict{background:#f3efe4;border-radius:14px;align-items:flex-start;gap:12px;margin-top:12px;padding:12px 14px;display:flex}.cmp-verdict.has-best{background:#eef6d6;box-shadow:inset 0 0 0 1px #c9e07a}.cmp-verdict span{font-size:22px;line-height:1.2}.cmp-verdict p{color:#202d29;margin:0;font-size:14.5px;font-weight:600;line-height:1.5}.cmp-note{color:#8a6d3b;margin:6px 0 0;font-size:12px}.cmp-table-wrap{border-top:1px solid #ece6d8;flex:1;min-height:0;overflow:auto}.cmp-table{border-collapse:collapse;width:100%;font-size:14px}.cmp-table thead th{z-index:1;border-bottom:3px solid var(--c,#ece6d8);color:#123d31;text-align:left;vertical-align:bottom;background:#fffdf7;padding:12px 14px 10px;font:800 18px Manrope,sans-serif;position:sticky;top:0}.cmp-table thead th small{color:#74817a;text-overflow:ellipsis;white-space:nowrap;font:600 12px DM Sans,sans-serif;display:block;overflow:hidden}.cmp-table thead th em{color:#3c5a10;background:#eef6d6;border-radius:99px;margin-top:4px;padding:1px 8px;font:700 11px DM Sans,sans-serif;display:inline-block}.cmp-table thead th:first-child{border-bottom-color:#ece6d8;width:34%}.cmp-group th{color:#9a7445;letter-spacing:.1em;text-align:left;text-transform:uppercase;padding:14px 14px 6px;font-size:11px;font-weight:800}.cmp-table tbody th[scope=row]{color:#34463d;text-align:left;padding:9px 14px;font-weight:600}.cmp-table td{padding:9px 14px;position:relative}.cmp-table tbody tr:not(.cmp-group){border-top:1px solid #f0ebdf}.cmp-table tr.is-priority th[scope=row]{color:#123d31;box-shadow:inset 3px 0 #c29450}.cmp-table td b{font-weight:800}.cmp-table td small{color:#8a968f;font-size:11.5px;display:block}.cmp-table td.is-win{background:#f1f8e3}.cmp-table td.is-win b{color:#24602f}.cmp-table td i{color:#fff;vertical-align:1px;background:#2d7a3a;border-radius:50%;place-items:center;width:18px;height:18px;margin-left:6px;font-size:11px;font-style:normal;font-weight:800;display:inline-grid}.cmp-score{border-radius:8px;place-items:center;min-width:30px;height:24px;padding:0 6px;display:inline-grid}.cmp-none{color:#a3ada7;font-size:12.5px}.cmp-sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cmp-foot{border-top:1px solid #ece6d8;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 22px 16px;display:flex}.cmp-foot p{color:#74817a;flex:320px;margin:0;font-size:12px;line-height:1.5}.cmp-foot div{flex-wrap:wrap;gap:8px;display:flex}.cmp-foot button{color:#173f37;cursor:pointer;background:#fff;border:1px solid #173f37;border-radius:99px;padding:9px 14px;font:700 13px DM Sans,sans-serif}.cmp-foot button:hover{color:#d9f17e;background:#173f37}.compare-button{white-space:nowrap}.pc-compare{width:100%;color:inherit;cursor:pointer;background:#fff2;border:1px solid #fff5;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;font:700 13.5px DM Sans,sans-serif;transition:background .15s;display:flex}.pc-compare:hover{background:#ffffff38}.map-toolbar .district-controls{flex-wrap:wrap}@media (width<=640px){.cmp-backdrop{place-items:stretch stretch;padding:0}.cmp{border-radius:0;max-height:100dvh;display:block;overflow-y:auto}.cmp-head{z-index:2;position:sticky;top:0}.cmp-table-wrap{overflow:visible}.cmp-table{table-layout:fixed}.cmp-table thead th{top:62px}.cmp-table thead th small{white-space:normal}.cmp-head{padding:14px 16px 12px}.cmp-head h2{font-size:20px}.cmp-pickers{grid-template-columns:1fr;padding:12px 16px 4px}.cmp-swap{justify-self:center;margin:0;transform:rotate(90deg)}.cmp-swap:hover{transform:rotate(270deg)}.cmp-prefs{padding:8px 16px 10px}.cmp-table{font-size:13px}.cmp-table thead th{padding:10px 8px 8px;font-size:15px}.cmp-table thead th:first-child{width:36%}.cmp-table tbody th[scope=row],.cmp-table td{padding:8px}.cmp-table td i{width:16px;height:16px;margin-left:3px}.cmp-foot{padding:10px 16px 14px}}@media (prefers-reduced-motion:reduce){.cmp,.cmp-backdrop{animation:none}}.map-toolbar .tour-button.compare-button{color:#d9f17e;background:#173f37}.map-toolbar .tour-button.compare-button:hover{background:#245b48}.cmp-about{color:#74817a;gap:2px;margin:8px 0 0;padding:0;font-size:12px;line-height:1.45;list-style:none;display:grid}.cmp-about b{color:#4f5f55;font-weight:700}:root{color:#243b31;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;background:#f1f5ef;font-family:DM Sans,Arial,sans-serif;font-weight:400}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{background:#f1f5ef;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #d4a94f}.district-page{width:100%;max-width:1900px;margin:0 auto;padding:clamp(16px,2.5vw,36px)}.page-header{justify-content:space-between;align-items:center;gap:24px;margin:0 0 24px;animation:.55s both header-in;display:flex}.page-header h1{color:#1d4938;letter-spacing:-.055em;margin:2px 0 8px;font-family:Manrope,Arial,sans-serif;font-size:clamp(1.9rem,3vw,2.8rem);font-weight:800;line-height:1.12}.page-description{color:#6c7e70;max-width:680px;margin:0;font-size:.98rem;line-height:1.6}.eyebrow{color:#62816b;letter-spacing:.16em;text-transform:uppercase;margin:0 0 8px;font-size:.68rem;font-weight:800}.header-stamp{color:#57765f;align-items:center;gap:10px;display:flex}.header-stamp>span{color:#28533e;border:1px solid #cddbc9;border-radius:50%;place-items:center;width:50px;height:50px;font-family:Georgia,serif;font-size:1.5rem;display:grid}.header-stamp small{letter-spacing:.13em;font-size:.6rem;font-weight:800;line-height:1.5}.district-layout{grid-template-columns:minmax(0,1.55fr) minmax(360px,.82fr);align-items:start;gap:20px;display:grid}.map-card,.profile-card{background:#fffefa;border:1px solid #e0e8db;border-radius:22px;min-width:0;overflow:hidden;box-shadow:0 14px 42px #2a493113}.map-card{padding:clamp(14px,1.5vw,22px);animation:.6s both rise-in}.map-topline{justify-content:space-between;align-items:center;gap:14px;margin:2px 2px 16px;display:flex}.map-topline .eyebrow{margin-bottom:5px}.map-topline h2{color:#214c39;letter-spacing:-.035em;margin:0;font-family:Manrope,sans-serif;font-size:1.28rem}.map-subtitle{color:#819080;margin:5px 0 0;font-size:.82rem;line-height:1.5}.map-live{color:#54705a;white-space:nowrap;background:#f7f9f1;border:1px solid #dfe9da;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:.7rem;font-weight:700;display:inline-flex}.map-live i{background:#65a779;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e5f0df}.district-map{isolation:isolate;background:#d7ece6;border:1px solid #dbe4d4;border-radius:16px;width:100%;height:min(72vh,820px);min-height:500px;animation:.8s cubic-bezier(.2,.8,.2,1) both map-reveal;position:relative;overflow:hidden}.district-map-canvas{width:100%;height:100%;position:absolute;inset:0}.district-map .maplibregl-map{width:100%;height:100%;font-family:DM Sans,Arial,sans-serif}.district-map .maplibregl-canvas{outline:none}.district-map .maplibregl-ctrl-top-right{top:12px;right:12px}.district-map .maplibregl-ctrl-group{border:1px solid #d9e2d4;border-radius:10px;overflow:hidden;box-shadow:0 4px 14px #2b49301f}.district-map .maplibregl-ctrl-group button{background-color:#fffef8;width:31px;height:31px}.district-map .maplibregl-ctrl-group button:hover{background-color:#edf4e7}.district-map .maplibregl-ctrl-attrib{border-radius:7px 0 0;font-size:9px}.map-compass{z-index:2;color:#54715b;pointer-events:none;background:#fffef0e8;border:1px solid #e0e8d9;border-radius:8px;align-items:center;gap:4px;padding:7px 9px;font-size:.62rem;font-weight:800;display:flex;position:absolute;top:14px;left:14px}.map-compass span{font-size:.9rem}.map-legend{color:#687968;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:16px 3px 3px;font-size:.72rem;display:flex}.map-legend>span{align-items:center;gap:7px;display:inline-flex}.legend-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.district-dot{background:#b4cba7;border:1px solid #8da987}.stop-dot{background:#fff;border:2px solid #bd6b62}.legend-line{border-radius:9px;width:18px;height:3px;display:inline-block}.red-line{background:#d43c48}.green-line{background:#27895b}.map-footnote{color:#9aa494;margin:9px 3px 0;font-size:.65rem;line-height:1.5}.profile-card{animation:.42s both profile-in}.profile-banner{color:#fffdf3;background:#214b39;padding:24px 24px 26px;position:relative;overflow:hidden}.profile-banner:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:210px;height:210px;position:absolute;bottom:-92px;right:-32px}.profile-banner-top{z-index:1;justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.profile-kicker{color:#c2d4bc;letter-spacing:.16em;font-size:.64rem;font-weight:800}.district-pill{color:#f8e8b8;background:#ffffff0d;border:1px solid #ffffff38;border-radius:11px;place-items:center;min-width:47px;min-height:40px;padding:7px 12px;font-family:Manrope,sans-serif;font-size:.96rem;font-weight:800;display:inline-grid}.profile-banner h2{z-index:1;color:#fffdf3;letter-spacing:-.045em;margin:17px 0 8px;font-family:Manrope,sans-serif;font-size:clamp(1.45rem,2vw,1.9rem);font-weight:800;line-height:1.2;position:relative}.profile-banner>p{z-index:1;color:#d1dfce;max-width:300px;margin:0;font-size:.8rem;line-height:1.55;position:relative}.banner-decoration{color:#ffffff0b;pointer-events:none;font-family:Georgia,serif;font-size:13rem;font-weight:700;line-height:1;position:absolute;bottom:-48px;right:12px}.profile-body{padding:19px 22px 18px}.district-navigation{border-bottom:1px solid #e9ede4;justify-content:space-between;align-items:center;gap:8px;margin:0 0 22px;padding-bottom:18px;display:flex}.district-navigation button{color:#41644b;background:#f7f8f0;border:1px solid #dce6d7;border-radius:9px;align-items:center;gap:7px;min-height:35px;padding:8px 11px;font-size:.72rem;font-weight:700;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.district-navigation button:hover{background:#edf4e8;border-color:#a8c2a4;transform:translateY(-1px)}.district-navigation button span{font-size:1rem}.district-navigation>span{color:#839080;white-space:nowrap;align-items:center;gap:7px;font-size:.7rem;font-weight:700;display:inline-flex}.district-navigation>span i{background:#b7c7af;border-radius:50%;width:4px;height:4px}.profile-section{margin-top:23px}.profile-section:first-of-type{margin-top:0}.section-title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.section-eyebrow{color:#91a18c;letter-spacing:.15em;margin:0 0 4px;font-size:.58rem;font-weight:800}.section-title-row h3{color:#2c503b;letter-spacing:-.025em;margin:0;font-family:Manrope,sans-serif;font-size:1.05rem;font-weight:800}.section-icon{color:#658060;background:#edf3e6;border-radius:10px;place-items:center;width:32px;height:32px;font-size:1rem;font-weight:800;display:grid}.section-description{color:#8a9685;margin:0 0 12px;font-size:.72rem;line-height:1.55}.rent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.rent-tile{background:#f8f8ef;border:1px solid #e2e9d9;border-radius:12px;min-width:0;padding:13px}.rent-tile span{color:#7d8b77;font-size:.68rem;line-height:1.4;display:block}.rent-tile strong{color:#2d6748;letter-spacing:-.04em;overflow-wrap:anywhere;margin:7px 0 3px;font-family:Manrope,sans-serif;font-size:clamp(.9rem,1.5vw,1.15rem);font-weight:800;display:block}.rent-tile small{color:#9ba592;font-size:.62rem}.empty-note{color:#839080;background:#f8f8f1;border-radius:10px;margin:0;padding:12px;font-size:.76rem;line-height:1.55}.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.amenity-tile{background:#fffefa;border:1px solid #e8ede3;border-radius:11px;grid-template-rows:auto auto;grid-template-columns:29px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;padding:10px;transition:background .18s,transform .18s;display:grid}.amenity-tile:hover{background:#f7f9f0;transform:translateY(-1px)}.amenity-icon{background:#f0f4e9;border-radius:9px;grid-row:1/span 2;place-items:center;width:29px;height:29px;font-size:.9rem;display:grid}.amenity-label{color:#7e8a79;min-width:0;font-size:.65rem;line-height:1.3}.amenity-tile strong{color:#355640;overflow-wrap:anywhere;min-width:0;margin-top:3px;font-size:.84rem;font-weight:800}.place-count{color:#698165;white-space:nowrap;background:#f0f4e8;border-radius:999px;padding:6px 9px;font-size:.64rem;font-weight:700}.places-list{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.place-card{min-width:0;animation:.35s both place-in;animation-delay:calc(var(--place-index,0) * 55ms);background:#fffefa;border:1px solid #e6ebdf;border-radius:12px;grid-template-columns:94px minmax(0,1fr);transition:transform .18s,box-shadow .18s;display:grid;overflow:hidden}.place-card:hover{transform:translateY(-2px);box-shadow:0 7px 18px #2b493012}.place-image{object-fit:cover;background:#e9eee1;width:94px;height:100%;min-height:95px;display:block}.place-image-fallback{color:#789073;background:linear-gradient(145deg,#e4ead7,#d4e5dc);place-items:center;display:grid}.place-image-fallback span{font-family:Georgia,serif;font-size:2rem}.place-content{min-width:0;padding:12px}.place-content h4{color:#355640;margin:0 0 5px;font-family:Manrope,sans-serif;font-size:.81rem;font-weight:800;line-height:1.35}.place-content p{color:#7e8b7b;margin:0;font-size:.69rem;line-height:1.5}.profile-disclaimer{color:#9aa494;border-top:1px solid #edf0e9;margin:22px 0 0;padding-top:13px;font-size:.62rem;line-height:1.5}.landmark-marker{color:#f9e8b6;background:#315f45;border:2px solid #fffdf5;border-radius:50%;justify-content:center;align-items:center;width:31px;height:31px;padding:0;font-size:16px;transition:transform .2s,background .2s;display:flex;box-shadow:0 3px 10px #223e2a40}.landmark-marker:hover,.landmark-marker:focus-visible{background:#193f2c;transform:scale(1.15)}.maplibregl-popup-content{border-radius:12px;padding:13px;box-shadow:0 8px 26px #193d2c24}.maplibregl-popup-close-button{color:#214b39;padding:4px 8px;font-size:18px}.landmark-popup{color:#243b31;width:220px;font-family:DM Sans,Arial,sans-serif}.landmark-popup-image{object-fit:cover;background:#edf2e7;border-radius:8px;width:100%;height:120px;margin-bottom:9px;display:block}.landmark-popup h3{color:#214b39;margin:0 0 6px;font-size:15px;line-height:1.4}.landmark-popup p{color:#718071;margin:0 0 9px;font-size:12px;line-height:1.5}.landmark-popup a{color:#2f7650;font-size:11px;font-weight:700;text-decoration:none}.landmark-popup a:hover{text-decoration:underline}@keyframes header-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes map-reveal{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}@keyframes profile-in{0%{opacity:.4;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes place-in{0%{opacity:0;transform:translate(7px)}to{opacity:1;transform:translate(0)}}@media (width<=1100px){.district-layout{grid-template-columns:minmax(0,1fr)}.district-map{height:62vh;min-height:430px;max-height:720px}.profile-card{max-width:none}.amenities-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=650px){.district-page{padding:12px}.page-header{align-items:flex-start;margin-bottom:17px}.header-stamp{display:none}.page-header h1{font-size:1.85rem}.page-description{font-size:.86rem}.district-layout{gap:14px}.map-card{border-radius:16px;padding:11px}.map-topline{align-items:flex-start}.map-live{padding:7px 8px;font-size:.62rem}.district-map{border-radius:12px;height:430px;min-height:360px}.map-legend{gap:9px 12px;font-size:.65rem}.profile-banner{padding:20px 18px 22px}.profile-body{padding:16px}.profile-banner h2{font-size:1.55rem}.amenities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rent-grid{grid-template-columns:1fr}.place-card{grid-template-columns:82px minmax(0,1fr)}.place-image{width:82px;min-height:90px}.place-content{padding:10px}.district-navigation button{padding:8px;font-size:.67rem}.district-controls{gap:6px}.profile-tabs button{padding:8px 7px;font-size:.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.district-controls{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;display:flex}.seg-toggle{background:#fffefa;border:1px solid #dfe8da;border-radius:999px;gap:2px;padding:3px;display:inline-flex}.seg-toggle button{color:#4f6c57;background:0 0;border:0;border-radius:999px;padding:6px 13px;font-size:.76rem;font-weight:700}.seg-toggle button[aria-pressed=true]{color:#fffdf3;background:#214b39}.profile-section .seg-toggle{margin-bottom:10px}.tour-button{color:#fff;background:#d94351;border:0;border-radius:10px;padding:8px 14px;font-size:.76rem;font-weight:800}.tour-button[aria-pressed=true]{background:#214b39}.luas-toggle{color:#4f6c57;background:#fffefa;border:1px solid #dfe8da;border-radius:999px;align-items:center;gap:5px;padding:7px 12px;font-size:.76rem;font-weight:700;display:inline-flex}.luas-toggle i{border-radius:3px;width:14px;height:3px;display:inline-block}.luas-toggle[aria-pressed=false]{opacity:.5}.district-chips{scrollbar-width:thin;gap:6px;margin:0 0 18px;padding-bottom:3px;display:flex;overflow-x:auto}.district-chips button,.district-chips .chip-soon{color:#2c503b;background:#fffefa;border:1px solid #dce6d7;border-radius:9px;flex:none;padding:6px 11px;font-family:Manrope,sans-serif;font-size:.8rem;font-weight:800}.district-chips button[aria-pressed=true]{color:#fff}.district-chips button.is-dim{opacity:.35}.district-chips .chip-soon{color:#a3ad9f;cursor:default;border-style:dashed}.eircode-line{margin-top:10px!important;font-size:.7rem!important}.eircode-line b{color:#fffdf3;background:#ffffff29;border-radius:5px;padding:1px 6px}.profile-tabs{scrollbar-width:none;border-bottom:1px solid #e9ede4;gap:2px;margin:-6px 0 18px;display:flex;overflow-x:auto}.profile-tabs button{color:#869381;background:0 0;border:0;border-bottom:2.5px solid #0000;flex:none;padding:9px 9px 8px;font-size:.76rem;font-weight:800}button.place-card{text-align:left;width:100%;font:inherit;color:inherit;padding:0}.place-card.is-active{border-color:#c9d9bf;transform:translateY(-2px);box-shadow:0 7px 18px #2b49301a}.place-image-fallback svg{width:30px;height:30px}.place-nomap{color:#b07a3c!important;margin-top:5px!important;font-size:.64rem!important}.top-gap{margin-top:10px!important}.rtb-areas{border-top:1px solid #edf0e9;margin-top:10px}.rtb-areas>div{color:#5e7062;border-bottom:1px dotted #e3e8dc;justify-content:space-between;gap:10px;padding:6px 2px;font-size:.74rem;display:flex}.rtb-areas b{color:#2d6748;font-variant-numeric:tabular-nums}button.amenity-tile{font:inherit;text-align:left;cursor:pointer}button.amenity-tile:disabled{cursor:default}.amenity-tile.is-off{opacity:.4}.amenity-icon svg,.section-icon svg{width:17px;height:17px}.uni-select{color:#2c503b;background:#f8f8ef;border:1px solid #dce6d7;border-radius:10px;width:100%;margin-top:6px;padding:9px 11px;font-weight:700}.mode-chain{flex-wrap:wrap;align-items:center;gap:4px;margin-top:10px;display:flex}.mode-chain span{color:#41644b;background:#fffefa;border:1px solid #dce6d7;border-radius:999px;padding:3px 9px;font-size:.66rem;font-weight:800}.mode-chain span+span:before{content:"›";color:#a3ad9f;margin-right:6px}.stop-chips{flex-wrap:wrap;gap:6px;display:flex}.stop-chips button{color:#355640;background:#fffefa;border:1px solid #dce6d7;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.stop-chips i{border-radius:50%;width:8px;height:8px}.dm-code{color:#fff;background:#789073;border:2px solid #fffefa;border-radius:7px;padding:3px 7px;font-family:Manrope,sans-serif;font-size:12px;font-weight:800;line-height:1.1;transition:transform .2s;box-shadow:0 2px 6px #1e3c2840}.dm-code.selected{transform:scale(1.25)}.dm-code.inactive{color:#8a9685;box-shadow:none;cursor:default;background:#fffefabf;border:0;font-size:10px}.dm-area{color:#2c503b;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 6px #fff;pointer-events:none;font-size:11px;font-weight:800}.district-map.z-low .dm-area{display:none}.dm-place{background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;padding:0;display:flex}.dm-pin{background:#fffefa;border:2.5px solid;border-radius:50%;place-items:center;width:34px;height:34px;transition:transform .18s;display:grid;box-shadow:0 3px 9px #223e2a47}.dm-place-name{color:#214b39;text-align:center;text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 5px #fff;max-width:120px;font-size:10.5px;font-weight:800;line-height:1.15}.dm-place:hover .dm-pin,.dm-place.on .dm-pin{transform:scale(1.2)}.dm-place.small .dm-pin{border-width:2px;width:24px;height:24px}.dm-place.small .dm-pin svg{width:13px;height:13px}.dm-place.small .dm-place-name{display:none}.stop-popup{color:#243b31;width:230px;font-family:DM Sans,Arial,sans-serif}.stop-popup h3{color:#214b39;margin:6px 0 4px;font-family:Manrope,sans-serif;font-size:16px}.stop-line{color:#fff;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800;display:inline-block}.stop-line.red{background:#d71920}.stop-line.green{background:#008531}.stop-tags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.stop-tags span{color:#4f6c57;border:1px solid #dce6d7;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:700}.stop-heading{color:#91a18c;letter-spacing:.12em;text-transform:uppercase;margin:10px 0 2px;font-size:10px;font-weight:800}.stop-popup ul{margin:3px 0 0;padding-left:16px;font-size:12px}.stop-open{color:#fff;border:0;border-radius:9px;width:100%;margin-top:10px;padding:7px 10px;font-size:12px;font-weight:800}.amenity-hover .maplibregl-popup-content{padding:6px 10px;font-size:12px;font-weight:700}.district-map .heat-legend{display:none}.legend-dot.legend-bus{box-sizing:border-box;background:#f5b400;border:2px solid #173f37;width:11px;height:11px}.dm-code b{font-variant-numeric:tabular-nums;opacity:.95;border-left:1px solid;margin-left:5px;padding-left:5px}.safety-key{z-index:3;color:#4f6c57;background:#fffefaf5;border:1px solid #e0e8d9;border-radius:11px;flex-direction:column;gap:6px;width:250px;max-width:calc(100% - 24px);padding:11px 13px;font-size:.68rem;display:flex;position:absolute;bottom:28px;left:12px;box-shadow:0 4px 14px #2b493024}.safety-key>b{color:#214b39;font-size:.8rem}.safety-key-bar{border-radius:5px;height:10px;display:block;position:relative}.safety-key-bar i{background:#173f32;width:2px;height:16px;margin-left:-1px;position:absolute;top:-3px}.safety-key-ends{justify-content:space-between;gap:6px;font-size:.6rem;font-weight:700;display:flex}.safety-key ul{gap:3px;margin:2px 0 0;padding:0;list-style:none;display:grid}.safety-key li{color:#2f4a3a;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:7px;font-weight:700;display:grid}.safety-key li i{border-radius:3px;width:14px;height:10px}.safety-key li small{color:#8a9685;font-variant-numeric:tabular-nums;font-weight:700}.safety-key>small{color:#8a9685;font-size:.6rem;line-height:1.4}@media (width<=650px){.safety-key{width:200px;padding:8px 10px}.safety-key ul{display:none}}.safe-pop{align-items:center;gap:9px;display:flex}.safe-pop-score{border-radius:9px;place-items:center;min-width:34px;height:34px;font-size:14px;font-weight:800;display:grid}.safe-pop small{color:#6c7d6c}.safe-pop-check{color:#9a4a12;margin:6px 0 0;font-size:11px;font-weight:700}.safe-pop-facts{color:#6c7d6c;margin:5px 0 0;font-size:11px}.banner-safety{color:#fffdf3;font:inherit;cursor:pointer;background:#fffefa24;border:0;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:5px 12px 5px 5px;font-size:.78rem;font-weight:700;display:inline-flex}.banner-safety b{border-radius:999px;place-items:center;min-width:32px;height:26px;padding:0 6px;font-size:.85rem;display:grid}.banner-safety:hover{background:#fffefa3d}.safety-verdict{border-radius:14px;align-items:center;gap:14px;padding:14px;display:flex}.safety-verdict strong{letter-spacing:-.03em;border-radius:16px;place-items:center;min-width:64px;height:64px;font-size:1.7rem;font-weight:800;display:grid}.safety-verdict div{flex-direction:column;gap:3px;display:flex}.safety-verdict b{color:#214b39;font-size:1rem}.safety-verdict span{color:#4f6c57;font-size:.76rem;line-height:1.45}.safety-check{color:#7a4210;background:#fff6e8;border:1px solid #f1d2a8;border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:.74rem;line-height:1.45}.safety-rates{border-collapse:collapse;width:100%;font-size:.74rem}.safety-rates th{color:#8a9685;letter-spacing:.06em;text-align:right;text-transform:uppercase;padding:0 4px 6px;font-size:.62rem;font-weight:800}.safety-rates th:first-child{text-align:left}.safety-rates td{color:#4f6c57;text-align:right;font-variant-numeric:tabular-nums;border-top:1px dotted #e3e8dc;padding:8px 4px}.safety-rates td:first-child{color:#214b39;text-align:left;font-weight:700}.safety-rates td small{color:#8a9685;font-weight:600;display:block}.safety-rates .ratio{font-weight:800}.safety-hoods b em{color:#9a4a12;margin-left:6px;font-style:normal}.safety-stations{flex-direction:column;gap:6px;display:flex}.safety-stations div{color:#4f6c57;grid-template-columns:minmax(0,1fr) 58px 40px;align-items:center;gap:8px;font-size:.74rem;display:grid}.safety-stations span.bar{background:#e6ece1;border-radius:3px;height:6px;overflow:hidden}.safety-stations span.bar i{background:#214b39;height:100%;display:block}.safety-stations b{color:#214b39;text-align:right;font-variant-numeric:tabular-nums}.safety-key.in-tab{width:auto;max-width:none;box-shadow:none;background:#fffefa;margin-bottom:18px;position:static}@media (width<=650px){.safety-key.in-tab ul{display:grid}}.luas-toggle.layer-toggle i.dot-safety{background:linear-gradient(135deg,#b23a2f 0%,#f4cf62 50%,#25704a 100%)}@media (width>=1101px){.district-layout{align-items:start}.map-card{position:sticky;top:16px}.district-map{height:calc(100vh - 230px);min-height:420px;max-height:none}.profile-card{flex-direction:column;max-height:calc(100vh - 32px);display:flex;position:sticky;top:16px}.profile-card .profile-banner{flex:none}.profile-card .profile-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c9d6c2 transparent;flex:auto;min-height:0;overflow-y:auto}}.safety-scale{border-radius:5px;height:10px;margin:14px 0 6px;position:relative}.safety-scale-fill{border-radius:5px;position:absolute;inset:0}.safety-scale-avg{background:#173f32;width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.safety-scale-dot{border:3px solid #fffefa;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;position:absolute;top:50%;box-shadow:0 1px 4px #173f3259}.safety-scale-labels{color:#6c7d6c;grid-template-columns:1fr auto 1fr;gap:8px;font-size:.66rem;font-weight:700;display:grid}.safety-scale-labels span:nth-child(2){text-align:center}.safety-scale-labels span:last-child{text-align:right}.safety-diverge{--name-col:minmax(0, 10.5rem);flex-direction:column;display:flex}.safety-diverge-head,.safety-diverge-row{grid-template-columns:var(--name-col) minmax(0, 1fr) 2.2rem;align-items:center;column-gap:10px;display:grid}.safety-diverge-head{color:#8a9685;letter-spacing:.04em;text-transform:uppercase;padding-bottom:6px;font-size:.6rem;font-weight:800}.safety-diverge-ends{grid-template-columns:1fr auto 1fr;gap:4px;display:grid}.safety-diverge-ends span:nth-child(2){color:#173f32;text-align:center}.safety-diverge-ends span:last-child{text-align:right}.safety-diverge-row{border-top:1px dotted #e3e8dc;min-height:30px}.safety-diverge-name{color:#214b39;align-items:center;gap:5px;min-width:0;font-size:.74rem;font-weight:700;display:flex}.safety-diverge-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.safety-diverge-name em{color:#9a4a12;flex:none;font-size:.72rem;font-style:normal}.safety-diverge-track{align-self:stretch;position:relative}.safety-diverge-track:before{content:"";background:#173f32;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%}.safety-diverge-head .safety-diverge-ends{position:relative}.safety-diverge-track i{border-radius:3px;min-width:3px;height:12px;margin-top:-6px;position:absolute;top:50%}.safety-diverge-row b{color:#214b39;text-align:right;font-variant-numeric:tabular-nums;font-size:.78rem}.safety-diverge-note{color:#9a4a12;margin:10px 0 0;font-size:.68rem;font-weight:700}.safety-diverge-ends span{white-space:nowrap}@media (width<=650px){.safety-diverge{--name-col:minmax(0, 7rem)}.safety-diverge-head{letter-spacing:0;font-size:.52rem}}.chain-marker{color:#fff;white-space:nowrap;cursor:pointer;border:2px solid #fffefa;border-radius:999px;align-items:center;gap:4px;max-width:120px;padding:4px 8px;font-size:11px;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 3px 8px #141e1959}.chain-marker img{object-fit:contain;background:#fff;border-radius:4px;width:18px;height:18px;display:none}.chain-marker.has-logo img{display:block}.chain-marker:after{content:"";border:5px solid #0000;border-top-color:#fffefa;border-bottom:0;margin-left:-5px;position:absolute;bottom:-6px;left:50%}.chain-popup{flex-direction:column;gap:2px;font-size:12px;display:flex}.chain-popup b{color:#214b39;font-size:13px}.chain-popup span{color:#6c7d6c}.chain-picker{flex-wrap:wrap;gap:7px;display:flex}.chain-picker button{color:#2f4a3a;font:inherit;cursor:pointer;background:#fffefa;border:1px solid #dce6d7;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:.74rem;font-weight:700;display:inline-flex}.chain-picker button i{border-radius:50%;width:10px;height:10px}.chain-picker button small{color:#8a9685;font-weight:700}.chain-picker button[aria-pressed=true]{color:#fff;border-color:#0000}.chain-picker button[aria-pressed=true] small{color:#ffffffd9}.chain-picker button[aria-pressed=true] i{background:#fff!important}.chain-picker button:disabled{opacity:.4;cursor:default}.chain-result{color:#4f6c57;background:#f3f6ef;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:.74rem;line-height:1.45}.chain-result b{color:#214b39}.chain-clear{color:#214b39;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:6px;padding:0;font-weight:800;text-decoration:underline}div.amenity-tile:hover{background:#fffefa;transform:none}.results-container{max-width:820px}@media (width>=1001px){.questionnaire-container.results-container{max-width:820px;margin:0 auto;display:block}.results-container form{display:block}}.results-status{color:#617067;text-align:center;background:#fffdf7;border:1px solid #e7dfd0;border-radius:12px;flex-direction:column;align-items:center;gap:18px;padding:36px 24px;line-height:1.7;display:flex}.results-error{color:#8a3b2b}.results-spinner{border:3px solid #e3ddcf;border-top-color:#173f32;border-radius:50%;width:34px;height:34px;animation:.9s linear infinite results-spin}@keyframes results-spin{to{transform:rotate(360deg)}}.results-warning{color:#6d4c27;background:#fbf3e6;border-left:4px solid #a8753f;border-radius:6px;margin:0 0 24px;padding:16px 18px;font-size:14px;line-height:1.7}.results-list{flex-direction:column;gap:24px;display:flex}.result-card{color:#173f32;background:#fffdf7;border:1px solid #e7dfd0;border-radius:12px;padding:26px;font-size:14px;line-height:1.75}.result-card h3{margin:22px 0 6px;font-family:Georgia,serif;font-size:18px}.result-card p{color:#4d5e53;margin:0}.result-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.result-header h2{margin:4px 0 0;font-family:Georgia,serif;font-size:30px;line-height:1.2}.result-rank{color:#a8753f;letter-spacing:1px;font-size:12px;font-weight:700}.result-lea{color:#8a9d7a;font-size:20px;font-weight:400}.result-score{color:#fffdf7;background:#173f32;border-radius:10px;flex-direction:column;flex:none;align-items:center;padding:10px 16px;line-height:1.2;display:flex}.result-score strong{font-family:Georgia,serif;font-size:24px}.result-score span{letter-spacing:1px;text-transform:uppercase;font-size:11px}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 16px;display:grid}.result-stats>div{background:#f4efe4;border-radius:8px;padding:12px 14px}.result-stats dt{color:#718075;letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700}.result-stats dd{margin:2px 0 0;font-size:16px;font-weight:600}.budget-tag{vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.budget-tag.within{color:#245b48;background:#dbe4d4}.budget-tag.above{color:#8a3b2b;background:#f6e1d6}.rent-note{color:#718075;margin-top:2px;font-size:12px;font-weight:400;display:block}.result-muted{color:#718075;font-weight:400}.result-why .why-list{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.why-row{background:#f4efe4;border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(0,1.3fr) minmax(170px,1fr);align-items:center;gap:16px;padding:10px 14px;display:grid}.why-factor,.why-value{flex-direction:column;line-height:1.4;display:flex}.why-factor strong{font-size:14px}.why-factor .result-muted{font-size:12px}.why-value{align-items:flex-start;gap:4px;font-size:13px;font-weight:600}.why-bar,.share-bar{background:#e2d9c6;border-radius:999px;height:8px;display:block;position:relative}.why-bar>span,.share-bar>span{background:#245b48;border-radius:999px;height:100%;display:block}.why-tag{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.why-tag.better{color:#245b48;background:#dbe4d4}.why-tag.average{color:#5f6f67;background:#ece6d8}.why-tag.worse{color:#8a3b2b;background:#f6e1d6}.why-compare{color:#4d5e53;gap:8px;margin:12px 0 4px;padding:0;list-style:none;display:grid}.why-compare li{align-items:center;gap:10px;line-height:1.5;display:flex}.why-rank{color:#fffdf7;background:#173f32;border-radius:6px;flex:none;padding:2px 8px;font-size:12px;font-weight:700}.about-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.about-tile{background:#f4efe4;border-radius:8px;flex-direction:column;gap:6px;padding:12px 14px;line-height:1.4;display:flex}.about-label{color:#718075;letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700}.about-tile strong{font-family:Georgia,serif;font-size:26px;line-height:1.1}.about-tile .result-muted{font-size:12px}.share-bar>i{background:#a8753f;border-radius:1px;width:2px;height:16px;margin-left:-1px;position:absolute;top:-4px}@media (width<=760px){.why-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 14px}.why-bar{grid-area:2/1/auto/-1}.about-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.result-safety .safety-stats{grid-template-columns:minmax(0,1fr);margin:10px 0 6px}.safety-tag{vertical-align:middle;border-radius:999px;margin-left:8px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.safety-tag.good{color:#245b48;background:#dbe4d4}.safety-tag.mid{color:#7a5a12;background:#f3e6c8}.safety-tag.low{color:#8a3b2b;background:#f6e1d6}.safety-areas{margin:6px 0 10px;padding:0;list-style:none}.safety-areas li{border-bottom:1px solid #e7dfd0;grid-template-columns:minmax(0,1fr) auto 72px;align-items:center;gap:10px;padding:6px 0;font-size:.92rem;display:grid}.safety-areas .safety-tag{text-align:center;margin-left:0}.safety-meter{background:#e7dfd0;border-radius:999px;height:5px;margin-top:8px;display:block;overflow:hidden}.safety-meter span{border-radius:999px;height:100%;display:block}.safety-meter .good{background:#4d8a5f}.safety-meter .mid{background:#c99a3a}.safety-meter .low{background:#c7684f}.result-safety details{margin-top:4px}.result-safety summary{color:#245b48;cursor:pointer;font-weight:600}.result-safety h4{color:#718075;letter-spacing:1px;text-transform:uppercase;margin:10px 0 0;font-size:11px;font-weight:700}.result-safety ul{color:#4d5e53;margin:4px 0 0;padding-left:20px}.heat-map-slot{min-height:450px;margin:14px 0 8px}.heat-map{margin:0}.heat-map-frame{position:relative}.heat-toggles{background:#ffffffeb;border-radius:999px;gap:2px;max-width:calc(100% - 64px);padding:3px;display:flex;position:absolute;top:10px;left:10px;box-shadow:0 2px 10px #173f322e}.heat-toggles button{color:#5f6f67;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 6px;font-size:12px;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.heat-toggles button[aria-checked=true]{color:#fff;background:#173f32}.heat-toggle-dot{color:#245b48;background:#e3ede6;border-radius:50%;place-items:center;width:16px;height:16px;display:grid}.heat-toggle-dot.names{background:linear-gradient(135deg,#e0694a,#f4cf62 50%,#5fae6b)}.heat-toggle-dot.homes{border-radius:5px 5px 5px 1px}.heat-toggle-dot svg{width:11px;height:11px}.heat-popup-address{color:#5f6f67;margin-top:4px;display:block}.heat-map-canvas{background:#eef0ea;border-radius:18px;height:360px;animation:.6s ease-out both heat-rise;overflow:hidden;box-shadow:0 1px 2px #173f3214,0 10px 28px -12px #173f3259}@keyframes heat-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.heat-map-canvas .maplibregl-ctrl-group{border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #173f322e}.heat-chip{color:#173f32;white-space:nowrap;opacity:0;cursor:default;background:#ffffffdb;border-radius:999px;align-items:center;gap:5px;padding:2px 7px 2px 2px;font-size:11px;font-weight:600;line-height:1;transition:opacity .5s,transform .25s,box-shadow .25s;display:inline-flex;box-shadow:0 1px 2px #173f321f,0 3px 8px -4px #173f3259}.heat-chip-leader{transform-origin:0;pointer-events:none;background:#173f328c;height:1.5px;position:absolute;top:50%;left:50%}.chips-ready .heat-chip{opacity:1}.heat-map-canvas:hover .heat-chip{opacity:.35}.heat-map-canvas:hover .heat-chip:hover{opacity:1}.heat-chip:hover{z-index:2;box-shadow:0 2px 4px #173f3229,0 8px 18px -6px #173f3273}.heat-chip span:first-of-type{color:#fff;text-shadow:0 1px 1px #0000004d;border-radius:999px;place-items:center;min-width:19px;height:17px;padding:0 3px;font-size:10px;font-weight:800;display:grid}.heat-legend{gap:6px;margin:34px 4px 0;font-size:12px;display:grid}.heat-bar{border-radius:999px;height:10px;position:relative;box-shadow:inset 0 0 0 1px #0000000f}.heat-bar-average{background:#173f3273;border-radius:2px;width:2px;position:absolute;top:-3px;bottom:-3px;left:50%}.heat-bar-marker{background:var(--c);border:3px solid #fff;border-radius:50%;width:16px;height:16px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #173f3266}.heat-bar-marker span{color:#fff;white-space:nowrap;background:#173f32;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.heat-ticks{color:#4d5e53;grid-template-columns:1fr auto 1fr;font-weight:600;display:grid}.heat-ticks span:last-child{text-align:right}.heat-note{color:#718075}.heat-popup-box .maplibregl-popup-content{border-radius:14px;padding:12px 14px;box-shadow:0 8px 24px #173f3238}.heat-popup{color:#173f32;font-size:13px;line-height:1.35}.heat-popup-head{align-items:center;gap:10px;display:flex}.heat-popup-head strong,.heat-popup-head small{display:block}.heat-popup-head small{color:#5f6f67}.heat-popup-score{color:#fff;text-shadow:0 1px 2px #00000059;border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-size:16px;font-weight:800;display:grid}.heat-popup ul{color:#4d5e53;border-top:1px solid #ece7dc;margin:8px 0 0;padding:8px 0 0;font-size:12px;list-style:none}@media (width<=520px){.heat-map-slot{min-height:390px}.heat-map-canvas{border-radius:14px;height:300px}}@media (prefers-reduced-motion:reduce){.heat-map-canvas{animation:none}}.heat-home-pin{color:#fff;cursor:pointer;transform-origin:bottom;background:#173f32;border:2px solid #fff;border-radius:8px 8px 8px 2px;place-items:center;width:26px;height:26px;padding:0;transition:transform .2s;display:grid;box-shadow:0 3px 8px #173f3266}.heat-home-pin:hover,.heat-home-pin:focus-visible{transform:scale(1.15)}.heat-home-pin svg{width:15px;height:15px}.heat-home-key{color:#fff;vertical-align:-3px;background:#173f32;border-radius:4px 4px 4px 1px;width:15px;height:15px;padding:2px;display:inline-grid}.heat-popup-link{color:#245b48;margin-top:6px;font-weight:700;display:inline-block}.result-homes{margin:8px 0 22px}.result-homes h4{color:#718075;letter-spacing:1px;text-transform:uppercase;margin:18px 0 8px;font-size:11px;font-weight:700}.result-homes h4 span{letter-spacing:0;text-transform:none;margin-left:6px;font-weight:600}.home-search{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:10px;display:grid}.home-search-link{color:#fff;background:linear-gradient(135deg,#1f5a45,#173f32);border-radius:12px;gap:2px;padding:12px 34px 12px 14px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:grid;position:relative;box-shadow:0 6px 16px -8px #173f3299}.home-search-link:hover{transform:translateY(-2px);box-shadow:0 10px 20px -8px #173f32b3}.home-search-link span{color:#d6e6dc;font-size:13px}.home-search-arrow{font-size:16px;position:absolute;top:12px;right:14px}.result-homes .home-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.home-card{background:#fffdf8;border:1px solid #ece5d6;border-radius:12px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 14px 10px 10px;display:grid}.home-icon{color:#245b48;background:#e3ede6;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.home-icon svg{width:20px;height:20px}.home-body{gap:2px;min-width:0;display:grid}.home-body strong{color:#173f32;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-body .result-muted{font-size:13px}.home-body .safety-tag{justify-self:start;margin:2px 0 0}.home-link{color:#245b48;white-space:nowrap;font-size:14px;font-weight:700}.home-link.muted{color:#9aa59d;font-weight:500}.home-more{color:#245b48;font:inherit;cursor:pointer;background:0 0;border:1px solid #c9d6cd;border-radius:999px;margin-top:10px;padding:6px 14px;font-weight:700}.home-credits{color:#8a958d;margin:10px 0 0;font-size:11px;line-height:1.45}.home-credits a{color:inherit}.home-note{color:#718075;margin:10px 0 0;font-size:12px}@media (width<=520px){.home-search{grid-template-columns:1fr}.home-card{grid-template-columns:36px minmax(0,1fr)}.home-link{grid-column:2}}.result-profile-link{color:#173f32;font:inherit;cursor:pointer;background:0 0;border:1px solid #173f32;border-radius:7px;align-items:center;gap:10px;margin-top:22px;padding:11px 16px;font-weight:600;display:inline-flex}.result-profile-link:hover{color:#fffdf7;background:#173f32}@media (width<=520px){.result-card{padding:19px}.result-stats{grid-template-columns:1fr}.result-header h2{font-size:24px}}.commute-controls{margin:24px 0}.results-updating{opacity:.5;transition:opacity .2s}.agencies{margin-top:28px}.agencies-panel{color:#173f32;background:#fffdf7;border:1px solid #e0d8c9;border-radius:12px;margin-top:14px;padding:20px;font-size:14px;line-height:1.6}.agencies-intro{color:#4f6158;margin:0 0 16px}.agent-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.agent-card{background:#fffdf7;border:1px solid #e0d8c9;border-radius:12px;flex-direction:column;gap:12px;padding:18px;transition:box-shadow .2s,transform .2s;display:flex}.agent-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #173f321a}.agent-top{align-items:center;gap:12px;display:flex}.agent-initial{color:#fffdf7;background:#173f32;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:18px;font-weight:700;display:grid}.agent-name{margin:0;font-size:16px;line-height:1.3}.agent-area{color:#2f5d50;background:#e8efe9;border-radius:20px;margin-top:4px;padding:1px 9px;font-size:12px;display:inline-block}.agent-address{color:#4f6158;margin:0;font-size:13px}.agent-bottom{border-top:1px solid #efe8da;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;display:flex}.agent-psra{color:#6b7c72;font-size:12px}.agent-link{color:#173f32;border:1px solid #173f32;border-radius:7px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}.agent-link:hover{color:#fffdf7;background:#173f32}.agencies-note{color:#6b7c72;margin:16px 0 0;font-size:12px}.compare-wrap{margin-top:28px}.compare{color:#173f32;background:#fffdf7;border:1px solid #e0d8c9;border-radius:12px;margin-top:14px;padding:22px}.compare-title{margin:0;font-size:22px}.compare-subtitle{color:#6b7c72;margin:4px 0 18px;font-size:14px}.compare-table{grid-template-columns:minmax(110px, .8fr) repeat(var(--areas), minmax(120px, 1fr));display:grid;overflow-x:auto}.compare-head{border-bottom:2px solid #173f32;flex-direction:column;gap:2px;padding:0 12px 12px;display:flex}.compare-head strong{font-size:18px}.compare-corner{border-bottom:2px solid #173f32}.compare-rank{color:#fffdf7;background:#173f32;border-radius:20px;align-self:flex-start;padding:1px 8px;font-size:12px;font-weight:700}.compare-sub{color:#6b7c72;font-size:12px}.compare-label,.compare-cell{border-bottom:1px solid #efe8da;padding:14px 12px}.compare-label{color:#4f6158;align-items:center;padding-left:0;font-size:13px;font-weight:600;display:flex}.compare-cell{flex-direction:column;gap:6px;display:flex}.compare-cell.best{background:#eef5f0}.compare-value{flex-wrap:wrap;align-items:center;gap:6px;font-size:15px;font-weight:700;display:flex}.compare-badge{color:#fff;background:#2f7d5b;border-radius:20px;padding:1px 7px;font-size:11px;font-weight:700}.compare-bar{background:#ece6da;border-radius:3px;height:6px;overflow:hidden}.compare-bar span{background:#b9c7c1;border-radius:3px;height:100%;display:block}.compare-cell.best .compare-bar span{background:#173f32}.compare-note{font-size:12px}.compare-note.ok{color:#2f7d5b}.compare-note.over{color:#a8753f}.compare-na{color:#9aa69f;font-size:13px}.share-results{margin:4px 0 18px}.share-buttons{gap:10px;display:flex}.share-button{color:#173f32;font:inherit;cursor:pointer;background:#fffdf7;border:1px solid #173f32;border-radius:20px;align-items:center;gap:7px;padding:9px 16px;font-size:14px;font-weight:600;display:inline-flex}.share-button:hover,.share-button[aria-expanded=true]{color:#fffdf7;background:#173f32}.share-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.share-menu-wrap{position:relative}.share-menu{z-index:20;background:#fffdf7;border:1px solid #e0d8c9;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;width:300px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #173f3226}.share-menu button,.share-menu a{color:#173f32;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:8px 10px;font-size:14px;text-decoration:none;display:flex}.share-menu button:hover,.share-menu a:hover{background:#f1ece2}.share-menu .share-wide{grid-column:1/-1}.share-badge{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:inline-flex}.share-results p{margin:8px 0 0;font-size:12px}.why-summary{gap:8px;margin:10px 0 4px;display:grid}.why-summary p{flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.why-summary-label{letter-spacing:.04em;text-transform:uppercase;margin-right:4px;font-size:12px;font-weight:800}.why-summary-label.better{color:#245b48}.why-summary-label.worse{color:#9a4330}.why-chip{border-radius:999px;padding:4px 11px;font-size:13px;font-weight:700}.why-chip.better{color:#1f5641;background:#dcebd6}.why-chip.worse{color:#8a3b2b;background:#f8e3d9}.why-intro{margin:10px 0 0}.why-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:14px 0 0;padding:0;list-style:none;display:grid}.why-card{background:#fffdf8;border:1px solid #e6dfcf;border-radius:16px;flex-direction:column;gap:8px;padding:16px 16px 14px;transition:box-shadow .18s,transform .18s;display:flex;position:relative;overflow:hidden}.why-card:before{content:"";background:#c9c1ae;width:4px;position:absolute;inset:0 auto 0 0}.why-card.better:before{background:#2f7a5a}.why-card.worse:before{background:#c4664b}.why-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #173f3217}.why-card-head{align-items:center;gap:10px;display:flex}.why-card-head strong{color:#173f32;flex:1;min-width:0;font-size:15px;line-height:1.25}.why-icon{color:#5f6f67;background:#ece6d8;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.why-card.better .why-icon{color:#1f5641;background:#dcebd6}.why-card.worse .why-icon{color:#8a3b2b;background:#f8e3d9}.why-icon .flow-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.why-importance{color:#7a857c;white-space:nowrap;flex-direction:column;align-items:flex-end;gap:3px;font-size:10.5px;font-weight:600;display:inline-flex}.why-dots{gap:3px;display:inline-flex}.why-dots i{background:#e2d9c6;border-radius:50%;width:7px;height:7px}.why-dots i.on{background:#173f32}.why-card-value{color:#173f32;font-variation-settings:"opsz" 36;margin:4px 0 0;font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:700;line-height:1.15}.why-card-compare{align-items:center;gap:6px;margin:0;font-size:13.5px;font-weight:700;display:flex}.why-card-compare.better{color:#245b48}.why-card-compare.worse{color:#9a4330}.why-card-compare.average{color:#6b766e}.why-card-compare span{font-size:10px}.why-meter{gap:5px;margin-top:4px;display:grid}.why-meter-label{color:#7a857c;justify-content:space-between;font-size:11.5px;font-weight:600;display:flex}.why-meter-label b{color:#173f32}.why-meter-bar{background:#ece6d8;border-radius:999px;height:6px;display:block;overflow:hidden}.why-meter-bar>span{border-radius:inherit;background:linear-gradient(90deg,#4f8f6f,#245b48);height:100%;display:block}.result-why .why-card .why-card-value{color:#173f32}.about-intro{margin:6px 0 0}.about-intro strong{color:#173f32;font-weight:700}.result-about .about-tiles{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-top:14px}.result-about .about-tile{background:#fffdf8;border:1px solid #e6dfcf;border-radius:16px;gap:10px;padding:16px 16px 14px;transition:box-shadow .18s,transform .18s}.result-about .about-tile:hover{transform:translateY(-2px);box-shadow:0 10px 24px #173f3217}.result-about .about-label{color:#5f6f67;letter-spacing:1.2px;align-items:center;gap:8px;font-size:11.5px;display:flex}.result-about .about-label .flow-icon{color:#173f32;fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;box-sizing:border-box;background:#ece6d8;border-radius:8px;width:26px;height:26px;padding:5px}.about-figure{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.result-about .about-figure strong{color:#173f32;font-variation-settings:"opsz" 48;font-family:Fraunces,Georgia,serif;font-size:32px;font-weight:700;line-height:1}.about-figure span{color:#5f6f67;font-size:13.5px;font-weight:600}.about-picto{grid-template-columns:repeat(10,1fr);gap:2px 3px;max-width:220px;display:grid}.about-picto svg{aspect-ratio:1;fill:#e2d9c6;width:100%}.about-picto svg.on{fill:#2f7a5a}.about-compare{border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:700}.about-compare.up{color:#1f5641;background:#dcebd6}.about-compare.down{color:#8a3b2b;background:#f8e3d9}.about-compare.same{color:#5f6f67;background:#ece6d8}.about-meaning{color:#173f32;border-top:1px dashed #e2d9c6;margin:0;padding-top:10px;font-size:14px;font-weight:600;line-height:1.45}.about-groups{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.about-groups small{color:#7a857c;letter-spacing:.06em;text-transform:uppercase;width:100%;font-size:11px;font-weight:700}.about-group{color:#4d5e53;background:#f1ece0;border-radius:999px;padding:3px 9px;font-size:12.5px}.about-group b{color:#173f32}.result-about .about-tiles{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.about-picto{flex-wrap:wrap;grid-template-columns:none;gap:3px;max-width:230px;display:flex}.about-picto svg{aspect-ratio:auto;width:20px;height:20px}.home-card{border-radius:14px;grid-template-columns:36px minmax(0,1fr) auto auto;padding:12px 14px 12px 12px;transition:box-shadow .2s,border-color .2s}.home-card:hover{border-color:#d6e3cf;box-shadow:0 8px 20px #173f3214}.res-rooms{color:#3e4b43;font-size:12.5px}.res-notes{color:#8a6a3a;font-size:12px}.res-price{text-align:right;justify-items:end;gap:2px;display:grid}.res-price b{color:#173f32;white-space:nowrap;font-family:Fraunces,Georgia,serif;font-size:17px;font-weight:700}.res-price b small{color:#6b766e;font-family:DM Sans,sans-serif;font-size:11.5px;font-weight:600}.res-price .result-muted{white-space:nowrap;font-size:12px}.res-price-none{color:#7a857c;white-space:nowrap;font-size:12.5px;font-style:italic}.res-fit{white-space:nowrap;border-radius:999px;margin-top:2px;padding:2px 8px;font-size:11.5px;font-weight:700}.res-fit.is-in{color:#1f5641;background:#dcebd6}.res-fit.is-out{color:#8a3b2b;background:#f8e3d9}.home-or{margin-top:22px}@media (width<=640px){.home-card{grid-template-columns:36px minmax(0,1fr)}.res-price{text-align:left;grid-column:2;justify-items:start}.home-card .home-link{grid-column:2;justify-self:start}}.results-error-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.flow-back-link{color:#173f32;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #cfd9c9;border-radius:12px;padding:12px 18px;font-weight:700}.flow-back-link:hover{background:#f1f7ec;border-color:#245b48}.res-tags{flex-wrap:wrap;gap:6px;margin:3px 0 1px;display:flex}.res-walk,.res-here{border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:700}.res-walk{color:#1e4f8a;background:#e8f0fb}.res-here{color:#1f5641;background:#dcebd6}.res-source{color:#4d6b5c;text-underline-offset:2px;justify-self:start;margin-top:2px;font-size:11.5px;text-decoration:underline}.res-source.is-listing{color:#8a5a17}@media (width<=520px){.home-card{grid-template-columns:minmax(0,1fr);gap:4px;padding:12px 14px}.home-icon{display:none}.home-body strong{white-space:normal}.home-card>*{text-align:left;grid-column:1/-1;justify-self:start}.result-card{padding:16px}}.cg-page{--cg-green:#173f32;--cg-green-2:#245b48;--cg-lime:#dff27f;--cg-ink:#1f2a24;--cg-muted:#66736b;--cg-cream:#fffdf8;--cg-line:#e6dfcf;color:var(--cg-ink);background:#f4f1e8;padding:22px clamp(16px,4vw,56px) 70px;font-family:DM Sans,sans-serif}.cg-hero{isolation:isolate;background:var(--cg-green);border-radius:28px;align-items:flex-end;max-width:1500px;min-height:clamp(320px,42vh,430px);margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #102f2a2e}.cg-hero-img{z-index:-2;object-fit:cover;object-position:center 55%;width:100%;height:100%;animation:18s ease-out both cg-zoom;position:absolute;inset:0}@keyframes cg-zoom{0%{transform:scale(1.12)}to{transform:scale(1)}}.cg-hero:before{content:"";z-index:-1;background:linear-gradient(90deg,#0b3021f0 0%,#0b3021c7 38%,#0b302126 75%),linear-gradient(#0000 50%,#0b30218c);position:absolute;inset:0}.cg-hero-text{color:#fff;max-width:640px;padding:clamp(28px,4vw,52px);animation:.7s both cg-rise}.cg-kicker{color:var(--cg-lime);letter-spacing:.18em;margin:0 0 12px;font-size:13px;font-weight:800}.cg-hero h1{font-variation-settings:"opsz" 72, "WONK" 0, "SOFT" 50;font-feature-settings:"liga" 0, "clig" 0;letter-spacing:-.01em;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(42px,5.2vw,74px);font-weight:700;line-height:1.02}.cg-hero h1 em{color:var(--cg-lime);font-style:italic;display:block}.cg-lead{color:#ffffffdb;max-width:520px;margin:16px 0 0;font-size:clamp(16px,1.15vw,18.5px);line-height:1.6}.cg-stats{flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0;list-style:none;display:flex}.cg-stats li{color:#ffffffe6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff1a;border:1px solid #ffffff38;border-radius:999px;align-items:baseline;gap:7px;padding:8px 15px;font-size:14px;display:flex}.cg-stats strong{color:var(--cg-lime);font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700}.cg-hero-credit{color:#ffffffbf;text-shadow:0 1px 4px #0009;margin:0;font-size:11px;position:absolute;bottom:12px;right:18px}.cg-hero-credit a{color:inherit}.cg-toolbar{flex-wrap:wrap;gap:10px;max-width:1500px;margin:30px auto 22px;display:flex}.cg-chip{color:var(--cg-green);font:inherit;cursor:pointer;background:#fff;border:1.5px solid #d9d2c1;border-radius:999px;align-items:center;gap:8px;padding:10px 16px 10px 18px;font-size:15px;font-weight:700;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.cg-chip span{min-width:24px;color:var(--cg-muted);text-align:center;background:#efe9db;border-radius:999px;padding:2px 8px;font-size:12.5px}.cg-chip:hover{border-color:var(--cg-green-2);transform:translateY(-1px)}.cg-chip.is-on{border-color:var(--cg-green);background:var(--cg-green);color:#fff}.cg-chip.is-on span{background:var(--cg-lime);color:var(--cg-green)}.cg-chip:focus-visible{outline:3px solid var(--cg-lime);outline-offset:2px}.cg-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px;max-width:1500px;margin:0 auto;display:grid}.cg-cell{display:flex}.cg-card{border:1px solid var(--cg-line);background:var(--cg-cream);opacity:0;border-radius:22px;flex-direction:column;flex:1;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .3s,opacity .5s;display:flex;position:relative;overflow:hidden;transform:translateY(18px);box-shadow:0 6px 18px #173f320f}.cg-card.is-in{opacity:1;transition-delay:calc(min(var(--i), 8) * 60ms);transform:none}.cg-card.is-in:hover{transition-delay:0s;transform:translateY(-6px);box-shadow:0 22px 44px #173f3229}.cg-photo{background:#dfe6da;height:210px;display:block;position:relative;overflow:hidden}.cg-photo img{object-fit:cover;width:100%;height:100%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.cg-card:hover .cg-photo img{transform:scale(1.07)}.cg-photo:after{content:"";pointer-events:none;background:linear-gradient(#0000002e,#0000 35% 70%,#0000002e);position:absolute;inset:0}.cg-tag{z-index:1;color:#fff;text-transform:capitalize;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#173f32db;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex;position:absolute;top:14px;left:14px}.cg-tag svg{fill:none;width:15px;height:15px;stroke:var(--cg-lime);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.cg-logo{z-index:2;box-sizing:border-box;background:#fff;border-radius:18px;place-items:center;width:70px;height:70px;padding:10px;transition:transform .35s cubic-bezier(.3,1.4,.5,1);display:grid;position:absolute;top:172px;right:18px;box-shadow:0 10px 24px #102f2a2e}.cg-logo img{object-fit:contain;max-width:100%;max-height:100%}.cg-card:hover .cg-logo{transform:rotate(-4deg)scale(1.06)}.cg-body{flex-direction:column;flex:1;gap:8px;padding:18px 20px 16px;display:flex}.cg-campus .cg-body{padding-top:20px;padding-right:100px}.cg-over{color:#a8753f;letter-spacing:.12em;text-transform:uppercase;font-size:12.5px;font-weight:800}.cg-body h3{color:var(--cg-green);font-variation-settings:"opsz" 36, "WONK" 0;margin:0;font-family:Fraunces,Georgia,serif;font-size:23px;font-weight:700;line-height:1.15}.cg-detail{color:#4d5a52;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:2px 0 0;font-size:15px;line-height:1.55;display:-webkit-box;overflow:hidden}.cg-where{color:var(--cg-muted);flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 0;font-size:14.5px;display:flex}.cg-campus .cg-where{margin-right:-80px}.cg-where svg{color:var(--cg-green-2);flex:none}.cg-district{color:#1f5641;background:#dcebd6;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.cg-actions{flex-wrap:wrap;gap:8px;margin:auto -80px 0 0;padding-top:12px;display:flex}.cg-place .cg-actions{margin-right:0}.cg-btn{color:var(--cg-green);font:inherit;cursor:pointer;background:#fff;border:1.5px solid #cfd9c9;border-radius:999px;align-items:center;gap:6px;padding:9px 14px;font-size:14px;font-weight:700;text-decoration:none;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.cg-btn:hover{border-color:var(--cg-green-2);background:#f1f7ec}.cg-btn-solid{border-color:var(--cg-green);background:var(--cg-green);color:#fff}.cg-btn-solid:hover{background:var(--cg-green-2);border-color:var(--cg-green-2)}.cg-btn span{transition:transform .2s}.cg-btn:hover span{transform:translate(2px)}.cg-btn-solid:hover span{transform:translate(2px,-2px)}.cg-btn:focus-visible{outline:3px solid var(--cg-lime);outline-offset:2px}.cg-credit{color:#8a948c;border-top:1px solid #efe9db;margin:0;padding:9px 20px 11px;font-size:11px}.cg-credit a{color:inherit}@keyframes cg-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width<=700px){.cg-page{padding-top:14px}.cg-hero{border-radius:20px;min-height:0}.cg-hero:before{background:linear-gradient(#0b30218c,#0b3021f2 80%)}.cg-hero-credit{padding:0 20px 12px;position:static}.cg-hero{flex-direction:column;align-items:stretch}.cg-toolbar{flex-wrap:nowrap;margin:20px -16px 16px;padding:2px 16px 6px;overflow-x:auto}.cg-chip{flex:none}.cg-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.cg-hero-img,.cg-hero-text{animation:none}.cg-card{opacity:1;transition:none;transform:none}.cg-photo img,.cg-logo{transition:none}}.cg-campus .cg-body h3{margin-right:0}.cg-tag{text-transform:none}.cg-place .cg-tag{text-transform:capitalize}.cg-actions{flex-wrap:nowrap}.cg-btn{white-space:nowrap}.site-tour{--st-green:#123d31;--st-green-2:#245b48;--st-gold:#c29450;--st-cream:#fffdf7;z-index:10000;right:max(20px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));background:var(--st-cream);color:#193e32;border:1px solid #e5ddce;border-radius:20px;width:min(400px,100vw - 32px);font-family:DM Sans,sans-serif;transition:left .6s cubic-bezier(.65,.05,.36,1),box-shadow .3s;animation:.45s cubic-bezier(.2,.8,.2,1) both st-arrive;position:fixed;overflow:hidden;box-shadow:0 24px 70px #0f2e2566,0 2px 8px #0f2e2522}.site-tour.at-top{bottom:auto;top:max(16px, env(safe-area-inset-top))}@keyframes st-arrive{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:none}}.site-tour-band{background:radial-gradient(120% 160% at 100% 0%, #2f6e57 0%, transparent 60%), linear-gradient(135deg, var(--st-green) 0%, #1a4a3c 100%);color:#f6f1e6;padding:14px 16px 14px 20px;position:relative}.site-tour-topline,.site-tour-controls,.site-tour-navigation{justify-content:space-between;align-items:center;gap:12px;display:flex}.site-tour-topline>span{color:#e9cf9a;letter-spacing:1.3px;text-transform:uppercase;font-size:11px;font-weight:700}.site-tour-close{color:#f6f1e6;width:30px;height:30px;font:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;place-items:center;font-size:20px;line-height:1;transition:background .2s,transform .2s;display:grid}.site-tour-close:hover{background:#ffffff2b;transform:rotate(90deg)}.site-tour-bar{background:#ffffff24;border-radius:99px;height:4px;margin-top:12px;overflow:hidden}.site-tour-bar i{border-radius:inherit;background:linear-gradient(90deg, #e9cf9a, var(--st-gold));height:100%;transition:width .45s cubic-bezier(.2,.8,.2,1);display:block}.site-tour-body{padding:20px 22px 4px;animation:.4s cubic-bezier(.2,.8,.2,1) both st-step}@keyframes st-step{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}.site-tour-head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.site-tour-icon{width:48px;height:48px;color:var(--st-green);background:linear-gradient(145deg,#f3e7cf,#e8d4ad);border-radius:14px;flex:none;place-items:center;animation:.5s cubic-bezier(.3,1.5,.5,1) 50ms both st-pop;display:grid;box-shadow:inset 0 0 0 1px #c294504d}@keyframes st-pop{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}.site-tour-place{color:#7a6440;letter-spacing:.4px;text-transform:uppercase;align-items:center;gap:8px;font-size:12.5px;font-weight:700;display:inline-flex}.site-tour-place em{color:#1f3a12;letter-spacing:.8px;background:#dff27f;border-radius:99px;padding:3px 8px;font-size:10.5px;font-style:normal;font-weight:800}.site-tour h2{color:var(--st-green);margin:0;font-family:Playfair Display,Georgia,serif;font-size:25px;line-height:1.18}.site-tour-description{color:#4f5f55;margin:10px 0 14px;font-size:14.5px;line-height:1.6}.site-tour-tip{border-left:3px solid var(--st-gold);color:#5b5040;background:#f5eedf;border-radius:0 10px 10px 0;align-items:baseline;gap:10px;margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.5;display:flex}.site-tour-tip b{color:#9a7445;letter-spacing:1px;text-transform:uppercase;flex:none;font-size:10.5px}.site-tour-try{color:#1f3a12;font:inherit;cursor:pointer;background:#dff27f;border:0;border-radius:99px;align-items:center;gap:8px;margin:0 0 14px;padding:10px 16px;font-size:13.5px;font-weight:800;transition:transform .2s,box-shadow .2s;display:inline-flex}.site-tour-try:hover{transform:translateY(-1px);box-shadow:0 6px 16px #8fae2a55}.site-tour-dots{flex-wrap:wrap;gap:6px;padding:4px 22px 0;display:flex}.site-tour-dots button{cursor:pointer;background:#dcd3c1;border:0;border-radius:99px;width:8px;height:8px;padding:0;transition:width .3s cubic-bezier(.2,.8,.2,1),background .2s}.site-tour-dots button.is-past{background:#c2a676}.site-tour-dots button.is-on{background:var(--st-green);width:24px}.site-tour-dots button:hover:not(.is-on){background:#9a8a6c}.site-tour-controls{padding:14px 18px 18px 22px}.site-tour-back,.site-tour-skip,.site-tour-next{font:inherit;cursor:pointer;border:0}.site-tour-skip,.site-tour-back{color:#536459;background:0 0;padding:10px 6px;font-size:13.5px;font-weight:600}.site-tour-skip:hover,.site-tour-back:hover{color:var(--st-green);text-underline-offset:3px;text-decoration:underline}.site-tour-next{background:var(--st-green);color:var(--st-cream);border-radius:99px;padding:11px 18px;font-size:13.5px;font-weight:700;transition:background .2s,transform .2s;box-shadow:0 6px 16px #123d3140}.site-tour-next:hover{background:var(--st-green-2);transform:translateY(-1px)}.site-tour-next span{transition:transform .2s;display:inline-block}.site-tour-next:hover span{transform:translate(3px)}.site-tour button:focus-visible{outline:2px solid var(--st-gold);outline-offset:2px}.site-tour-skip,.site-tour-back{border-radius:99px;padding-inline:10px}.site-tour-highlight{z-index:2;outline-offset:5px;outline:3px solid #c29450;animation:2s ease-in-out infinite st-glow;position:relative;box-shadow:0 0 0 10px #c2945033}@keyframes st-glow{50%{box-shadow:0 0 0 16px #c2945018}}.chatw-fab.site-tour-highlight{outline-offset:4px;border-radius:99px;position:relative}@media (prefers-reduced-motion:reduce){.site-tour,.site-tour-body,.site-tour-icon,.site-tour-highlight{animation:none}.site-tour{transition:none}}@media (width<=480px){.site-tour{border-radius:18px;width:calc(100vw - 24px);bottom:12px;right:12px}.site-tour.at-left{left:12px;right:12px}.site-tour.at-top{top:max(12px, env(safe-area-inset-top));bottom:auto}.site-tour-body{padding:16px 18px 2px}.site-tour h2{font-size:22px}.site-tour-description{font-size:14px}.site-tour-icon{border-radius:12px;width:42px;height:42px}.site-tour-dots{padding-inline:18px}.site-tour-controls{padding:12px 14px 14px 18px}}.fm{z-index:900;--fm-right:clamp(10px, 1.8vw, 28px);top:0;right:var(--fm-right);color:#173f32;pointer-events:none;-webkit-tap-highlight-color:transparent;text-decoration:none;transition:transform .7s cubic-bezier(.34,1.56,.64,1);position:fixed;transform:translateY(-130%)}.fm.is-shown{pointer-events:auto;transform:translateY(0)}.fm.is-shown.is-tucked{transform:translateX(calc(100% + var(--fm-right) - 12px))}.fm.is-shown.is-tucked:hover,.fm.is-shown.is-tucked:focus-visible{transform:translateY(0)}.fm-swing{transform-origin:50% 0;flex-direction:column;align-items:center;animation:3.6s ease-in-out infinite fm-swing;display:flex;position:relative}@keyframes fm-swing{0%,to{transform:rotate(5deg)}50%{transform:rotate(-5deg)}}.fm:hover .fm-swing,.fm:focus-visible .fm-swing,.fm.is-tucked .fm-swing{animation-play-state:paused}.fm-string{background:linear-gradient(#c29450,#e9cf9a);border-radius:2px;width:2px;height:30px;box-shadow:0 0 6px #e9cf9a99}.fm-disc{box-sizing:border-box;letter-spacing:.01em;text-align:center;text-transform:uppercase;background:radial-gradient(circle at 35% 28%,#f6ffd0 0%,#def486 45%,#c4e05c 100%);border:3px solid #173f32;border-radius:50%;align-content:center;place-items:center;gap:1px;width:80px;height:80px;font:800 10.5px/1.1 DM Sans,sans-serif;transition:transform .25s,box-shadow .25s;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 26px #102f2a52,0 0 0 4px #dff27f59,inset 0 -4px 8px #173f321f}.fm-disc:after{content:"";background:linear-gradient(115deg,#0000 40%,#ffffffbf 50%,#0000 60%);animation:4.8s ease-in-out 1.2s infinite fm-shine;position:absolute;inset:-20%;transform:translate(-120%)}@keyframes fm-shine{0%,70%{transform:translate(-120%)}85%,to{transform:translate(120%)}}.fm:hover .fm-disc,.fm:focus-visible .fm-disc{transform:scale(1.07);box-shadow:0 14px 30px #102f2a61,0 0 0 6px #dff27f73,inset 0 -4px 8px #173f321f}.fm-ring{pointer-events:none;border:2px solid #dff27fd9;border-radius:50%;width:80px;height:80px;margin-left:-40px;animation:2.8s ease-out infinite fm-pulse;position:absolute;top:30px;left:50%}@keyframes fm-pulse{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}.fm.is-tucked .fm-ring{opacity:0;animation:none}.fm-icon{fill:none;stroke:#173f32;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.fm-word{z-index:1;position:relative}.fm-label{color:#dff27f;white-space:nowrap;opacity:0;pointer-events:none;background:#173f32;border-radius:999px;padding:8px 14px;font:700 13px/1 DM Sans,sans-serif;transition:opacity .2s,transform .25s;position:absolute;top:52px;right:calc(100% + 10px);transform:translate(10px);box-shadow:0 8px 20px #102f2a4d}.fm-label b{transition:transform .2s;display:inline-block}.fm:hover .fm-label,.fm:focus-visible .fm-label{opacity:1;transform:none}.fm:hover .fm-label b{transform:translate(3px)}.fm:focus-visible .fm-disc{outline-offset:3px;outline:3px solid #c29450}@media (width<=700px){.fm-string{height:18px}.fm-disc{border-width:2.5px;width:64px;height:64px;font-size:8.5px}.fm-icon{width:16px;height:16px}.fm-ring{width:64px;height:64px;margin-left:-32px;top:18px}.fm-label{display:none}}@media (prefers-reduced-motion:reduce){.fm,.fm-disc{transition:none}.fm-swing,.fm-ring,.fm-disc:after{animation:none}}.site-footer{color:#ffffffd1;background:radial-gradient(50% 80% at 100% 0,#dff27f1f,#0000 60%),radial-gradient(40% 60% at 0 100%,#2f7a5a59,#0000 70%),#0f3a28;padding:64px 6% 24px;font-family:DM Sans,sans-serif;position:relative;overflow:hidden}.sf-wave{fill:none;stroke:#dff27f8c;stroke-width:1.6px;filter:drop-shadow(0 0 6px #c7ec5c99);width:100%;height:60px;position:absolute;top:0;left:0}.sf-top{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:40px;max-width:1400px;margin:0 auto;display:grid}.sf-logo{align-items:center;gap:12px;display:inline-flex}.sf-logo img{object-fit:contain;width:44px;height:52px;display:block}.sf-logo .sf-wordmark{object-position:left center;width:200px;height:48px}.sf-brand p{max-width:380px;margin:16px 0 0;font-size:15.5px;line-height:1.6}.sf-cta{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.sf-btn{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1.5px solid #ffffff59;border-radius:999px;align-items:center;gap:8px;padding:11px 18px;font-size:14.5px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,border-color .2s;display:inline-flex}.sf-btn:hover{background:#ffffff14;border-color:#fff;transform:translateY(-2px)}.sf-btn-lime{color:#0d3b26;background:linear-gradient(#f1fbb8,#dff27f 55%,#c7ec5c);border-color:#0000}.sf-btn-lime:hover{background:linear-gradient(#f6fdcc,#e6f78f 55%,#d1f06e);border-color:#0000}.sf-btn:focus-visible,.sf-col a:focus-visible{outline-offset:3px;outline:2px solid #dff27f}.sf-col h2{color:#dff27f;letter-spacing:.14em;text-transform:uppercase;margin:6px 0 16px;font-size:13px;font-weight:800}.sf-col ul{gap:11px;margin:0;padding:0;list-style:none;display:grid}.sf-col a{color:#ffffffd9;font-size:15.5px;text-decoration:none;transition:color .15s;position:relative}.sf-col a:after{content:"";transform-origin:0;background:#dff27f;width:100%;height:1.5px;transition:transform .25s;position:absolute;bottom:-3px;left:0;transform:scaleX(0)}.sf-col a:hover{color:#fff}.sf-col a:hover:after{transform:scaleX(1)}.sf-bottom{color:#fff9;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;max-width:1400px;margin:44px auto 0;padding-top:18px;font-size:13.5px;display:flex}.sf-bottom p{margin:0}.sf-made span[aria-hidden]{color:#8fd18f;animation:4s ease-in-out infinite sf-sway;display:inline-block}@keyframes sf-sway{0%,to{transform:rotate(0)}50%{transform:rotate(14deg)}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=960px){.sf-top{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-brand{grid-column:1/-1}}@media (width<=560px){.site-footer{padding:54px 20px 20px}.sf-top{grid-template-columns:1fr 1fr;gap:28px 20px}.sf-logo .sf-wordmark{width:170px;height:40px}}@media (prefers-reduced-motion:reduce){.sf-made span[aria-hidden]{animation:none}}.info-page{color:#1f2a24;max-width:820px;margin:0 auto;padding:64px 24px 96px;font-family:DM Sans,sans-serif}.info-page h1{color:#0f3d2a;margin:0 0 28px;font-family:Fraunces,Georgia,serif;font-size:clamp(40px,5vw,60px);font-weight:700;line-height:1.05}.info-page section{margin-top:34px}.info-page h2{color:#0f3d2a;margin:0 0 10px;font-family:Fraunces,Georgia,serif;font-size:clamp(24px,2.2vw,30px);font-weight:700}.info-page p{color:#2f3a33;margin:0;font-size:19px;line-height:1.75}.info-page .info-intro{margin-bottom:8px}.info-back{color:#0f3d2a;margin-top:48px;font-weight:700;text-decoration:none;display:inline-block}.info-back:hover{text-underline-offset:4px;text-decoration:underline}@media (width<=640px){.info-page{padding:40px 20px 64px}.info-page p{font-size:17px}}.site-shell{flex-direction:column;min-height:100svh;display:flex}.site-shell>main{flex:1 0 auto}.chatw{--cw-green:#173f32;--cw-green-2:#245b48;--cw-lime:#dff27f;--cw-cream:#f6f1e6;--cw-ink:#1f2a24;--cw-muted:#6b766e;z-index:2000;pointer-events:none;flex-direction:column;align-items:flex-end;gap:14px;font-family:DM Sans,sans-serif;display:flex;position:fixed;bottom:24px;right:24px}.chatw>*{pointer-events:auto}.chatw-fab{background:linear-gradient(145deg, #1f5641, var(--cw-green));height:60px;color:var(--cw-lime);font:inherit;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:10px;padding:0 20px 0 17px;font-size:15.5px;font-weight:700;transition:transform .2s,box-shadow .2s;animation:.45s cubic-bezier(.3,1.4,.5,1) both chatw-in;display:inline-flex;position:relative;box-shadow:0 14px 34px #102f2a59,inset 0 0 0 1px #dff27f40}.chatw-fab-label{color:#fff}.chatw-fab:hover{transform:translateY(-2px);box-shadow:0 18px 40px #102f2a6b,inset 0 0 0 1px #dff27f66}.chatw-fab:focus-visible{outline:3px solid var(--cw-lime);outline-offset:3px}.chatw.is-open .chatw-fab{justify-content:center;width:60px;padding:0}.chatw-fab:after{content:"";border:2px solid var(--cw-green);background:var(--cw-lime);border-radius:50%;width:9px;height:9px;position:absolute;top:9px;left:37px}.chatw.is-open .chatw-fab:after{display:none}@keyframes chatw-in{0%{opacity:0;transform:translateY(12px)scale(.9)}to{opacity:1;transform:none}}.chatw-panel{transform-origin:100% 100%;background:#fffdf8;border:1px solid #173f321f;border-radius:22px;flex-direction:column;width:min(390px,100vw - 32px);height:min(600px,100dvh - 130px);animation:.28s cubic-bezier(.2,.9,.3,1.1) both chatw-open;display:flex;overflow:hidden;box-shadow:0 24px 60px #102f2a47}@keyframes chatw-open{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}.chatw-head{background:linear-gradient(135deg, #1f5641, var(--cw-green));color:#fff;align-items:center;gap:10px;padding:14px 12px 14px 16px;display:flex}.chatw-avatar{background:var(--cw-lime);width:36px;height:36px;color:var(--cw-green);border-radius:12px;flex:none;place-items:center;display:grid}.chatw-title{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.chatw-title strong{font-variation-settings:"opsz" 36, "WONK" 0;font-family:Fraunces,Georgia,serif;font-size:17px;font-weight:700}.chatw-title span{color:#ffffffc7;align-items:center;gap:6px;font-size:12px;display:flex}.chatw-title i{background:var(--cw-lime);width:7px;height:7px;box-shadow:0 0 6px var(--cw-lime);border-radius:50%}.chatw-icon-btn{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;width:34px;height:34px;padding:0;transition:background .15s;display:grid}.chatw-icon-btn:hover{background:#ffffff1f}.chatw-icon-btn:focus-visible{outline:2px solid var(--cw-lime);outline-offset:1px}.chatw-body{overscroll-behavior:contain;background:radial-gradient(120% 60% at 100% 0,#dff27f1f,#0000 60%),#fffdf8;flex-direction:column;flex:1;gap:10px;padding:16px 14px 10px;display:flex;overflow-y:auto}.chatw-msg{overflow-wrap:anywhere;border-radius:16px;max-width:86%;padding:10px 13px;font-size:14.5px;line-height:1.5;animation:.2s both chatw-msg}@keyframes chatw-msg{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.chatw-msg p{margin:0}.chatw-msg p+p,.chatw-msg p+ul,.chatw-msg ul+p{margin-top:7px}.chatw-msg ul{margin:4px 0 0;padding-left:18px}.chatw-msg li+li{margin-top:3px}.chatw-msg a{color:var(--cw-green-2);text-underline-offset:2px;font-weight:700;text-decoration:underline}.chatw-msg.is-bot{background:var(--cw-cream);color:var(--cw-ink);border-bottom-left-radius:6px;align-self:flex-start}.chatw-msg.is-user{background:var(--cw-green);color:#fff;white-space:pre-wrap;border-bottom-right-radius:6px;align-self:flex-end}.chatw-typing{gap:5px;padding:14px 15px;display:inline-flex}.chatw-typing span{background:#8a968e;border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite chatw-dot}.chatw-typing span:nth-child(2){animation-delay:.15s}.chatw-typing span:nth-child(3){animation-delay:.3s}@keyframes chatw-dot{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.chatw-starters{flex-direction:column;align-items:flex-start;gap:7px;margin-top:2px;display:flex}.chatw-starters button{color:var(--cw-green);font:inherit;text-align:left;cursor:pointer;background:#fff;border:1.5px solid #cfe0c7;border-radius:999px;padding:8px 13px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s}.chatw-starters button:hover{border-color:var(--cw-green-2);background:#f1f7ec}.chatw-starters button:focus-visible{outline:2px solid var(--cw-green);outline-offset:2px}.chatw-error{color:#8a3b2b;background:#f8e3d9;border-radius:12px;align-self:stretch;margin:2px 0 0;padding:9px 12px;font-size:13px}.chatw-form{background:#fff;border:1.5px solid #e2d9c6;border-radius:18px;align-items:flex-end;gap:8px;margin:0 12px;padding:8px 8px 8px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.chatw-form:focus-within{border-color:var(--cw-green-2);box-shadow:0 0 0 3px #245b481f}.chatw-form textarea{min-height:24px;max-height:110px;color:var(--cw-ink);font:inherit;resize:none;field-sizing:content;background:0 0;border:0;outline:0;flex:1;padding:6px 0;font-size:14.5px;line-height:1.45}.chatw-form textarea::placeholder{color:#98a39b}.chatw-send{background:var(--cw-green);width:38px;height:38px;color:var(--cw-lime);cursor:pointer;border:0;border-radius:12px;flex:none;place-items:center;padding:0;transition:background .15s,opacity .15s;display:grid}.chatw-send:hover:not(:disabled){background:var(--cw-green-2)}.chatw-send:disabled{opacity:.4;cursor:default}.chatw-send.is-stop{color:#fff;background:#8a3b2b}.chatw-send:focus-visible{outline:2px solid var(--cw-green);outline-offset:2px}.chatw-foot{color:var(--cw-muted);text-align:center;margin:7px 14px 10px;font-size:11px}@media (width<=520px){.chatw{bottom:14px;right:14px}.chatw-fab{height:54px;padding:0 16px 0 14px;font-size:14.5px}.chatw.is-open .chatw-fab{width:54px}.chatw-fab:after{top:7px;left:32px}.chatw-panel{border-radius:18px;width:calc(100vw - 28px);height:calc(100dvh - 110px)}}@media (prefers-reduced-motion:reduce){.chatw-fab,.chatw-panel,.chatw-msg,.chatw-typing span{animation:none}}.chatw-fab{box-shadow:0 14px 34px #102f2a59,0 0 0 2px #ffffffe6}.chatw-fab:hover{box-shadow:0 18px 40px #102f2a6b,0 0 0 2px #fff}.chatw-fab{gap:8px;height:48px;padding:0 16px 0 14px;font-size:14px;transition:transform .2s,box-shadow .2s,background .3s,color .3s}.chatw.is-open .chatw-fab{width:48px}.chatw-fab:after{width:7px;height:7px;top:8px;left:28px}.chatw.on-dark .chatw-fab{background:linear-gradient(145deg, #eefab0, var(--cw-lime));color:var(--cw-green);box-shadow:0 12px 30px #00000059,0 0 0 2px #173f32d9,0 0 22px #dff27f73}.chatw.on-dark .chatw-fab-label{color:var(--cw-green)}.chatw.on-dark .chatw-fab:after{border-color:var(--cw-lime);background:#2f9e5b}@media (width<=520px){.chatw-fab{height:44px;padding:0 14px 0 12px;font-size:13.5px}.chatw.is-open .chatw-fab{width:44px}.chatw-fab:after{top:7px;left:25px}}.chatw-panel{transition:width .28s cubic-bezier(.2,.9,.3,1),height .28s cubic-bezier(.2,.9,.3,1)}.chatw.is-big .chatw-panel{width:min(760px,100vw - 48px);height:calc(100dvh - 110px)}.chatw.is-big .chatw-msg{max-width:78%;font-size:15.5px}.chatw.is-big .chatw-body{gap:12px;padding:22px 26px 12px}.chatw.is-big .chatw-form{margin:0 22px}.chatw.is-big .chatw-form textarea{font-size:15.5px}.chatw.is-big .chatw-starters{flex-flow:wrap}@media (width<=520px){.chatw-size-btn{display:none}.chatw.is-big .chatw-panel{width:calc(100vw - 28px);height:calc(100dvh - 110px)}}@media (prefers-reduced-motion:reduce){.chatw-panel{transition:none}}.chatw-fab{overflow:visible}.chatw-fab-icon{place-items:center;width:21px;height:21px;display:grid;position:relative}.chatw-fab-icon svg{grid-area:1/1;transition:transform .45s cubic-bezier(.3,1.6,.5,1),opacity .25s}.chatw-fab-icon .i-close{opacity:0;transform:rotate(-135deg)scale(.4)}.chatw-fab-icon.is-x .i-chat{opacity:0;transform:rotate(135deg)scale(.4)}.chatw-fab-icon.is-x .i-close{opacity:1;transform:none}.chatw-fab-icon .i-chat .bubble{transform-origin:30% 80%;animation:6s ease-in-out 1.5s infinite chatw-nudge}.chatw-fab-icon .i-chat .dot{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out 1.5s infinite chatw-type}.chatw-fab-icon .i-chat .d2{animation-delay:1.62s}.chatw-fab-icon .i-chat .d3{animation-delay:1.74s}@keyframes chatw-type{0%,8%,to{opacity:1;transform:none}2%{transform:translateY(-2.4px)}4%{opacity:.55;transform:translateY(0)}6%{opacity:1;transform:translateY(-1.6px)}}@keyframes chatw-nudge{0%,10%,to{transform:none}3%{transform:rotate(-9deg)scale(1.06)}6%{transform:rotate(5deg)}8%{transform:rotate(-2deg)}}.chatw-fab:hover .i-chat .bubble{animation:.5s both chatw-tilt}.chatw-fab:hover .i-chat .dot{animation:.7s ease-in-out infinite chatw-bounce}.chatw-fab:hover .i-chat .d2{animation-delay:.1s}.chatw-fab:hover .i-chat .d3{animation-delay:.2s}@keyframes chatw-tilt{40%{transform:rotate(-12deg)scale(1.1)}to{transform:rotate(-6deg)scale(1.05)}}@keyframes chatw-bounce{0%,60%,to{transform:none}30%{transform:translateY(-2.2px)}}.chatw-fab.pop-a{animation:.55s cubic-bezier(.3,1.5,.5,1) chatw-squish-a}.chatw-fab.pop-b{animation:.55s cubic-bezier(.3,1.5,.5,1) chatw-squish-b}@keyframes chatw-squish-a{0%{transform:none}25%{transform:scale(.86,.8)}55%{transform:scale(1.08,1.1)}80%{transform:scale(.97,.98)}to{transform:none}}@keyframes chatw-squish-b{0%{transform:none}25%{transform:scale(.86,.8)}55%{transform:scale(1.08,1.1)}80%{transform:scale(.97,.98)}to{transform:none}}.chatw-burst{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:24px}.chatw-burst .ring{border:2.5px solid var(--cw-lime);border-radius:50%;width:48px;height:48px;animation:.6s ease-out forwards chatw-ring;position:absolute;top:-24px;left:-24px}.chatw-burst b{background:var(--cw-lime);opacity:0;border-radius:2px;width:7px;height:7px;animation:.7s cubic-bezier(.15,.7,.3,1) forwards chatw-spark;position:absolute;top:-3.5px;left:-3.5px}@keyframes chatw-ring{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.1)}}@keyframes chatw-spark{0%{opacity:1;transform:rotate(var(--a)) translateX(12px) scale(.7)}65%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateX(calc(58px + var(--d))) rotate(180deg) scale(.35)}}.chatw-panel{animation:.45s cubic-bezier(.2,.8,.2,1) both chatw-reveal}.chatw-panel.is-closing{pointer-events:none;animation:.26s cubic-bezier(.5,0,.75,0) both chatw-fold}@keyframes chatw-reveal{0%{clip-path:circle(0% at calc(100% - 26px) calc(100% + 30px));opacity:.6;transform:translateY(8px)}to{clip-path:circle(150% at calc(100% - 26px) calc(100% + 30px));opacity:1;transform:none}}@keyframes chatw-fold{0%{clip-path:circle(150% at calc(100% - 26px) calc(100% + 30px));opacity:1}to{clip-path:circle(0% at calc(100% - 26px) calc(100% + 30px));opacity:.4}}.chatw-panel:not(.is-closing) .chatw-avatar svg{animation:.8s cubic-bezier(.3,1.4,.5,1) .15s both chatw-spin}@keyframes chatw-spin{0%{opacity:0;transform:rotate(-180deg)scale(.3)}to{opacity:1;transform:none}}.chatw-panel:not(.is-closing) .chatw-body>*{animation:.4s both chatw-rise}.chatw-panel:not(.is-closing) .chatw-body>:first-child{animation-delay:.18s}.chatw-panel:not(.is-closing) .chatw-body>:nth-child(2){animation-delay:.26s}.chatw-starters button{animation:.35s both chatw-rise}.chatw-starters button:first-child{animation-delay:.3s}.chatw-starters button:nth-child(2){animation-delay:.36s}.chatw-starters button:nth-child(3){animation-delay:.42s}.chatw-starters button:nth-child(4){animation-delay:.48s}@keyframes chatw-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.chatw-fab-icon svg,.chatw-fab-icon .i-chat .bubble,.chatw-fab-icon .i-chat .dot,.chatw-fab.pop-a,.chatw-fab.pop-b,.chatw-burst,.chatw-panel,.chatw-panel.is-closing,.chatw-avatar svg,.chatw-body>*,.chatw-starters button{transition:none!important;animation:none!important}.chatw-burst{display:none}}.chatw-burst .ring{border-width:3px;border-color:#2f9e5b}.chatw.on-dark .chatw-burst .ring{border-color:var(--cw-lime)}.chatw-burst b{background:#2f9e5b;width:9px;height:9px;top:-4.5px;left:-4.5px}.chatw-burst b:nth-child(3n){background:#b9dc4a;border-radius:50%}.chatw-burst b:nth-child(4n){background:#f2b51c;width:7px;height:7px}.chatw.on-dark .chatw-burst b{background:var(--cw-lime)}.chatw.on-dark .chatw-burst b:nth-child(3n){background:#fff}.chatw.on-dark .chatw-burst b:nth-child(4n){background:#f6d23a}.chatw-fab{transition:transform .55s cubic-bezier(.3,1.35,.5,1),box-shadow .2s,background .3s,color .3s,border-radius .3s}.chatw.is-tucked .chatw-fab{border-radius:999px 0 0 999px;animation:5s ease-in-out 1.2s infinite chatw-peek;transform:translate(calc(100% - 28px))}.chatw.is-tucked .chatw-fab-label{opacity:0;transition:opacity .2s}.chatw.is-tucked .chatw-fab:after{animation:5s ease-in-out 1.2s infinite chatw-blink}@keyframes chatw-peek{0%,14%,to{transform:translate(calc(100% - 28px))}5%{transform:translate(calc(100% - 48px))rotate(-3deg)}9%{transform:translate(calc(100% - 36px))rotate(1deg)}}@keyframes chatw-blink{0%,14%,to{transform:none}5%{transform:scale(1.5)}}.chatw.is-tucked .chatw-fab:hover,.chatw.is-tucked .chatw-fab:focus-visible{border-radius:999px;animation:none;transform:none}.chatw.is-tucked .chatw-fab:hover .chatw-fab-label,.chatw.is-tucked .chatw-fab:focus-visible .chatw-fab-label{opacity:1}.chatw-fab-label{transition:opacity .25s .1s}@media (width<=520px){.chatw.is-tucked .chatw-fab{transform:translate(calc(100% - 38px))}@keyframes chatw-peek{0%,14%,to{transform:translate(calc(100% - 38px))}5%{transform:translate(calc(100% - 56px))rotate(-3deg)}9%{transform:translate(calc(100% - 44px))rotate(1deg)}}}@media (prefers-reduced-motion:reduce){.chatw.is-tucked .chatw-fab,.chatw.is-tucked .chatw-fab:after{animation:none}}.chatw.is-tucked .chatw-fab{border-radius:14px 0 0 14px;padding-left:8px;animation:5s ease-in-out 1.2s infinite chatw-peek-slim;transform:translate(calc(100% - 10px));box-shadow:-4px 6px 16px #102f2a38,0 0 0 1.5px #ffffffd9}.chatw.is-tucked .chatw-fab:after{display:none}@keyframes chatw-peek-slim{0%,14%,to{transform:translate(calc(100% - 10px))}5%{transform:translate(calc(100% - 20px))}9%{transform:translate(calc(100% - 13px))}}.chatw.is-tucked .chatw-fab:hover,.chatw.is-tucked .chatw-fab:focus-visible{padding-left:14px}@media (width<=520px){.chatw.is-tucked .chatw-fab{transform:translate(calc(100% - 20px))}@keyframes chatw-peek-slim{0%,14%,to{transform:translate(calc(100% - 20px))}5%{transform:translate(calc(100% - 30px))}9%{transform:translate(calc(100% - 23px))}}}.brand-word{flex:none;line-height:0;display:inline-block;position:relative}.brand-word .brand-wordmark{display:block}.brand-cap{pointer-events:none;width:14.55%;height:55.99%;position:absolute;top:13.02%;left:52.63%;overflow:visible}.cap-board{fill:#1b2668;stroke:#a9cde6;stroke-width:16px;stroke-linejoin:round;paint-order:stroke}.cap-skull{fill:#10153a}.cap-button{fill:#f2c75c}.cap-cord{fill:none;stroke:#f2c75c;stroke-width:16px;stroke-linecap:round;stroke-linejoin:round}.cap-knot{fill:#f2c75c}.cap-fringe{fill:#e8a92c}.cap-strands{fill:none;stroke:#c98a17;stroke-width:3px;opacity:.7}.brand.is-light .cap-board{fill:#f5efe2;stroke:none}.brand.is-light .cap-skull{fill:#ddd5c3}.cap-hat{transform-box:view-box;transform-origin:1950px 300px;animation:.9s cubic-bezier(.3,1.5,.5,1) .35s both cap-drop}.cap-tassel{transform-box:view-box;transform-origin:1776px 262px;animation:7s ease-in-out 2s infinite tassel-idle}@keyframes cap-drop{0%{opacity:0;transform:translateY(-90px)rotate(-24deg)}60%{opacity:1;transform:translateY(6px)rotate(4deg)}80%{transform:translateY(-3px)rotate(-1.5deg)}to{opacity:1;transform:none}}@keyframes tassel-idle{0%,12%,to{transform:none}3%{transform:rotate(14deg)}6%{transform:rotate(-9deg)}9%{transform:rotate(4deg)}}.brand-cap.toss-a .cap-hat{animation:1s cubic-bezier(.35,.1,.3,1) both cap-toss-a}.brand-cap.toss-b .cap-hat{animation:1s cubic-bezier(.35,.1,.3,1) both cap-toss-b}.brand-cap.toss-a .cap-tassel,.brand-cap.toss-b .cap-tassel{animation:1s ease-in-out both tassel-flap}@keyframes cap-toss-a{0%{transform:none}15%{transform:translateY(14px)scaleY(.9)}50%{transform:translateY(-150px)rotate(-200deg)}80%{transform:translateY(6px)rotate(-360deg)}90%{transform:translateY(-4px)rotate(-360deg)}to{transform:rotate(-360deg)}}@keyframes cap-toss-b{0%{transform:none}15%{transform:translateY(14px)scaleY(.9)}50%{transform:translateY(-150px)rotate(-200deg)}80%{transform:translateY(6px)rotate(-360deg)}90%{transform:translateY(-4px)rotate(-360deg)}to{transform:rotate(-360deg)}}@keyframes tassel-flap{0%,to{transform:none}20%{transform:rotate(-30deg)}45%{transform:rotate(35deg)}70%{transform:rotate(-18deg)}85%{transform:rotate(8deg)}}.brand .brand-logo{transform-origin:50% 90%}.brand:hover .brand-logo{animation:.6s both door-knock}@keyframes door-knock{0%,to{transform:none}20%{transform:rotate(-6deg)scale(1.04)}40%{transform:rotate(5deg)scale(1.04)}60%{transform:rotate(-3deg)scale(1.02)}80%{transform:rotate(1.5deg)}}@media (prefers-reduced-motion:reduce){.cap-hat,.cap-tassel,.brand-cap.toss-a .cap-hat,.brand-cap.toss-b .cap-hat,.brand-cap.toss-a .cap-tassel,.brand-cap.toss-b .cap-tassel,.brand:hover .brand-logo{animation:none}}.navbar .brand-word .brand-wordmark{aspect-ratio:3230/768;object-fit:fill;width:190px!important;height:auto!important}.navbar .brand .brand-logo{width:44px!important;height:53px!important}.navbar.nav-tight-1 .brand-word .brand-wordmark{width:175px!important}.navbar.nav-tight-1 .brand .brand-logo{width:42px!important;height:50px!important}.navbar.nav-tight-2 .brand-word .brand-wordmark{width:160px!important}.navbar.nav-tight-2 .brand .brand-logo{width:39px!important;height:47px!important}.navbar.nav-compact .brand-word .brand-wordmark{width:150px!important}.navbar.nav-compact .brand .brand-logo{width:36px!important;height:44px!important}@media (width<=360px){.navbar .brand-word .brand-wordmark{width:124px!important}.navbar .brand .brand-logo{width:28px!important;height:36px!important}}.ttk-page .cg-hero h1 em{display:block}.ttk-progress{z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8f2;border:1px solid #e6dfcf;border-radius:20px;grid-template-columns:auto 1fr;align-items:center;gap:10px 22px;max-width:1500px;margin:26px auto 10px;padding:16px 20px;display:grid;position:sticky;top:10px;box-shadow:0 10px 26px #173f3214}.ttk-progress strong{color:#173f32;font-family:Fraunces,Georgia,serif;font-size:21px;display:block}.ttk-progress div>span{color:#66736b;font-size:13.5px}.ttk-bar{background:#ece6d8;border-radius:999px;height:10px;display:block;overflow:hidden}.ttk-bar i{border-radius:inherit;background:linear-gradient(90deg,#6fbf73,#245b48);height:100%;transition:width .5s cubic-bezier(.2,.8,.2,1);display:block}.ttk-jump{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.ttk-jump a{color:#173f32;background:#fff;border:1.5px solid #d9d2c1;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:14px;font-weight:700;text-decoration:none;transition:border-color .15s,transform .15s;display:inline-flex}.ttk-jump a:hover{border-color:#245b48;transform:translateY(-1px)}.ttk-jump b{color:#dff27f;background:#173f32;border-radius:50%;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.ttk-phases{max-width:1500px;margin:0 auto}.ttk-phase{padding:34px 0 6px 64px;scroll-margin-top:150px;position:relative}.ttk-phase:before{content:"";background:repeating-linear-gradient(#cfdcc8 0 8px,#0000 8px 14px);width:2px;position:absolute;top:76px;bottom:-30px;left:21px}.ttk-phase:last-child:before{display:none}.ttk-phase-head{align-items:center;gap:16px;margin:0 0 18px -64px;display:flex;position:relative}.ttk-num{color:#dff27f;background:#173f32;border-radius:14px;flex:none;place-items:center;width:44px;height:44px;font-family:Fraunces,Georgia,serif;font-size:21px;font-weight:700;display:grid;box-shadow:0 8px 18px #173f3238}.ttk-phase-head h2{color:#173f32;font-variation-settings:"opsz" 48, "WONK" 0;margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(26px,2.4vw,34px);font-weight:700}.ttk-phase-head p{color:#66736b;margin:2px 0 0;font-size:15px}.ttk-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;display:grid}.ttk-card{background:#fffdf8;border:1px solid #e6dfcf;border-radius:20px;flex-direction:column;gap:10px;padding:18px 20px;transition:transform .25s,box-shadow .25s,border-color .25s,background .25s;display:flex;box-shadow:0 6px 18px #173f320f}.ttk-card:hover{transform:translateY(-4px);box-shadow:0 18px 36px #173f3221}.ttk-card.is-done{background:#f4faf1;border-color:#a9d3a6}.ttk-card-head{align-items:center;gap:12px;display:flex}.ttk-icon{background:#f1ece0;border-radius:14px;flex:none;place-items:center;width:46px;height:46px;font-size:23px;transition:transform .3s cubic-bezier(.3,1.5,.5,1);display:grid}.ttk-card:hover .ttk-icon{transform:rotate(-8deg)scale(1.08)}.ttk-card h3{color:#173f32;font-variation-settings:"opsz" 36, "WONK" 0;flex:1;margin:0;font-family:Fraunces,Georgia,serif;font-size:20px;font-weight:700;line-height:1.2}.ttk-card.is-done h3{-webkit-text-decoration:line-through #245b4873;text-decoration:line-through #245b4873}.ttk-check{cursor:pointer;background:#fff;border:2px solid #cfd9c9;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;padding:0;transition:background .2s,border-color .2s,transform .2s;display:grid}.ttk-check svg{fill:none;stroke:#fff;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;width:20px;height:20px;transition:stroke-dashoffset .3s 50ms}.ttk-check:hover{border-color:#245b48;transform:scale(1.06)}.ttk-check[aria-pressed=true]{background:#2f7a5a;border-color:#2f7a5a;animation:.4s cubic-bezier(.3,1.6,.5,1) ttk-tick}.ttk-check[aria-pressed=true] svg{stroke-dashoffset:0}@keyframes ttk-tick{40%{transform:scale(1.2)}}.ttk-check:focus-visible{outline-offset:2px;outline:3px solid #dff27f}.ttk-why{color:#2f3a33;margin:0;font-size:15px;line-height:1.55}.ttk-how{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ttk-how li{color:#4d5a52;padding-left:22px;font-size:14.5px;line-height:1.5;position:relative}.ttk-how li:before{content:"";background:#b9dc4a;border-radius:3px;width:8px;height:8px;position:absolute;top:8px;left:4px}.ttk-link{color:#173f32;border:1.5px solid #cfd9c9;border-radius:999px;align-self:flex-start;margin-top:auto;padding:8px 14px;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s}.ttk-link:hover{background:#f1f7ec;border-color:#245b48}.ttk-cta{color:#fff;background:radial-gradient(70% 120% at 100% 0,#dff27f33,#0000 60%),linear-gradient(135deg,#1f5641,#173f32);border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;max-width:1500px;margin:40px auto 14px;padding:26px 30px;display:flex}.ttk-cta h2{margin:0;font-family:Fraunces,Georgia,serif;font-size:28px;font-weight:700}.ttk-cta p{color:#ffffffd1;margin:6px 0 0;font-size:15.5px}.ttk-cta-btn{color:#0d3b26;background:linear-gradient(#f1fbb8,#dff27f 55%,#c7ec5c);border-radius:999px;align-items:center;gap:10px;padding:14px 24px;font-size:16px;font-weight:800;text-decoration:none;transition:transform .2s;display:inline-flex;box-shadow:0 10px 26px #c7ec5c4d}.ttk-cta-btn:hover{transform:translateY(-2px)}.ttk-disclaimer{color:#7a857c;text-align:center;max-width:1500px;margin:0 auto;font-size:13px}@media (width<=700px){.ttk-progress{grid-template-columns:1fr;padding:14px;top:6px}.ttk-jump{flex-wrap:nowrap;overflow-x:auto}.ttk-jump a{flex:none}.ttk-phase{padding-left:0}.ttk-phase:before{display:none}.ttk-phase-head{margin-left:0}.ttk-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.ttk-card,.ttk-icon,.ttk-check,.ttk-check svg,.ttk-bar i{transition:none;animation:none}}.ttk-page .cg-hero h1{font-size:clamp(40px,4.4vw,64px)}.ttk-link{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.ttk-options{gap:8px;margin-top:auto;display:grid}.ttk-option{color:#1f2a24;background:#fff;border:1.5px solid #e2dccd;border-radius:14px;gap:2px;padding:10px 12px;text-decoration:none;transition:border-color .15s,transform .15s,box-shadow .15s;display:grid}.ttk-option:hover{border-color:#245b48;transform:translateY(-1px);box-shadow:0 6px 14px #173f3214}.ttk-option:focus-visible{outline-offset:2px;outline:3px solid #dff27f}.ttk-option-head{color:#173f32;justify-content:space-between;font-size:15px;display:flex}.ttk-option-price{color:#4d5a52;font-size:13px}.ttk-option-price b{color:#173f32;font-family:Fraunces,Georgia,serif;font-size:18px}.ttk-option-price em{color:#8a5a17;font-size:11.5px;font-style:normal;font-weight:700}.ttk-option-detail{color:#66736b;font-size:12.5px;line-height:1.4}.ttk-options-note{color:#7a857c;margin:2px 0 0;font-size:11.5px;line-height:1.45}
