.geo-page{--geo-green:#0e2b24;--geo-green-2:#173c32;--geo-paper:#f7f3ea;--geo-cream:#efe6d7;--geo-gold:#c79a63;background:var(--geo-paper);color:#13231e}.geo-page .c-topbar{background:#0a201a}.geo-page .site-header{background:var(--geo-green);border-bottom:1px solid rgba(255,255,255,.16)}.geo-page .site-header nav a,.geo-page .site-header .phone,.geo-page .site-header .menu small{color:#fff}.geo-page .site-header .phone small{color:#d8c4a5}.geo-page .site-header .menu span{background:#fff}.geo-page main{max-width:1500px;margin:0 auto;background:var(--geo-paper);box-shadow:0 12px 60px rgba(14,43,36,.12)}.geo-crumbs{display:flex;gap:12px;align-items:center;padding:18px 56px;background:var(--geo-green);color:#d3dcd8;font-size:12px}.geo-crumbs a{color:inherit;text-decoration:none}.geo-crumbs strong{color:#fff}.geo-hero{position:relative;min-height:610px;overflow:hidden;background:var(--geo-green)}.geo-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.geo-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,28,22,.97) 0%,rgba(5,28,22,.82) 37%,rgba(5,28,22,.28) 67%,rgba(5,28,22,.04) 100%)}.geo-hero-copy{position:relative;z-index:1;width:min(590px,52%);padding:88px 0 40px 76px;color:#fff}.geo-page .eyebrow{color:#d9aa72;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.geo-hero h1{margin:17px 0 20px;font:600 clamp(48px,5.2vw,78px)/.98 "Playfair Display",serif}.geo-hero-copy>p:not(.eyebrow){max-width:560px;color:#eef1ef;font-size:17px;line-height:1.65}.geo-actions{display:flex;gap:16px;margin-top:28px}.geo-actions a{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:0 24px;border:1px solid rgba(255,255,255,.75);color:#fff;font-size:13px;font-weight:700;text-decoration:none}.geo-actions .primary{background:linear-gradient(135deg,#e3c49d,#c58d51);border-color:#e5cba9;color:#13231e}.geo-trust{display:flex;gap:28px;flex-wrap:wrap;margin:28px 0 0;padding:0;list-style:none}.geo-trust li{position:relative;padding-left:23px;color:#fff;font-size:12px;font-weight:600}.geo-trust li:before{content:"✓";position:absolute;left:0;top:-2px;display:grid;width:16px;height:16px;place-items:center;border-radius:50%;background:#d6ad77;color:#10261f;font-size:10px}.geo-services-local{display:grid;grid-template-columns:minmax(0,2fr) minmax(370px,1fr)}.geo-services{padding:54px 52px 52px}.geo-services h2,.geo-local-panel h2,.geo-prices h2,.geo-prep h2,.geo-booking h2,.geo-faq h2,.geo-final-cta h2{margin:10px 0 15px;font:600 clamp(34px,3.4vw,50px)/1.05 "Playfair Display",serif}.geo-section-intro{max-width:820px;margin-bottom:30px;color:#4b5a54;line-height:1.65}.geo-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.geo-service-card{display:grid;grid-template-columns:115px 1fr;min-height:190px;background:#fff;border:1px solid rgba(16,43,35,.10);box-shadow:0 8px 25px rgba(16,43,35,.045);overflow:hidden}.geo-service-card>img{width:100%;height:100%;object-fit:cover}.geo-service-card>div{display:flex;flex-direction:column;padding:18px}.geo-service-card h3{margin:0 0 8px;font:600 20px/1.12 "Playfair Display",serif}.geo-service-card p{margin:0 0 12px;color:#53605b;font-size:12px;line-height:1.55}.geo-service-card a{margin-top:auto;color:#14261f;font-size:12px;font-weight:700;text-decoration:none}.geo-service-card a span{float:right;display:grid;width:25px;height:25px;place-items:center;border:1px solid #b9864f;border-radius:50%;color:#a96c34}.geo-all-services{display:inline-block;margin-top:24px;color:#16271f;font-weight:700;text-decoration:none}.geo-local-panel{padding:54px 42px 34px;background:linear-gradient(145deg,#173d32,#0b251e);color:#fff}.geo-local-panel>p:not(.eyebrow){color:#d9e1dd;font-size:14px;line-height:1.68}.geo-local-panel>ul{display:grid;gap:12px;margin:24px 0;padding:0;list-style:none}.geo-local-panel>ul li{position:relative;padding-left:25px;color:#fff;font-size:13px}.geo-local-panel>ul li:before{content:"✓";position:absolute;left:0;color:#d7a66b}.geo-mini-map{position:relative;height:310px;margin:30px -18px -8px}.geo-mini-map svg{width:100%;height:100%}.geo-mini-map circle{fill:none;stroke:rgba(219,176,120,.18);stroke-dasharray:5 7}.geo-mini-map path{fill:none;stroke:rgba(238,228,209,.22);stroke-width:2}.geo-mini-map a{position:absolute;min-width:92px;padding:8px 10px;border:1px solid rgba(218,177,123,.34);background:rgba(4,22,17,.72);color:#fff;text-decoration:none}.geo-mini-map a i{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#d39d61}.geo-mini-map a b{font-size:11px}.geo-mini-map a small{display:block;margin-left:14px;color:#c8d2cd;font-size:8px}.geo-mini-map a.active{min-width:122px;border-color:#d6aa72;background:#f0e1ca;color:#183028;box-shadow:0 0 0 8px rgba(205,159,102,.08)}.geo-mini-map a.active small{color:#56645f}.geo-mini-map .highbury{left:39%;top:16%}.geo-mini-map .angel{left:10%;bottom:15%}.geo-mini-map .canonbury{right:3%;top:49%}.geo-mini-map .barnsbury{left:4%;top:48%}.geo-mini-map .holloway{right:24%;bottom:5%}.geo-prices{display:grid;grid-template-columns:.72fr 1.28fr;gap:50px;padding:68px 56px;background:#f0e8dc}.geo-prices>div:first-child p:not(.eyebrow){max-width:430px;color:#52615a;line-height:1.7}.geo-table-wrap{overflow:auto;background:#fff;padding:12px 24px 18px;box-shadow:0 18px 45px rgba(20,38,31,.10)}.geo-table-wrap table{width:100%;border-collapse:collapse;min-width:680px}.geo-table-wrap th,.geo-table-wrap td{padding:15px 10px;border-bottom:1px solid #d8d2c9;text-align:left;font-size:12px;line-height:1.4}.geo-table-wrap th{color:#173026;font-weight:700}.geo-table-wrap thead th{color:#9c622d;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.geo-table-wrap>p{margin:14px 0 0;color:#61706a;font-size:11px;line-height:1.5}.geo-prep{padding:68px 56px;background:#fbf9f4}.geo-prep>div:first-child{display:grid;grid-template-columns:.55fr 1.45fr;align-items:end;margin-bottom:32px}.geo-prep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.geo-prep article{position:relative;min-height:220px;padding:28px;border:1px solid rgba(20,45,36,.13);background:#fff}.geo-prep article span{color:#b77d44;font:600 28px "Playfair Display",serif}.geo-prep article h3{margin:28px 0 10px;font:600 23px "Playfair Display",serif}.geo-prep article p{color:#53605b;font-size:13px;line-height:1.6}.geo-booking{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;padding:68px 56px;background:radial-gradient(circle at 10% 20%,rgba(204,159,103,.15),transparent 25%),#102e26;color:#fff}.geo-booking>div>a{color:#fff;font-size:12px;font-weight:700}.geo-booking ol{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;list-style:none}.geo-booking li{min-height:220px;padding:25px;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.035)}.geo-booking li span{color:#d9ac74;font:600 24px "Playfair Display",serif}.geo-booking li h3{margin:36px 0 9px;font:600 22px/1.1 "Playfair Display",serif}.geo-booking li p{color:#ced8d3;font-size:12px;line-height:1.55}.geo-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;padding:70px 56px;background:#f4eee4}.geo-faq>div:first-child>p:not(.eyebrow){color:#5b6762}.geo-faq details{margin-bottom:10px;border:1px solid rgba(18,45,36,.14);background:#fff}.geo-faq summary{padding:18px 54px 18px 20px;cursor:pointer;font-weight:700;list-style:none}.geo-faq summary:after{content:"+";float:right;margin-right:-35px;color:#a8713a}.geo-faq details[open] summary:after{content:"−"}.geo-faq details p{margin:0;padding:0 20px 20px;color:#52605a;font-size:13px;line-height:1.65}.geo-final-cta{display:grid;grid-template-columns:1fr 1.2fr;min-height:390px;background:#fff}.geo-final-cta>img{width:100%;height:100%;object-fit:cover}.geo-final-cta>div{align-self:center;padding:52px}.geo-final-cta>div>p:not(.eyebrow){max-width:610px;color:#53615b;line-height:1.65}.geo-final-cta .geo-actions a:not(.primary){border-color:#173329;color:#173329}.geo-final-cta .geo-trust li{color:#24362f}.geo-page .premium-footer{max-width:1500px;margin:0 auto}.geo-page .mobile-call{display:none}
@media(max-width:1050px){.geo-services-local{grid-template-columns:1fr}.geo-local-panel{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.geo-local-panel .geo-mini-map{grid-column:2;grid-row:1/7}.geo-service-grid{grid-template-columns:1fr 1fr}.geo-prices{grid-template-columns:1fr}.geo-prep>div:first-child{grid-template-columns:1fr}.geo-booking,.geo-faq{grid-template-columns:1fr}.geo-final-cta{grid-template-columns:.9fr 1.1fr}}
@media(max-width:800px){.geo-page .c-topbar{display:none}.geo-page .site-header{background:#102e26}.geo-page .site-header .premium-brand img{max-width:170px}.geo-page main{box-shadow:none}.geo-crumbs{display:none}.geo-hero{min-height:0;padding-top:0}.geo-hero>img,.geo-hero-shade{height:100%;min-height:580px}.geo-hero-shade{background:linear-gradient(180deg,rgba(5,28,22,.45),rgba(5,28,22,.96) 68%)}.geo-hero-copy{width:auto;padding:92px 20px 24px}.geo-hero h1{font-size:42px}.geo-hero-copy>p:not(.eyebrow){font-size:14px}.geo-actions{display:grid;grid-template-columns:1fr}.geo-actions a{width:100%}.geo-trust{display:grid;grid-template-columns:1fr 1fr;gap:15px 18px}.geo-services{padding:42px 18px}.geo-services h2,.geo-local-panel h2,.geo-prices h2,.geo-prep h2,.geo-booking h2,.geo-faq h2,.geo-final-cta h2{font-size:34px}.geo-service-grid{grid-template-columns:1fr}.geo-service-card{grid-template-columns:96px 1fr;min-height:165px}.geo-service-card>div{padding:15px}.geo-service-card h3{font-size:18px}.geo-service-card p{font-size:11px}.geo-local-panel{display:block;padding:42px 20px 26px}.geo-local-panel>p:not(.eyebrow){font-size:13px}.geo-mini-map{height:300px;margin-top:24px}.geo-prices{padding:48px 18px;gap:22px}.geo-table-wrap{margin:0 -18px;padding:8px 18px 15px}.geo-table-wrap table{min-width:720px}.geo-prep{padding:48px 18px}.geo-prep-grid{grid-template-columns:1fr}.geo-prep article{min-height:0}.geo-booking{padding:48px 18px;gap:30px}.geo-booking ol{grid-template-columns:1fr}.geo-booking li{min-height:170px}.geo-booking li h3{margin-top:24px}.geo-faq{padding:50px 18px;gap:24px}.geo-final-cta{grid-template-columns:1fr}.geo-final-cta>img{height:280px}.geo-final-cta>div{padding:42px 18px}.geo-page .premium-footer{margin-bottom:72px}.geo-page .mobile-call{display:flex}}
@media(max-width:430px){.geo-hero>img,.geo-hero-shade{min-height:620px}.geo-hero-copy{padding-top:86px}.geo-hero h1{font-size:39px}.geo-service-card{grid-template-columns:88px 1fr}.geo-mini-map a{min-width:78px;padding:6px}.geo-mini-map a.active{min-width:100px}.geo-mini-map .highbury{left:34%}.geo-mini-map .canonbury{right:0}.geo-mini-map .barnsbury{left:0}.geo-mini-map .holloway{right:15%}}
.geo-page main{width:100%;max-width:none;margin:0;background:var(--geo-paper);box-shadow:none}.geo-page .premium-footer{width:100%;max-width:none;margin:0}
.geo-prep article h3{margin:6px 0 12px}.geo-booking li h3{margin:18px 0 9px}.geo-page .site-header .premium-brand img{width:218px;max-width:none}
@media(max-width:800px){.geo-page .site-header .premium-brand img{width:205px;max-width:none}}
.geo-hero-copy{padding-left:110px}
@media(max-width:800px){.geo-hero-copy{padding-left:20px}}
.concept-c a.map-pin{text-decoration:none}.concept-c .map-foot a{padding:0 16px;border-right:1px solid rgba(21,32,29,.2);color:#66716b;font-size:11px;text-decoration:none}.concept-c .map-foot a:last-child{border:0;padding-right:0}
@media(max-width:800px){.concept-c .map-foot a{padding:6px 10px;border:1px solid rgba(21,32,29,.15)}}
.geo-hero h1{font-size:clamp(40px,4.1vw,62px);line-height:1.02}
@media(max-width:800px){.geo-hero h1{font-size:40px}}
@media(max-width:430px){.geo-hero h1{font-size:37px}}
