@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ff-ink:#262e2a;--ff-muted:#5a625b;--ff-green:#394b3e;--ff-paper:#f6f4ee;--ff-line:#d6d9cd;--ff-sage:#e6e9dc;--ff-white:#fffefa;--ff-serif:'DM Serif Display',Georgia,serif;--ff-sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ff-paper);color:var(--ff-ink);font:16px/1.65 var(--ff-sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}img{display:block;width:100%;height:auto}button{cursor:pointer}a,button{touch-action:manipulation}button:disabled{cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9a5a36;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--ff-serif);font-weight:400;line-height:1.08;letter-spacing:-.025em}h1{font-size:clamp(3rem,5.7vw,5.5rem)}h2{font-size:clamp(2.3rem,4vw,3.8rem)}h3{font-size:1.8rem}p{max-width:62ch}p+p{margin-top:1rem}.ff-wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.ff-section{padding-block:96px}.ff-kicker{display:block;margin-bottom:22px;font-size:.72rem;font-weight:650;letter-spacing:.16em;text-transform:uppercase}.ff-lead{font-size:1.12rem;line-height:1.7;color:var(--ff-muted)}.ff-small{font-size:.8rem;color:var(--ff-muted);line-height:1.6}.ff-text-link{text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:.88rem;font-weight:600;display:inline-block}.ff-text-link:hover{color:#6a704c}.ff-btn{display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 24px;min-height:52px;background:var(--ff-green);color:var(--ff-white);border:1px solid var(--ff-green);text-decoration:none;font-size:.88rem;font-weight:600;line-height:1.4;border-radius:2px;transition:background .18s,color .18s}.ff-btn:hover{background:#26382c}.ff-btn-light{background:var(--ff-paper);color:var(--ff-ink);border-color:var(--ff-paper)}.ff-btn-light:hover{background:#e4e9d9}.ff-btn-ghost{background:transparent;color:var(--ff-ink);border-color:var(--ff-line)}.ff-btn-ghost:hover{background:var(--ff-sage)}.ff-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:30px}.kc-skip{position:fixed;top:8px;left:8px;z-index:100;transform:translateY(-200%);padding:10px 18px;background:#fff;color:#222}.kc-skip:focus{transform:none}.ff-demo-bar{padding:9px 28px;background:var(--ff-green);color:#f4f5ed;display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;line-height:1.5;letter-spacing:.02em}.ff-demo-bar a{white-space:nowrap;text-underline-offset:3px}.ff-header{position:sticky;top:0;z-index:30;background:rgba(246,244,238,.98);border-bottom:1px solid var(--ff-line)}.ff-header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:30px}.ff-logo{font:1.65rem/1 var(--ff-serif);text-decoration:none;letter-spacing:-.035em;white-space:nowrap}.ff-logo span{display:block;font:9px/1.4 var(--ff-sans);letter-spacing:.3em;text-transform:uppercase;margin-top:9px}.ff-nav{display:flex;align-items:center;gap:28px}.ff-nav>a{font-size:.83rem;text-decoration:none;padding:10px 0}.ff-nav>a:not(.ff-btn):hover,.ff-nav>a[aria-current=page]:not(.ff-btn){box-shadow:0 1px var(--ff-green)}.ff-nav>a.ff-btn{padding:12px 19px;min-height:46px;font-size:.8rem}.ff-menu-toggle{display:none;background:none;border:1px solid var(--ff-line);padding:9px 14px;color:var(--ff-ink);min-height:44px}
.ff-hero{display:grid;grid-template-columns:.95fr 1.05fr;min-height:660px}.ff-hero-copy{padding:72px 52px 62px max(48px,calc((100vw - 1240px)/2));display:flex;flex-direction:column;justify-content:center}.ff-hero-copy h1{max-width:8.5ch}.ff-hero-copy .ff-lead{margin-top:26px;max-width:36ch;font-size:1rem}.ff-hero-copy .ff-small{margin-top:16px}.ff-hero-media{position:relative;min-width:0;overflow:hidden}.ff-hero-media img{height:100%;object-fit:cover;object-position:57% center}.ff-photo-label{position:absolute;bottom:20px;left:24px;right:24px;display:flex;justify-content:space-between;gap:10px;color:white;font-size:.7rem;text-shadow:0 1px 5px #000}.ff-hero-media:after{content:'';position:absolute;inset:75% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.25));pointer-events:none}.ff-photo-label{z-index:1}.ff-promises{background:var(--ff-sage)}.ff-promises .ff-wrap{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px;gap:20px;font-size:.8rem}.ff-promises span:before{content:'↗';margin-right:12px;font-size:1rem}.ff-section-head{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:38px}.ff-section-head h2{max-width:16ch}.ff-section-head>p{max-width:37ch}.ff-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.ff-project-card{text-decoration:none;display:block}.ff-project-image{overflow:hidden;aspect-ratio:1.35;background:var(--ff-sage)}.ff-project-image img{height:100%;object-fit:cover;transition:transform .55s ease}.ff-project-card:hover img{transform:scale(1.025)}.ff-project-card h3{font-size:1.8rem;margin:14px 0 8px}.ff-project-meta{display:flex;justify-content:space-between;gap:16px;margin-top:18px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ff-muted)}.ff-project-card p{font-size:.93rem;color:var(--ff-muted)}.ff-project-card .ff-text-link{margin-top:18px}.ff-project-foot{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:32px}.ff-split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.ff-split img{aspect-ratio:1;object-fit:cover}.ff-split h2{margin-bottom:25px}.ff-split .ff-btn,.ff-split .ff-text-link{margin-top:26px}.ff-tint{background:var(--ff-sage)}.ff-care-list{padding:0;margin:28px 0 0;list-style:none}.ff-care-list li{padding:13px 0;border-top:1px solid #c5ccba;font-size:.93rem;display:flex;gap:14px}.ff-care-list li:before{content:'✓';font-size:.9rem}.ff-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:44px}.ff-step{border-top:1px solid var(--ff-line);padding-top:22px}.ff-step>span{font-size:.75rem;color:var(--ff-muted)}.ff-step h3{font-size:1.7rem;margin:20px 0 14px}.ff-step p{font-size:.93rem;color:var(--ff-muted)}.ff-section-tail{margin-top:38px}.ff-faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.ff-faq-layout h2{max-width:12ch}.ff-faq-layout .ff-text-link{margin-top:24px}.ff-faq{border-top:1px solid var(--ff-line)}.ff-faq:last-child{border-bottom:1px solid var(--ff-line)}.ff-faq summary{padding:22px 36px 22px 0;position:relative;cursor:pointer;list-style:none;font-weight:500}.ff-faq summary::-webkit-details-marker{display:none}.ff-faq summary:after{content:'+';position:absolute;right:3px;top:17px;font-size:1.5rem;font-weight:400}.ff-faq[open] summary:after{content:'−'}.ff-faq p{padding:0 24px 24px 0;color:var(--ff-muted);font-size:.93rem}.ff-close{background:var(--ff-green);color:var(--ff-paper)}.ff-close .ff-wrap{display:flex;justify-content:space-between;gap:60px;align-items:center;padding-block:72px}.ff-close h2{max-width:16ch}.ff-close p{margin-top:18px;font-size:.93rem;color:#e3e7dc}.ff-close .ff-small{color:#d6ddcd;margin-top:16px}.ff-footer{padding-block:44px 22px}.ff-footer-top{display:flex;justify-content:space-between;gap:48px;padding-bottom:35px}.ff-footer-top>div{display:flex;gap:30px;align-items:center;flex-wrap:wrap}.ff-footer-top a:not(.ff-logo){font-size:.8rem;text-underline-offset:4px}.ff-footer-bottom{border-top:1px solid var(--ff-line);padding-top:22px;display:flex;justify-content:space-between;gap:24px;font-size:.7rem;color:var(--ff-muted)}.ff-footer-bottom a{text-underline-offset:3px}.ff-footer-bottom p{max-width:68ch}.ff-page-intro{padding-block:72px 60px;max-width:860px;margin:0}.ff-page-intro h1{font-size:clamp(2.8rem,5vw,4.8rem);max-width:17ch}.ff-page-intro .ff-lead{margin-top:26px;max-width:56ch}.ff-page-intro .ff-small{margin-top:18px}.ff-service-row{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding-block:50px;border-top:1px solid var(--ff-line)}.ff-service-row img{aspect-ratio:1.15;object-fit:cover}.ff-service-row h2{margin-bottom:22px}.ff-service-row .ff-kicker{margin-bottom:16px}.ff-service-row .ff-text-link{margin-top:24px}.ff-service-row:nth-child(even) .ff-service-copy{order:-1}.ff-inclusions{margin:26px 0 0;padding-left:18px;color:var(--ff-muted);font-size:.9rem}.ff-inclusions li+li{margin-top:8px}.ff-note{border-left:2px solid #a2ad94;padding-left:20px;font-size:.88rem;color:var(--ff-muted)}.ff-area{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.ff-area p{margin-top:20px}.ff-area-tags{display:flex;flex-wrap:wrap;gap:10px}.ff-area-tags span{padding:10px 16px;border:1px solid #bfc7b4;font-size:.85rem}.ff-project-story{padding-bottom:80px;scroll-margin-top:135px}.ff-story-photo{position:relative}.ff-story-photo img{aspect-ratio:2;object-fit:cover}.ff-story-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;padding-top:35px}.ff-story-layout h2{font-size:2.9rem;margin-top:12px}.ff-story-layout h3{font:600 .74rem var(--ff-sans);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.ff-story-layout p{color:var(--ff-muted);font-size:.95rem}.ff-story-layout p+h3{margin-top:26px}.ff-story-layout .ff-note{margin-top:25px;font-size:.8rem}.ff-story-layout .ff-text-link{margin-top:24px}.ff-process-list{max-width:940px;margin:auto}.ff-process-row{display:grid;grid-template-columns:70px 1fr 1fr;gap:32px;padding:38px 0;border-top:1px solid var(--ff-line)}.ff-process-number{font:2.3rem var(--ff-serif);color:#778067}.ff-process-row h2{font-size:2rem}.ff-process-row .ff-small{margin-top:12px}.ff-process-row p{font-size:.95rem;color:var(--ff-muted)}.ff-budget-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.ff-budget-grid h3{font-size:1.6rem;margin-bottom:16px}.ff-budget-grid p{font-size:.92rem;color:var(--ff-muted)}
.ff-enquiry-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-block:64px 90px;align-items:start}.ff-enquiry-aside h1{font-size:clamp(2.7rem,4.6vw,4.3rem);max-width:12ch}.ff-enquiry-aside>.ff-lead{margin-top:24px}.ff-enquiry-aside .ff-note{margin-top:36px}.ff-enquiry-aside h2{font:600 .86rem var(--ff-sans);margin:34px 0 16px}.ff-enquiry-aside ol{padding-left:20px;color:var(--ff-muted);font-size:.9rem}.ff-enquiry-aside li+li{margin-top:12px}.ff-enquiry-card{background:var(--ff-white);padding:40px;border:1px solid var(--ff-line);box-shadow:0 14px 40px #26382c06}.ff-form-progress{display:flex;justify-content:space-between;gap:10px;font-size:.74rem;color:var(--ff-muted);padding-bottom:20px;border-bottom:1px solid var(--ff-line);margin-bottom:28px}.ff-form-progress span[aria-current=step]{color:var(--ff-ink);font-weight:700}.ff-enquiry-card h2{font-size:2.2rem;margin-bottom:24px}.ff-fields{border:0;padding:0;margin:0;min-width:0}.ff-field{margin-top:24px}.ff-field>label,.ff-field>legend{display:block;font-size:.85rem;font-weight:600;margin-bottom:10px}.ff-field select,.ff-field input{width:100%;min-height:50px;padding:12px;border:1px solid #bfc7b8;border-radius:2px;background:#fff;color:var(--ff-ink)}.ff-field input:disabled{color:#6a7166;background:#f4f5ef;opacity:1}.ff-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ff-option{position:relative;cursor:pointer;display:flex;align-items:center;gap:10px;border:1px solid var(--ff-line);padding:13px;font-size:.84rem;line-height:1.4;min-height:54px}.ff-option:has(input:checked){background:var(--ff-sage);border-color:var(--ff-green)}.ff-option:has(input:focus-visible){outline:3px solid #9a5a36;outline-offset:3px}.ff-option input{width:16px;height:16px;min-height:0;accent-color:var(--ff-green);flex:none}.ff-form-buttons{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.ff-form-buttons .ff-btn:first-child:last-child{margin-left:auto}.ff-error{color:#8f3529;font-size:.85rem;margin-top:18px}.ff-summary{margin:0}.ff-summary>div{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--ff-line);font-size:.85rem}.ff-summary dt{color:var(--ff-muted)}.ff-summary dd{margin:0;font-weight:500}.ff-result-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--ff-sage);font-size:1.25rem;margin-bottom:22px}.ff-result .ff-note{margin-top:24px}.ff-owner-invite{margin-top:30px;padding-top:24px;border-top:1px solid var(--ff-line)}.ff-owner-invite h3{font-size:1.6rem;margin-bottom:12px}.ff-owner-invite p{font-size:.9rem}.ff-owner-invite .ff-btn{margin-top:20px}.ff-case{max-width:950px}.ff-case h1{max-width:18ch}.ff-case-cover{aspect-ratio:1.9;object-fit:cover;margin-bottom:48px}.ff-case-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:32px 0;border-top:1px solid var(--ff-line)}.ff-case-row h2{font-size:2rem}.ff-case-row p{color:var(--ff-muted);font-size:.96rem}.ff-case-row p+p{margin-top:16px}.ff-case-foot{padding:30px;background:var(--ff-sage);margin:30px 0 70px}.ff-case-foot p{font-size:.85rem}.ff-case-foot .ff-actions{margin-top:20px}
@media(min-width:1600px){.ff-hero{min-height:740px}.ff-hero-copy{padding-right:80px}}
@media(max-width:1050px){.ff-wrap{width:calc(100% - 64px)}.ff-nav{gap:20px}.ff-hero{min-height:600px}.ff-hero-copy{padding:56px 32px}.ff-hero-copy h1{font-size:4.3rem}.ff-split,.ff-area{gap:45px}.ff-faq-layout{gap:60px}.ff-enquiry-layout{gap:40px}.ff-enquiry-card{padding:28px}.ff-story-layout{gap:50px}.ff-promises .ff-wrap{font-size:.74rem}}
@media(max-width:760px){html{scroll-padding-top:100px}.ff-wrap{width:calc(100% - 40px)}.ff-section{padding-block:60px}.ff-demo-bar{padding:9px 20px;font-size:10px;gap:16px}.ff-demo-bar>span{max-width:24ch}.ff-demo-bar a{font-size:10px}.ff-header-inner{min-height:80px}.ff-logo{font-size:1.5rem}.ff-logo span{font-size:8px}.ff-menu-toggle{display:block}.ff-nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--ff-paper);padding:20px;border-bottom:1px solid var(--ff-line)}.ff-nav.ff-open{display:flex;align-items:stretch;flex-direction:column;gap:5px}.ff-nav>a{padding:12px;min-height:44px}.ff-nav>a.ff-btn{margin-top:8px}.ff-hero{grid-template-columns:1fr;min-height:0}.ff-hero-copy{padding:43px 24px 38px}.ff-hero-copy h1{font-size:clamp(3.2rem,10vw,4.6rem);max-width:11ch}.ff-hero-copy .ff-kicker{margin-bottom:17px;font-size:.64rem;letter-spacing:.13em}.ff-hero-copy .ff-lead{max-width:40ch;margin-top:22px}.ff-hero-copy .ff-actions{margin-top:24px;gap:20px}.ff-hero-copy .ff-actions .ff-btn{padding:14px 19px;gap:20px}.ff-hero-copy .ff-actions .ff-text-link{font-size:.83rem}.ff-hero-media{height:380px}.ff-hero-media img{object-position:60% center}.ff-promises .ff-wrap{grid-template-columns:1fr;padding-block:18px;gap:7px;font-size:.78rem}.ff-promises span:before{margin-right:10px}.ff-section-head{display:block;margin-bottom:28px}.ff-section-head>p{margin-top:22px}.ff-section-head h2{max-width:17ch}.ff-project-grid{gap:30px;grid-template-columns:1fr}.ff-project-image{aspect-ratio:1.4}.ff-project-card h3{font-size:1.8rem}.ff-project-foot{display:block}.ff-project-foot>.ff-small{margin-bottom:20px}.ff-split{grid-template-columns:1fr;gap:34px}.ff-split img{aspect-ratio:1.25}.ff-steps{grid-template-columns:1fr;gap:26px;margin-top:30px}.ff-step{display:grid;grid-template-columns:35px 1fr;column-gap:15px;padding-top:22px}.ff-step>span{grid-row:1/3;padding-top:5px}.ff-step h3{margin:0 0 12px;font-size:1.7rem}.ff-step p{grid-column:2}.ff-faq-layout{grid-template-columns:1fr;gap:30px}.ff-faq-layout h2{max-width:18ch}.ff-faq-layout .ff-text-link{margin-top:16px}.ff-faq summary{font-size:.92rem;padding-block:19px}.ff-close .ff-wrap{display:block;padding-block:52px}.ff-close .ff-btn{margin-top:28px}.ff-footer-top{flex-direction:column;gap:25px}.ff-footer-top>div{gap:22px}.ff-footer-bottom{display:block}.ff-footer-bottom>p+p{margin-top:18px}.ff-page-intro{padding-block:44px 36px}.ff-page-intro h1{font-size:3.1rem}.ff-service-row{grid-template-columns:1fr;gap:28px;padding-block:34px}.ff-service-row:nth-child(even) .ff-service-copy{order:0}.ff-service-row h2{font-size:2.4rem}.ff-area{grid-template-columns:1fr;gap:30px}.ff-story-photo img{aspect-ratio:1.25}.ff-story-layout{grid-template-columns:1fr;gap:22px;padding-top:24px}.ff-story-layout h2{font-size:2.4rem}.ff-project-story{padding-bottom:60px}.ff-process-row{grid-template-columns:36px 1fr;gap:18px;padding:28px 0}.ff-process-row>p{grid-column:2}.ff-process-number{font-size:1.7rem}.ff-process-row h2{font-size:1.9rem}.ff-budget-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.ff-enquiry-layout{grid-template-columns:1fr;gap:35px;padding-block:40px 55px}.ff-enquiry-aside h1{max-width:15ch;font-size:3rem}.ff-enquiry-aside .ff-note{margin-top:25px}.ff-enquiry-aside ol{margin-bottom:0}.ff-enquiry-card{padding:24px 20px}.ff-options{gap:8px}.ff-option{font-size:.8rem;padding:11px 9px}.ff-form-progress{font-size:.67rem;gap:8px}.ff-enquiry-card h2{font-size:2rem}.ff-summary>div{gap:14px;grid-template-columns:1fr 1.2fr}.ff-case-row{grid-template-columns:1fr;gap:22px;padding-block:28px}.ff-case-cover{aspect-ratio:1.25;margin-bottom:28px}.ff-case-foot{padding:24px;margin-bottom:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Keep the hero compact and the last budget option easy to select. */
.ff-hero-copy h1{font-size:clamp(3.5rem,5vw,4.6rem);line-height:1.04;max-width:11ch}
.ff-hero-copy{padding-top:56px;padding-bottom:50px}
.ff-option:last-child:nth-child(odd){grid-column:1/-1}
@media(max-width:760px){.ff-hero-copy{padding-top:40px;padding-bottom:34px}.ff-hero-copy h1{font-size:clamp(3.2rem,10vw,4.2rem)}}
/* Form & Field: an independent architectural identity. */
:root{--ff-ink:#292521;--ff-muted:#665c53;--ff-green:#302a25;--ff-accent:#92482f;--ff-paper:#f3efe8;--ff-line:#d8cfc3;--ff-sage:#e7ded1;--ff-white:#fffdf9;--ff-serif:'Manrope',Arial,sans-serif;--ff-sans:'DM Sans',Arial,sans-serif}
h1,h2,h3{font-weight:500;letter-spacing:-.055em;line-height:1.12}.ff-kicker{font-weight:600;letter-spacing:.15em}.ff-btn{background:var(--ff-accent);border-color:var(--ff-accent);border-radius:0}.ff-btn:hover{background:var(--ff-ink);border-color:var(--ff-ink)}.ff-btn-light{background:var(--ff-paper);border-color:var(--ff-paper);color:var(--ff-ink)}.ff-btn-light:hover{background:#ded3c5;border-color:#ded3c5;color:#292521}.ff-btn-ghost{background:transparent;border-color:var(--ff-line);color:var(--ff-ink)}.ff-btn-ghost:hover{background:var(--ff-sage);border-color:var(--ff-line)}.ff-text-link:hover{color:var(--ff-accent)}.ff-header{background:rgba(243,239,232,.98)}.ff-header-inner{min-height:92px}.ff-logo{display:flex;align-items:center;gap:14px;text-decoration:none}.ff-logo .ff-brand-mark{display:grid;place-items:center;flex:none;margin:0;width:44px;height:44px;border:1px solid var(--ff-ink);font:500 25px/1 'Manrope',Arial,sans-serif;letter-spacing:-.13em;text-transform:none;padding-right:4px}.ff-logo .ff-brand-name{margin:0;display:block;font:650 14px/1.3 'Manrope',Arial,sans-serif;letter-spacing:.12em}.ff-brand-name small{display:block;font:500 8px/1.6 var(--ff-sans);letter-spacing:.22em;margin-top:6px}.ff-hero{grid-template-columns:1fr 1.06fr;min-height:660px}.ff-hero-copy{padding-top:56px;padding-bottom:50px}.ff-hero-copy h1{font-size:clamp(3rem,4.7vw,4.3rem);max-width:12ch;line-height:1.04;font-weight:500;letter-spacing:-.065em}.ff-hero-copy .ff-kicker{max-width:34ch;color:var(--ff-accent);font-size:.67rem}.ff-hero-copy .ff-lead{font-size:1rem;max-width:38ch}.ff-hero-copy .ff-small{font-size:.73rem}.ff-promises{background:var(--ff-ink);color:#f3efe8}.ff-promises span:before{color:#dca78a}.ff-section-head h2{max-width:19ch}.ff-project-card h3{font-size:1.65rem}.ff-care-list li{border-color:#cec0af}.ff-care-list li:before{color:var(--ff-accent)}.ff-step>span{color:var(--ff-accent)}.ff-step h3{font-size:1.5rem}.ff-project-story .ff-story-layout h2{font-size:2.5rem}.ff-story-layout .ff-kicker{color:var(--ff-accent)}.ff-note{border-color:#af7c63}.ff-process-number{color:var(--ff-accent)}.ff-close h2{font-size:clamp(2.2rem,4vw,3.5rem);max-width:20ch}.ff-close p,.ff-close .ff-small{color:#e0d5c8}.ff-footer{padding-bottom:28px}.ff-footer-bottom{align-items:end}.ff-footer-bottom>p:last-child{text-align:right}.ff-area-tags span{border-color:#c8b9a6}.ff-enquiry-card{box-shadow:0 12px 40px #302a2506;border-top:3px solid var(--ff-accent)}.ff-enquiry-aside h1{font-size:clamp(2.7rem,4.3vw,4rem);max-width:13ch}.ff-enquiry-card h2{font-size:1.85rem}.ff-enquiry-card fieldset{min-inline-size:0}.ff-option{border-radius:0}.ff-option:has(input:checked){background:#f0e4d8;border-color:var(--ff-accent)}.ff-option input{accent-color:var(--ff-accent)}.ff-field input,.ff-field select,.ff-field textarea{background:var(--ff-white);border-color:#bbae9d;border-radius:0}.ff-field textarea{display:block;width:100%;padding:12px;resize:vertical;min-height:105px;max-height:340px;color:var(--ff-ink)}.ff-field input::placeholder,.ff-field textarea::placeholder{color:#807366;opacity:1}.ff-field input:focus-visible,.ff-field textarea:focus-visible,.ff-field select:focus-visible{outline:2px solid var(--ff-accent);outline-offset:2px}.ff-field-hint{margin-top:9px;font-size:.74rem}.ff-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.ff-contact-grid>.ff-field:first-child{grid-column:1/-1;margin-top:0}.ff-optional{font-weight:400;color:var(--ff-muted);font-size:.78rem}.ff-brief-review{margin-top:26px;padding-block:16px;border-block:1px solid var(--ff-line);font-size:.85rem}.ff-brief-review summary{cursor:pointer;font-weight:600}.ff-brief-review .ff-summary{margin-top:12px}.ff-preview-notice{font-size:.73rem;margin-top:16px}.ff-error{padding:12px 16px;background:#fff1ea;border-left:2px solid #934327;color:#803820}.ff-summary dd{overflow-wrap:anywhere}.ff-result-icon{background:var(--ff-sage);color:var(--ff-accent)}.ff-owner-invite h3{font-size:1.5rem}.ff-field [aria-invalid=true]{border-color:#a63e24}
/* The case study belongs to KezConcepts, not the renovation brand. */
body[data-page="work--bathroom-website-concept"]{--ff-ink:#25392b;--ff-muted:#5a625b;--ff-green:#2a5c38;--ff-accent:#2a5c38;--ff-paper:#f7f4ef;--ff-line:#d6d9cd;--ff-sage:#e6e9dc;--ff-serif:Georgia,serif;background:var(--ff-paper)}body[data-page="work--bathroom-website-concept"] h1,body[data-page="work--bathroom-website-concept"] h2{letter-spacing:-.025em;font-weight:400}body[data-page="work--bathroom-website-concept"] .ff-header{background:#f7f4ef}body[data-page="work--bathroom-website-concept"] .ff-logo{display:block;font:1.7rem Georgia,serif}body[data-page="work--bathroom-website-concept"] .ff-demo-bar{background:#2a5c38}body[data-page="work--bathroom-website-concept"] .ff-btn-light:hover{background:var(--ff-sage)}
@media(max-width:1050px){.ff-logo{gap:10px}.ff-logo .ff-brand-name{font-size:12px}.ff-logo .ff-brand-mark{width:38px;height:38px}.ff-nav{gap:18px}.ff-nav>a{font-size:.78rem}.ff-hero-copy h1{font-size:3.6rem}.ff-contact-grid{grid-template-columns:1fr}}
@media(max-width:760px){.ff-header-inner{min-height:80px}.ff-nav{background:var(--ff-paper)}.ff-hero{grid-template-columns:1fr;min-height:0}.ff-hero-copy{padding:40px 24px 34px}.ff-hero-copy h1{font-size:clamp(3.1rem,10vw,4rem);max-width:13ch}.ff-hero-copy .ff-lead{max-width:38ch}.ff-hero-media{height:360px}.ff-logo .ff-brand-name{font-size:12px}.ff-brand-name small{font-size:7px}.ff-project-card h3{font-size:1.5rem}.ff-step h3{font-size:1.4rem}.ff-page-intro h1{font-size:2.8rem}.ff-service-row h2,.ff-project-story .ff-story-layout h2{font-size:2.1rem}.ff-process-row h2{font-size:1.7rem}.ff-enquiry-aside h1{font-size:2.8rem}.ff-enquiry-card h2{font-size:1.7rem}.ff-footer-bottom>p:last-child{text-align:left;margin-top:18px}.ff-close h2{font-size:2.2rem}body[data-page="work--bathroom-website-concept"] .ff-header-inner{gap:16px}body[data-page="work--bathroom-website-concept"] .ff-header .ff-btn{padding:12px 15px;gap:12px}}

/* Homepage enquiry: reuse the compact, responsive project planner. */
.ff-inline-enquiry .ff-inline-title{font-family:'Manrope',Arial,sans-serif;font-weight:500;font-size:clamp(2.6rem,4vw,3.7rem);line-height:1.12;letter-spacing:-.055em;margin:0;max-width:14ch}
