*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper,#f5f1e8);color:var(--ink,#30392e);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.05;font-weight:500;overflow-wrap:anywhere}h1{font-size:clamp(3.2rem,6.6vw,6.7rem);letter-spacing:-.045em}h2{font-size:clamp(2.3rem,4vw,4.25rem);letter-spacing:-.045em}h3{font-size:1.5rem;letter-spacing:-.025em}.wrap{width:min(100% - 7.5%,1240px);margin-inline:auto}.skip{position:fixed;left:12px;top:-60px;z-index:20;background:#fff;color:#111;padding:10px 16px}.skip:focus{top:10px}.site-head{position:relative;z-index:2;border-bottom:1px solid var(--line);background:var(--paper)}.head-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:26px}.wordmark{min-width:0;font-size:1.45rem;font-weight:700;letter-spacing:-.04em;border:0;background:none;color:inherit;padding:0;text-align:left}.wordmark span{display:block}.site-nav{flex-shrink:0;display:flex;align-items:center;gap:28px}.nav-item{border:0;background:none;color:inherit;text-decoration:none;padding:7px 0;font-size:.86rem;font-weight:600;border-bottom:1px solid transparent}.nav-item[aria-current=page]{border-bottom-color:currentColor}.nav-item:hover{opacity:.7}.nav-quote{padding:11px 20px;background:var(--accent);color:var(--button-ink);border:1px solid var(--accent)}.eyebrow{font-size:.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;display:block;margin-bottom:20px}.hero{position:relative;isolation:isolate}.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-block:64px 80px}.hero-copy{min-width:0;max-width:620px;position:relative;z-index:1}.hero-copy h1{margin-bottom:28px}.hero-copy p{max-width:460px;margin-bottom:34px;font-size:1.06rem}.hero-img{height:590px}.site-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid var(--accent);background:var(--accent);color:var(--button-ink);padding:16px 24px;font-weight:600;font-size:.87rem;text-decoration:none}.site-button::after{content:'↗';font-size:1.25rem;line-height:1}.site-button:hover{filter:brightness(.93)}.site-button-secondary{background:transparent;border-color:currentColor;color:inherit}.text-button{border:0;background:none;padding:0 0 6px;color:inherit;border-bottom:1px solid currentColor;display:inline-flex;gap:24px;align-items:center;font-size:.86rem;font-weight:600}.text-button::after{content:'↗';font-size:1.1rem}.content-section{position:relative;padding-block:90px;border-top:1px solid var(--line)}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:42px}.section-intro h2{max-width:580px}.section-intro p{max-width:340px;font-size:.95rem}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.service-card{border-top:1px solid var(--ink);padding-top:21px;position:relative}.service-number{font-size:.7rem;display:block;margin-bottom:35px;letter-spacing:.12em}.service-card h3{margin-bottom:18px}.service-card p{font-size:.9rem;max-width:360px;min-height:82px}.service-price{font-size:.9rem;font-weight:700;margin-top:28px;display:block}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.about-image{height:550px}.about-copy h2{margin-bottom:25px}.about-copy p{margin-bottom:30px;max-width:480px}.gallery-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:36px;align-items:stretch}.gallery-image{height:460px}.gallery-caption{display:flex;flex-direction:column;justify-content:space-between;padding:30px;background:var(--tint)}.gallery-caption h2{font-size:2.6rem;margin-bottom:22px}.gallery-caption p{font-size:.92rem}.gallery-label{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;margin-top:35px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.contact-copy h2{margin-bottom:25px}.contact-copy p{max-width:400px;margin-bottom:28px}.contact-details{display:grid;gap:15px}.detail-label{font-size:.64rem;text-transform:uppercase;letter-spacing:.13em;display:block;margin-bottom:4px}.contact-details a{display:inline-block;text-decoration:none;border-bottom:1px solid currentColor;overflow-wrap:anywhere}.sample-form{display:grid;gap:18px;padding-top:5px}.sample-form label{display:grid;gap:7px;font-size:.77rem;font-weight:600}.sample-form input,.sample-form textarea{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);min-width:0}.sample-form textarea{resize:vertical;min-height:125px}.sample-form .site-button{justify-self:start}.form-note{font-size:.74rem;max-width:380px;opacity:.75}.form-status{font-size:.85rem;padding:14px;border:1px solid var(--line)}.site-foot{background:var(--ink);color:var(--paper);padding-block:52px 24px}.footer-top{display:flex;justify-content:space-between;gap:40px;margin-bottom:45px}.footer-brand{font-size:1.6rem;letter-spacing:-.04em}.footer-top p{font-size:.8rem;margin-top:10px;max-width:300px;opacity:.8}.footer-nav{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}.footer-nav .nav-item{font-size:.8rem}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:20px;border-top:1px solid #ffffff35;font-size:.67rem;opacity:.8}.page-intro{padding-block:70px 55px;border-bottom:1px solid var(--line)}.page-intro h1{font-size:clamp(3rem,5.4vw,5.3rem);max-width:850px;margin-bottom:24px}.page-intro p{max-width:650px;font-size:1.05rem}.page-intro+.content-section{border-top:0}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:48px}.process-step{padding-top:22px;border-top:1px solid var(--line)}.process-step .eyebrow{margin-bottom:20px}.process-step h3{font-size:1.3rem;margin-bottom:16px}.process-step p{font-size:.9rem}.cta-strip{padding-block:60px;background:var(--tint)}.cta-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-strip h2{font-size:2.8rem;max-width:650px}.info-band{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-block:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.info-band div{font-size:.8rem}.info-band b{display:block;font-size:1rem;margin-bottom:3px}.opening-hours{display:grid;gap:12px;padding-block:26px;border-top:1px solid var(--line);margin-top:25px}.opening-hours p{display:flex;justify-content:space-between;gap:20px;margin:0;font-size:.88rem}.map-placeholder{background:var(--tint);border:1px solid var(--line);padding:34px;display:flex;align-items:center;justify-content:center;gap:18px;min-height:150px;margin-top:24px}.map-pin{font-size:2.5rem}.map-placeholder p{font-size:.84rem;max-width:320px}.site-studio{--line:color-mix(in srgb,var(--ink) 22%,transparent);--tint:color-mix(in srgb,var(--accent) 9%,var(--paper));--button-ink:#fff}.site-studio h1,.site-studio h2,.site-studio h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}.site-studio .wordmark{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:1.7rem}.site-studio .hero-img{border-radius:50% 50% 0 0}.site-studio .hero-copy h1{max-width:600px}.site-studio .about{background:var(--tint)}.site-studio .about-image{object-position:center}.site-trades{--line:color-mix(in srgb,var(--ink) 20%,transparent);--tint:color-mix(in srgb,var(--accent) 7%,var(--paper));--button-ink:#fff}.site-trades .topline{background:var(--ink);color:var(--paper);font-size:.67rem;padding-block:9px}.site-trades .topline .wrap{display:flex;justify-content:space-between;gap:20px}.site-trades .wordmark{display:inline-flex;align-items:center;font-size:1.6rem;text-transform:uppercase;font-weight:800;letter-spacing:-.065em}.site-trades .wordmark::before{content:'↗';font-size:1.6rem;background:var(--accent);color:var(--button-ink);padding:1px 7px;margin-right:8px}.site-trades .hero{background:var(--ink);color:var(--paper)}.site-trades .hero-inner{padding-block:0;gap:5%;width:100%;margin:0;grid-template-columns:1fr 1fr;align-items:stretch}.site-trades .hero-copy{padding:65px 0 70px 7.5%;align-self:center;max-width:700px}.site-trades .hero-copy h1{font-size:clamp(3rem,5.5vw,5.8rem);font-weight:750;line-height:1.04;letter-spacing:-.05em}.site-trades .hero-img{height:100%;min-height:580px}.site-trades .hero .eyebrow{color:var(--paper)}.site-trades .hero .site-button{background:var(--accent)}.site-trades .services{background:var(--paper)}.site-trades .service-card{padding:27px;background:var(--tint);border-top:4px solid var(--accent)}.site-trades .service-number{color:var(--accent);font-weight:700;margin-bottom:27px}.site-trades h2{font-weight:700}.site-trades .about-image{height:490px}.site-trades .gallery-caption{background:var(--ink);color:var(--paper)}.site-cafe{--line:color-mix(in srgb,var(--ink) 24%,transparent);--tint:color-mix(in srgb,var(--accent) 10%,var(--paper));--button-ink:#fff}.site-cafe h1,.site-cafe h2,.site-cafe h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}.site-cafe .head-inner{padding-block:20px}.site-cafe .wordmark{font-size:1.55rem;font-family:Georgia,'Times New Roman',serif;font-weight:400}.site-cafe .hero{margin:0 3.75%;background:var(--ink);color:white}.site-cafe .hero-inner{width:100%;padding:0;display:block;min-height:640px}.site-cafe .hero-copy{position:relative;z-index:1;margin:auto;text-align:center;padding:125px 30px 115px;max-width:800px}.site-cafe .hero-copy h1{font-size:clamp(3.7rem,7.6vw,7.4rem);margin-bottom:25px}.site-cafe .hero-copy p{max-width:470px;margin:0 auto 30px}.site-cafe .hero-img{position:absolute;inset:0;height:100%;z-index:-1;filter:brightness(.42)}.site-cafe .hero-copy .site-button{background:var(--paper);border-color:var(--paper);color:var(--ink)}.site-cafe .services{border-top:0}.site-cafe .service-card{border-top:0;padding:32px;background:var(--tint)}.site-cafe .service-card h3{font-size:2rem}.site-cafe .service-number{display:none}.site-cafe .service-price{font-family:Georgia,'Times New Roman',serif;font-size:1.5rem;font-weight:400;padding-top:22px;border-top:1px solid var(--line)}.site-cafe .about-image{border-radius:50% 50% 0 0;height:540px}.site-cafe .about{background:var(--tint)}.site-cafe .gallery-caption{background:var(--paper);border:1px solid var(--line)}.site-cafe .page-intro{text-align:center}.site-cafe .page-intro h1,.site-cafe .page-intro p{margin-inline:auto}.site-cafe .opening-hours{margin-bottom:25px}.site-cafe .footer-brand{font-family:Georgia,'Times New Roman',serif}.type-modern h1,.type-modern h2,.type-modern h3{font-family:Arial,Helvetica,sans-serif!important;font-weight:500}.type-bold h1,.type-bold h2,.type-bold h3{font-family:Arial,Helvetica,sans-serif!important;font-weight:800;letter-spacing:-.06em}.type-editorial.site-trades h1,.type-editorial.site-trades h2,.type-editorial.site-trades h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}.layout-centered .hero-inner{display:flex;flex-direction:column;gap:42px;padding:60px 0 0;width:min(100% - 7.5%,1240px);margin:auto}.layout-centered .hero-copy{padding:0!important;text-align:center;max-width:790px;margin-inline:auto}.layout-centered .hero-copy h1{max-width:none}.layout-centered .hero-copy p{margin-inline:auto}.layout-centered .hero-img{position:static;width:100%;height:480px;min-height:0;filter:none;border-radius:0}.layout-centered.site-cafe .hero{margin:0;background:var(--paper);color:var(--ink)}.layout-centered.site-cafe .hero-inner{min-height:0}.layout-centered.site-cafe .hero .site-button{background:var(--accent);color:var(--button-ink);border-color:var(--accent)}.layout-cover:not(.site-cafe) .hero-inner{display:block;width:100%;padding:0;min-height:650px}.layout-cover:not(.site-cafe) .hero-img{position:absolute;inset:0;width:100%;height:100%;min-height:0;filter:brightness(.4);border-radius:0;z-index:-1}.layout-cover:not(.site-cafe) .hero-copy{color:#fff;padding:100px 3.75%;max-width:820px;min-height:650px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.layout-cover:not(.site-cafe) .hero-copy .site-button{color:var(--button-ink)}.layout-split.site-cafe .hero{background:var(--paper);color:var(--ink);margin:0}.layout-split.site-cafe .hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding-block:60px 70px;width:min(100% - 7.5%,1240px);min-height:0;margin:auto}.layout-split.site-cafe .hero-copy{padding:0;text-align:left}.layout-split.site-cafe .hero-copy h1{font-size:clamp(3.2rem,6.6vw,6.7rem)}.layout-split.site-cafe .hero-copy p{margin-inline:0}.layout-split.site-cafe .hero-img{position:static;filter:none;height:530px;z-index:auto}.layout-split.site-cafe .hero .site-button{color:var(--button-ink);background:var(--accent);border-color:var(--accent)}[data-field]{overflow-wrap:anywhere;min-width:0}.about-copy,.contact-copy,.gallery-caption{min-width:0}[contenteditable=true]{min-height:1.1em;cursor:text;outline:1px dashed transparent;outline-offset:5px;min-width:12px;white-space:pre-line;overflow-wrap:anywhere}[contenteditable=true]:hover,[contenteditable=true]:focus{outline-color:currentColor;background:color-mix(in srgb,var(--paper) 12%,transparent)}[contenteditable=true]:focus{outline-style:solid}.edit-mode [data-section]{cursor:pointer}.edit-mode [data-section].is-selected{box-shadow:inset 0 0 0 2px #4a76ee}.edit-mode [data-section].is-selected::after{content:attr(data-label);position:absolute;right:0;top:0;background:#4a76ee;color:white;font-family:Arial,Helvetica,sans-serif;font-size:10px;line-height:1;padding:7px 10px;letter-spacing:.05em;z-index:5;pointer-events:none}.edit-mode .site-button,.edit-mode .text-button{cursor:pointer}.preview-message{position:fixed;bottom:20px;left:20px;right:20px;padding:16px 20px;background:#fff;color:#1f252e;border:1px solid #ccd1d8;box-shadow:0 6px 28px #0002;font-size:.86rem;z-index:10}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #4a76ee;outline-offset:4px}
@media(min-width:1550px){.hero-copy h1{font-size:6.7rem}}
@media(max-width:850px){.site-nav{gap:18px}.head-inner{gap:20px}.wordmark{font-size:1.2rem}.nav-item{font-size:.75rem}.nav-quote{padding:9px 12px}.hero-inner{gap:5%;padding-block:45px 55px}.hero-img{height:460px}.hero-copy h1{font-size:3.5rem}.hero-copy p{font-size:.95rem}.content-section{padding-block:65px}.section-intro{gap:30px}.services-grid{gap:18px}.service-card h3{font-size:1.3rem}.service-card p{min-height:120px}.about-grid,.contact-grid{gap:6%}.about-image{height:440px}.gallery-image{height:360px}.gallery-caption{padding:22px}.gallery-caption h2{font-size:2rem}.site-trades .hero-copy{padding-block:50px}.site-trades .hero-copy h1{font-size:3.5rem}.site-trades .hero-img{min-height:490px}.site-trades .service-card,.site-cafe .service-card{padding:22px}.site-cafe .hero-copy{padding-block:95px}.site-cafe .hero-inner{min-height:560px}.site-cafe .hero-copy h1{font-size:5rem}.footer-nav{gap:18px}.process-grid{gap:20px}}
@media(max-width:620px){.wrap{width:calc(100% - 40px)}.head-inner{display:block;padding-block:19px 15px}.wordmark{font-size:1.4rem}.wordmark span{display:inline}.site-nav{margin-top:16px;justify-content:space-between;gap:12px;flex-wrap:wrap}.nav-item{font-size:.76rem;padding:6px 0}.nav-quote{padding:6px 10px}.hero-inner,.layout-split.site-cafe .hero-inner{grid-template-columns:1fr;gap:30px;padding-block:38px 40px;width:calc(100% - 40px)}.hero-copy h1,.site-trades .hero-copy h1,.layout-split.site-cafe .hero-copy h1{font-size:clamp(2.6rem,13.5vw,3.3rem)}.hero-copy h1{margin-bottom:22px}.eyebrow{font-size:.63rem;margin-bottom:17px}.hero-copy p{font-size:.97rem;margin-bottom:27px}.hero-img,.layout-split.site-cafe .hero-img{height:360px}.site-button{padding:14px 19px;font-size:.82rem}.content-section{padding-block:46px}.section-intro{display:block;margin-bottom:30px}.section-intro h2{font-size:2.6rem;max-width:100%}.section-intro p{margin-top:20px;max-width:100%}.services-grid{grid-template-columns:1fr;gap:28px}.service-card h3{font-size:1.65rem}.service-card p{min-height:0;max-width:100%;font-size:.96rem}.service-number{margin-bottom:22px}.service-price{margin-top:18px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.about-image,.site-trades .about-image,.site-cafe .about-image{height:360px}.about-copy h2,.contact-copy h2{font-size:2.6rem}.about-copy p{margin-bottom:24px;font-size:.96rem}.gallery-grid{grid-template-columns:1fr;gap:0}.gallery-image{height:330px}.gallery-caption{padding:28px}.gallery-caption h2{font-size:2rem;max-width:320px}.gallery-label{margin-top:22px}.sample-form{gap:16px}.sample-form label{font-size:.8rem}.sample-form input,.sample-form textarea{font-size:16px}.footer-top{display:block;margin-bottom:32px}.footer-nav{margin-top:25px;gap:22px}.footer-bottom{display:block;line-height:1.8}.footer-bottom span{display:block}.site-foot{padding-block:36px 20px}.page-intro{padding-block:42px 35px}.page-intro h1{font-size:3.3rem;margin-bottom:21px}.page-intro p{font-size:.96rem}.process-grid{grid-template-columns:1fr;gap:28px}.process-step h3{font-size:1.5rem}.cta-strip{padding-block:42px}.cta-strip .wrap{display:block}.cta-strip h2{font-size:2.5rem;margin-bottom:26px}.info-band{grid-template-columns:1fr;gap:18px}.info-band div{font-size:.82rem}.site-trades .topline{font-size:.58rem}.site-trades .topline .wrap{display:block}.site-trades .topline .wrap span:last-child{display:none}.site-trades .wordmark{font-size:1.45rem}.site-trades .hero-inner{grid-template-columns:1fr;width:100%;gap:0;padding:0}.site-trades .hero-copy{padding:40px 20px 42px!important}.site-trades .hero-img{height:320px;min-height:0}.site-trades .service-card{padding:26px}.site-cafe .hero{margin:0 20px}.site-cafe .hero-inner{min-height:550px}.site-cafe .hero-copy{padding:78px 20px 74px}.site-cafe .hero-copy h1{font-size:3.8rem}.site-cafe .hero-copy p{font-size:.93rem}.site-cafe .hero-img{height:100%}.site-cafe .service-card{padding:28px}.site-cafe .service-card h3{font-size:2rem}.site-cafe .service-price{font-size:1.4rem}.layout-centered .hero-inner{padding-top:38px;width:calc(100% - 40px);gap:32px}.layout-centered.site-trades .hero-copy{padding:0!important}.layout-centered .hero-img{height:330px}.layout-centered.site-cafe .hero-inner{min-height:0}.layout-centered.site-cafe .hero-copy h1{font-size:3.4rem}.layout-cover:not(.site-cafe) .hero-inner{min-height:580px}.layout-cover:not(.site-cafe) .hero-copy{padding:65px 20px;min-height:580px}.layout-cover:not(.site-cafe) .hero-img{height:100%;min-height:0}.layout-cover.site-trades .hero-copy{padding:60px 20px!important}.edit-mode [data-section].is-selected::after{font-size:9px;padding:6px 8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
