
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/barlow-condensed-800.ttf?v=73bc9e17231e9073780d) format('truetype');
}
@font-face {
  font-family: 'Barlow Condensed';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/barlow-condensed-900.ttf?v=0ec6b3cca2df54f108f8) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/dm-sans-400.ttf?v=b0ae3e89a7d3ef2b1838) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/dm-sans-700.ttf?v=2a8e7f713ee79fbccdef) format('truetype');
}
:root{--ink:#20251d;--pink:#ff68ae;--lime:#d6f35a;--paper:#fafaf6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #8c1950;outline-offset:5px}.wrap{width:min(1240px,90%);margin:auto}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{text-decoration:none;line-height:.9;font-size:24px;font-weight:950;letter-spacing:-1px}.logo small{display:block;font-size:11px;letter-spacing:2.5px;margin-top:9px}.navlinks{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:700}.navlinks a{text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:54px;padding:14px 25px;background:var(--ink);color:white;text-decoration:none;border:1px solid var(--ink);border-radius:6px;font-weight:700;transition:transform .2s,background .2s}.button:hover{background:#39452c;transform:translateY(-2px)}.button.lime{background:var(--lime);color:var(--ink)}.button.lime:hover{background:#e3ff7a}.hero{background:var(--pink);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:55px;align-items:center;padding:70px 0 75px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:13px;font-weight:800;display:block;margin-bottom:22px}.hero h1{font-size:clamp(60px,7.9vw,108px);line-height:.9;letter-spacing:-6px;margin:0 0 27px;font-weight:950}.hero h1 span{display:block}.hero h1 .outlined{color:var(--pink);-webkit-text-stroke:2px var(--ink)}.hero p{max-width:410px;font-size:19px;line-height:1.6;margin:0 0 28px}.hero-note{display:block;margin-top:16px;font-size:14px}.visual{position:relative;padding:15px 8px 12px}.photo{background:white;padding:13px 13px 0;transform:rotate(3deg);box-shadow:8px 10px 0 rgba(32,37,29,.16)}.photo img{display:block;width:100%;height:385px;object-fit:cover}.photo figcaption{font-family:Georgia,serif;font-size:22px;font-style:italic;text-align:center;padding:14px 0 18px}.photo{margin:0}.price{position:absolute;right:-15px;top:-15px;width:123px;height:123px;border-radius:50%;background:var(--lime);border:1px solid var(--ink);display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(9deg);line-height:1.2}.price strong{font-size:36px;letter-spacing:-2px}.price small{font-size:12px}.ribbon{background:var(--lime);border-bottom:1px solid var(--ink)}.facts{display:grid;grid-template-columns:repeat(4,1fr);padding:24px 0;gap:20px;text-align:center;font-size:14px;font-weight:700}.facts span+span{border-left:1px solid #697b32}.section{padding:90px 0}.intro{display:grid;grid-template-columns:1fr 1fr;gap:90px}.section h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-2px;margin:0 0 25px}.intro p{margin:0 0 20px;font-size:18px}.included{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #bfc1b9;margin-top:50px;padding-top:35px}.included .num{font-size:14px;font-weight:bold;color:#686d60}.included h3{font-size:21px;margin:10px 0}.included p{margin:0;color:#53584d}.details{background:var(--ink);color:var(--paper)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.detail-image{width:100%;height:370px;object-fit:cover;border-radius:8px}.details .eyebrow{color:var(--lime)}.details p{color:#d5d9cf}.details ul{list-style:none;padding:0;margin:25px 0 0}.details li{padding:12px 0;border-top:1px solid #4e5647;display:flex;gap:14px}.details li:before{content:'✓';color:var(--lime)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}details{border-bottom:1px solid #bfc1b9;padding:18px 0}summary{cursor:pointer;font-size:18px;font-weight:bold;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';font-size:24px;line-height:1}details[open] summary:after{content:'−'}details p{margin:14px 0 0;color:#53584d}.cta{background:var(--lime);text-align:center;padding:70px 20px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.cta h2{font-size:clamp(38px,5vw,66px);line-height:1.05;letter-spacing:-3px;margin:0 0 20px}.cta p{margin:0 0 25px}.contact-line{margin-top:22px;font-size:14px}.footer{padding:35px 0;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer p{font-size:13px;color:#62675a}.footer-links{display:flex;gap:22px;font-size:14px}.footer-links a{text-decoration:none}.skip{position:absolute;left:10px;top:-90px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}
@media(min-width:1450px){.hero-grid{padding:90px 0}.photo img{height:440px}}@media(max-width:900px){.navlinks{gap:20px}.hero-grid{gap:25px}.hero h1{letter-spacing:-4px}.photo img{height:315px}.price{right:-5px;width:103px;height:103px}.intro,.detail-grid,.faq-grid{gap:40px}.facts{font-size:13px;gap:10px}.section{padding:65px 0}}@media(max-width:650px){.nav{height:82px}.logo{font-size:21px}.navlinks>a:not(.button){display:none}.navlinks .button{min-height:44px;padding:10px 16px;font-size:13px}.hero-grid{grid-template-columns:1fr;padding:45px 0 50px;gap:38px}.hero h1{font-size:clamp(52px,12vw,76px);letter-spacing:-3px}.hero p{font-size:18px;max-width:100%}.visual{max-width:460px;width:100%;margin:auto;padding:10px}.photo img{height:300px}.facts{grid-template-columns:1fr 1fr;row-gap:16px}.facts span:nth-child(3){border-left:0}.intro,.detail-grid,.faq-grid{grid-template-columns:1fr;gap:28px}.included{grid-template-columns:1fr;gap:25px;margin-top:30px}.included>div{display:grid;grid-template-columns:30px 1fr;column-gap:12px}.included .num{grid-row:1/3;padding-top:13px}.included p{grid-column:2}.detail-image{height:300px}.footer{align-items:flex-start;flex-direction:column;gap:15px}.footer-links{flex-wrap:wrap}.cta h2{letter-spacing:-2px}.section h2{letter-spacing:-1px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.logo{display:block;flex:0 1 245px;min-width:0}.brand-image{display:block;width:245px;max-width:100%;height:auto;max-height:84px;object-fit:contain;object-position:left center}.footer .logo{width:235px}.navlinks{flex-shrink:0}@media(max-width:650px){.nav{gap:12px}.nav .logo{flex-basis:175px}.brand-image{width:175px;max-height:65px}.navlinks .button{gap:10px;padding:10px 12px}.footer .brand-image{width:220px;max-height:90px}}

h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:800}
.hero h1{font-weight:900;font-size:clamp(76px,9.2vw,128px);line-height:.95;letter-spacing:-.02em}
.section h2{font-size:clamp(40px,4.5vw,60px);line-height:1.08;letter-spacing:-.012em}
.cta h2{font-size:clamp(48px,6vw,78px);line-height:1.04;letter-spacing:-.012em}
.included h3{font-size:28px;line-height:1.15;letter-spacing:0}
.photo figcaption{font-family:'DM Sans',Arial,sans-serif;font-size:19px;font-style:normal;font-weight:700}
.eyebrow{font-weight:700}.price strong{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;font-weight:800;font-size:42px;letter-spacing:0}
@media(max-width:650px){.hero h1{font-size:clamp(70px,16vw,96px);letter-spacing:-.015em}.section h2{font-size:40px;letter-spacing:-.012em}.cta h2{font-size:50px;letter-spacing:-.012em}.photo figcaption{font-size:17px}.navlinks .button{font-size:13px}}

.topic-nav{border-top:1px solid #d5d9cf;border-bottom:1px solid #d5d9cf;background:var(--paper)}.topic-nav .wrap{display:flex;gap:28px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.topic-nav a{font-size:14px;font-weight:700;text-decoration:none}.topic-nav a:hover,.topic-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.hero .hero-description{font-size:17px;max-width:470px}.hero-note a{font-weight:700}.route-title{display:block;font-size:clamp(54px,6.5vw,88px)!important;line-height:1.02!important;letter-spacing:-.015em!important}.breadcrumb{font-size:14px;margin-bottom:25px}.breadcrumb a{text-underline-offset:3px}.reading{max-width:780px}.reading h2{font-size:42px;margin-top:45px}.reading h2:first-child{margin-top:0}.reading p,.reading li{font-size:18px}.reading li{margin:12px 0}.reading a{text-underline-offset:3px}.reading h3{font-size:28px}.related{background:#f0f2e9}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-card{padding:25px;border:1px solid var(--ink);border-radius:7px;text-decoration:none;background:var(--paper)}.related-card:hover{background:var(--lime)}.related-card h3{font-size:29px;line-height:1.1;margin:0 0 12px}.related-card p{margin:0}.related .eyebrow{margin-bottom:25px}.location-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:25px}.footer-links{flex-wrap:wrap;max-width:620px}.footer address{font-size:14px;font-style:normal}.hero h1 .hero-subtitle{font-size:.28em;letter-spacing:0;line-height:1.2;margin-top:18px;font-weight:800}.price-example{background:var(--lime);padding:22px;border-radius:6px}.facts{font-size:14px}.eyebrow{font-size:14px}@media(max-width:650px){.topic-nav .wrap{gap:10px 20px}.topic-nav a{font-size:14px}.related-grid{grid-template-columns:1fr}.reading h2{font-size:36px}.route-title{font-size:56px!important}.hero .hero-description{font-size:17px}.hero-grid{padding-top:40px}.hero h1 .hero-subtitle{font-size:27px}.navlinks .button{font-size:14px}.nav .logo{flex-basis:150px}.navlinks .button span{display:none}.footer-links{gap:16px}.reading p,.reading li{font-size:17px}}

.request-cta{display:inline-flex;flex-direction:column;align-items:flex-start;gap:7px}.request-cta small{font-size:12px;line-height:1.35;font-weight:400;letter-spacing:0}.cta .request-cta{align-items:center}.nav .request-cta{align-items:center}.nav{height:auto;min-height:116px;padding-top:16px;padding-bottom:16px}.hero .group-promise{font-size:15px;line-height:1.5;margin:22px 0 0}.group-promise strong{font-size:17px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0 20px}.review-card{margin:0;padding:28px;border:1px solid #bfc1b9;border-radius:7px;display:flex;flex-direction:column;justify-content:space-between}.review-card blockquote{margin:0}.review-card blockquote p{font-size:20px;line-height:1.5;margin:0 0 26px}.review-card figcaption{font-size:14px}.review-card time{color:#53584d}.review-source{font-size:14px;text-underline-offset:4px}.location-map iframe{width:100%;height:420px;border:0;border-radius:8px;background:var(--paper)}.location-map p{font-size:14px}.navlinks{gap:22px}@media(max-width:650px){.review-grid{grid-template-columns:1fr}.location-map iframe{height:320px}.nav{min-height:100px;gap:10px}.nav .request-cta{max-width:175px}.nav .request-cta small{font-size:12px;text-align:center}.navlinks .button{font-size:13px;padding:10px}.nav .logo{flex-basis:130px}}
/* Language navigation */
header.nav{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:22px}.language-switch{display:flex;gap:4px;align-items:center;border:1px solid #bfc1b9;border-radius:7px;padding:4px}.language-switch a{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:6px;text-decoration:none;font-size:14px;font-weight:700;border-radius:4px}.language-switch a[aria-current=true]{background:var(--ink);color:white}.language-switch a:hover{background:var(--lime);color:var(--ink)}.cta .form-language-note{font-size:14px;margin-top:-10px;max-width:550px;margin-left:auto;margin-right:auto}@media(max-width:1000px){header.nav{gap:15px}.navlinks>a{display:none}}@media(max-width:700px){header.nav{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding-top:12px;padding-bottom:12px}.nav .logo{grid-column:1;grid-row:1;width:175px}.language-switch{grid-column:2;grid-row:1}.nav .navlinks{grid-column:1 / -1;grid-row:2;justify-content:center}.nav .request-cta{max-width:none;width:100%}.nav .request-cta .button{width:100%;font-size:14px}.navlinks .button span{display:inline}.nav .request-cta small{font-size:12px}}

/* Keep the direct contact action visible without covering footer content. */
body{padding-bottom:100px}
.whatsapp-button{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:50;display:inline-flex;align-items:center;justify-content:center;min-height:52px;max-width:calc(100vw - 40px);box-sizing:border-box;padding:12px 22px;border:2px solid #fff;border-radius:999px;background:#126b3b;color:#fff;font-size:1rem;font-weight:700;line-height:1.4;text-decoration:none;box-shadow:0 4px 18px #0003;text-align:center}
.whatsapp-button:hover{background:#0c512c;color:#fff}.whatsapp-button:focus-visible{outline:3px solid #20221c;outline-offset:4px}
@media(max-width:520px){.whatsapp-button{right:16px;bottom:max(16px,env(safe-area-inset-bottom));padding:12px 18px}}
/* Enquiries use the workshop's existing type and colour palette. */
.enquiry-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,80px);align-items:start}
.enquiry-intro h1{font-size:clamp(2.8rem,5vw,4.8rem);line-height:1.05;margin:20px 0}
.enquiry-intro p{max-width:34rem}.enquiry-facts{border-top:2px solid currentColor;border-bottom:2px solid currentColor;padding:22px 0;margin:28px 0}
.enquiry-panel{background:#fff;color:#20221c;border:2px solid #20221c;border-radius:16px;padding:clamp(20px,4vw,40px);box-shadow:7px 7px 0 #c7f360}
.enquiry-panel fieldset{border:0;padding:0;margin:0 0 25px;min-width:0}.enquiry-panel legend{font-size:1.35rem;font-weight:700;margin-bottom:16px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.enquiry-panel label{display:block;font-size:1rem;font-weight:600;line-height:1.5}
.enquiry-panel input,.enquiry-panel select,.enquiry-panel textarea{display:block;box-sizing:border-box;width:100%;min-width:0;margin-top:7px;padding:12px;border:1px solid #757a6e;border-radius:6px;background:#fff;color:#20221c;font:inherit;font-weight:400;font-size:1rem;min-height:48px}
.enquiry-panel :is(input,select,textarea,button,a):focus-visible{outline:3px solid #576e1d;outline-offset:3px}.enquiry-panel textarea{resize:vertical}.form-hint{font-size:.9rem;line-height:1.6;color:#4b5143}.enquiry-panel button{border:0;cursor:pointer;font:inherit;font-weight:700;min-height:52px}.enquiry-panel button:disabled{opacity:.65;cursor:wait}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-status{font-size:1rem;line-height:1.6}#enquiry-reference{overflow-wrap:anywhere;font-size:.9rem}#form-success h2{font-size:2.5rem;line-height:1.1}#price-estimate{background:#ecf6d6;border-radius:6px;padding:14px;font-size:1rem} [hidden]{display:none!important}
@media(max-width:800px){.enquiry-layout{grid-template-columns:1fr}.enquiry-intro h1{font-size:3rem}.enquiry-facts{margin:18px 0;padding:16px 0}}@media(max-width:520px){.form-grid{grid-template-columns:1fr}.enquiry-panel button{width:100%}}
