:root{--paper:#f3efe7;--paper-light:#fbf9f4;--ink:#17352f;--ink-deep:#0e2722;--ink-soft:#34544d;--coral:#df6b44;--coral-light:#ef9879;--sand:#d9cbb8;--line:#17352f29;--white-line:#ffffff29;--shadow:0 28px 70px #17352f21;--radius:22px;--shell:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}body::selection{color:var(--paper-light);background:var(--coral)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.055em;font-weight:500;line-height:.98}h1 em,h2 em{color:var(--coral);font-family:Georgia,Times New Roman,serif;font-weight:400}.shell{width:min(calc(100% - 48px), var(--shell));margin-inline:auto}.section{padding:118px 0}.skip-link{z-index:999;color:#fff;background:var(--ink);border-radius:8px;padding:10px 16px;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:#ffffffb8;letter-spacing:.17em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:28px;font-size:.72rem;font-weight:700;line-height:1.2;display:flex}.eyebrow>span{background:var(--coral);width:28px;height:2px}.eyebrow-dark{color:var(--ink-soft)}.eyebrow-light{color:#ffffffa8}.button{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:13px;min-height:56px;padding:0 24px;font-size:.88rem;font-weight:700;line-height:1;transition:color .2s,background .2s,border-color .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--coral)}.button-primary:hover{background:#c95531}.button-ghost{color:#fff;background:0 0;border-color:#ffffff52}.button-ghost:hover{background:#ffffff14;border-color:#ffffffbf}.button-dark{color:#fff;background:var(--ink)}.button-dark:hover{background:var(--ink-deep)}.site-header{z-index:100;height:82px;color:var(--ink);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f3efe7ed;position:sticky;top:0}.header-inner{grid-template-columns:auto 1fr auto;align-items:center;gap:28px;height:100%;display:grid}.brand{align-items:center;gap:11px;width:max-content;display:inline-flex}.brand-mark{width:42px;height:42px;color:var(--paper-light);background:var(--ink);border-radius:11px;place-items:center;display:grid}.brand-mark img{object-fit:contain;width:31px;height:auto}.brand-copy{letter-spacing:.16em;text-transform:uppercase;flex-direction:column;font-size:.82rem;line-height:1.05;display:flex}.brand-copy strong{letter-spacing:.08em;font-size:.95rem}.brand-copy>span{color:var(--coral);letter-spacing:.37em;font-size:.65rem;font-weight:800}.main-nav{justify-content:center;align-items:center;gap:clamp(18px,2.1vw,34px);display:flex}.main-nav a{color:var(--ink-soft);padding:9px 0;font-size:.78rem;font-weight:700;position:relative}.main-nav a:not(.nav-contact):after{background:var(--coral);content:"";transform-origin:100%;height:1px;transition:transform .18s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.main-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.main-nav .nav-contact{display:none}.header-phone{color:var(--ink);align-items:center;gap:9px;font-size:.82rem;font-weight:800;display:inline-flex}.header-phone svg{color:var(--coral)}.menu-toggle{width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:10px;display:none}.menu-toggle span{background:currentColor;width:100%;height:2px;margin:5px 0;transition:transform .18s,opacity .18s;display:block}.menu-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{color:#fff;background:radial-gradient(circle at 74% 25%, #df6b4426, transparent 24%), linear-gradient(110deg, var(--ink-deep), var(--ink) 62%, #234a42);position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.hero-grid{z-index:1;grid-template-columns:minmax(0,.92fr) minmax(430px,.78fr);align-items:center;gap:clamp(45px,7vw,100px);min-height:720px;padding-top:65px;padding-bottom:75px;display:grid;position:relative}.hero-copy{padding:28px 0;animation:.7s both rise-in}.hero h1{max-width:720px;margin-bottom:31px;font-size:clamp(3.5rem,6.5vw,6.3rem)}.hero h1 em{white-space:nowrap;display:inline-block}.hero-lead{color:#ffffffb8;max-width:595px;margin-bottom:35px;font-size:clamp(1rem,1.4vw,1.16rem);line-height:1.72}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.trust-row{border-top:1px solid var(--white-line);gap:clamp(24px,4vw,52px);margin-top:55px;padding-top:26px;display:flex}.trust-row div{gap:1px;display:grid}.trust-row strong{color:#fff;font-family:Georgia,Times New Roman,serif;font-size:1.28rem;font-weight:400}.trust-row span{color:#ffffff87;letter-spacing:.1em;text-transform:uppercase;font-size:.67rem;font-weight:700}.room-visual{width:100%;min-width:0;color:var(--ink);background:var(--paper-light);border-radius:3px;padding:25px 25px 22px;animation:.9s .12s both room-in;position:relative;transform:rotate(1.2deg);box-shadow:0 35px 90px #00000052}.room-visual:before,.room-visual:after{border-style:solid;border-color:var(--coral);content:"";pointer-events:none;width:75px;height:75px;position:absolute}.room-visual:before{border-width:3px 0 0 3px;top:-13px;left:-13px}.room-visual:after{border-width:0 3px 3px 0;bottom:-13px;right:-13px}.visual-topline{border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;padding-bottom:16px;font-size:.62rem;font-weight:800;display:flex}.plan-svg{width:100%;color:var(--ink)}.plan-wall{fill:none;stroke:currentColor;stroke-width:7px;stroke-linejoin:round}.plan-door{fill:none;stroke:var(--coral);stroke-dasharray:4 4;stroke-width:2px}.plan-fill{fill:#e6dfd3}.plan-coral{fill:url(#terracotta);opacity:.88}.plan-label{fill:var(--ink);letter-spacing:.1em;font-family:Arial,sans-serif;font-size:11px;font-weight:800}.counter,.bath,.bed,.sofa{fill:none;stroke:var(--ink);stroke-width:2px}.table{fill:none;stroke:var(--coral);stroke-width:2px}.table-dot{fill:var(--coral)}.material-strip{border-top:1px solid var(--line);gap:8px;padding-top:15px;display:flex}.material{border:3px solid var(--paper-light);width:35px;height:35px;box-shadow:0 0 0 1px var(--line);border-radius:50%}.material-stone{background:radial-gradient(circle at 30% 28%,#fff 0 2px,#0000 3px),linear-gradient(135deg,#c4bfb5,#eee8dd)}.material-wood{background:repeating-linear-gradient(110deg,#9b6c42 0 3px,#b7895b 4px 8px)}.material-clay{background:var(--coral)}.material-ink{background:var(--ink)}.visual-stamp{color:#fff;background:var(--coral);border:7px solid var(--ink);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:112px;height:112px;display:flex;position:absolute;bottom:42px;right:-32px;transform:rotate(-8deg)}.visual-stamp span{font-family:Georgia,Times New Roman,serif;font-size:1.75rem;line-height:1}.visual-stamp small{letter-spacing:.06em;text-transform:uppercase;font-size:.54rem;font-weight:800;line-height:1.25}.hero-marquee{z-index:2;color:var(--ink);background:var(--coral);border-top:1px solid #ffffff1f;position:relative;overflow:hidden}.hero-marquee div{letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:27px;width:max-content;padding:14px 0;font-size:.67rem;font-weight:900;animation:28s linear infinite marquee;display:flex}.hero-marquee i{color:#ffffffa6;font-size:.45rem;font-style:normal}.section-heading h2,.zone-copy h2,.faq-title h2{margin-bottom:0;font-size:clamp(3rem,5.2vw,5.4rem)}.split-heading{grid-template-columns:1fr minmax(280px,410px);align-items:end;gap:60px;margin-bottom:65px;display:grid}.split-heading>p{color:var(--ink-soft);margin-bottom:8px;font-size:1rem;line-height:1.75}.centered-heading{text-align:center;max-width:720px;margin:0 auto 80px}.centered-heading .eyebrow{justify-content:center}.centered-heading h2{margin-bottom:26px}.centered-heading>p:last-child{color:var(--ink-soft)}.services-section{background:var(--paper)}.services-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.service-card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:0 0;min-height:295px;padding:29px;transition:color .24s,background .24s;position:relative;overflow:hidden}.service-card:after{content:"";opacity:0;border:1px solid #ffffff29;border-radius:50%;width:125px;height:125px;transition:opacity .24s,transform .35s;position:absolute;inset:auto -40px -55px auto}.service-card:hover,.service-card.featured{color:#fff;background:var(--ink)}.service-card:hover:after,.service-card.featured:after{opacity:1;transform:scale(1.35)}.service-index{color:var(--coral);font-family:Georgia,Times New Roman,serif;font-size:.82rem;position:absolute;top:28px;right:28px}.service-icon{width:52px;height:52px;color:var(--coral);background:#df6b441c;border-radius:50%;place-items:center;margin-bottom:54px;display:grid}.service-card:hover .service-icon,.service-card.featured .service-icon{background:#ffffff1a}.service-card h3{margin-bottom:12px;font-family:Georgia,Times New Roman,serif;font-size:1.42rem;font-weight:400;line-height:1.2}.service-card p{color:var(--ink-soft);margin-bottom:0;font-size:.87rem;line-height:1.65;transition:color .24s}.service-card:hover p,.service-card.featured p{color:#ffffff9e}.service-cta{color:#fff;background:var(--coral);flex-direction:column;display:flex}.service-cta:hover{background:#ca5733}.service-cta .service-icon{color:#fff;background:#ffffff24}.service-cta p,.service-cta:hover p{color:#ffffffbf}.service-cta a{align-items:center;gap:8px;margin-top:auto;font-size:.76rem;font-weight:800;display:inline-flex}.projects-section{background:var(--paper-light);border-top:1px solid var(--line);overflow:hidden}.projects-heading{margin-bottom:52px}.projects-gallery{grid-template-rows:clamp(290px,25vw,320px) clamp(245px,21vw,280px);grid-template-columns:.86fr .62fr .62fr;gap:14px;display:grid}.project-card{color:#fff;background:var(--ink-deep);isolation:isolate;border-radius:18px;min-width:0;position:relative;overflow:hidden}.project-card:after{z-index:1;content:"";background:linear-gradient(#0000 36%,#051612db 100%);position:absolute;inset:0}.project-card>img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.project-card:hover>img{transform:scale(1.035)}.project-bathroom{grid-row:1/3}.project-bathroom>img{object-position:50% 51%}.project-kitchen{grid-column:2/4}.project-kitchen>img{object-position:50% 43%}.project-bedroom>img{object-position:58% 50%}.project-exterior>img{object-position:50% 48%}.project-caption{z-index:2;padding:28px;position:absolute;bottom:0;left:0;right:0}.project-caption>span{color:#fff;background:var(--coral);letter-spacing:.11em;text-transform:uppercase;border-radius:999px;margin-bottom:9px;padding:5px 10px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex}.project-caption h3{margin-bottom:5px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,2vw,1.8rem);font-weight:400;line-height:1.15}.project-caption p{color:#ffffffb8;max-width:440px;margin-bottom:0;font-size:.78rem;line-height:1.45}.project-caption-compact{padding:22px}.project-caption-compact h3{margin-bottom:0;font-size:1.3rem}.work-progress{border-top:1px solid var(--line);grid-template-columns:minmax(260px,.52fr) minmax(0,1.48fr);align-items:start;gap:clamp(40px,6vw,85px);margin-top:88px;padding-top:76px;display:grid}.progress-heading .eyebrow{margin-bottom:20px}.progress-heading h3{letter-spacing:-.035em;margin-bottom:20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3.2vw,3rem);font-weight:400;line-height:1.08}.progress-heading h3 em{color:var(--coral);font-weight:400}.progress-heading>p:last-child{color:var(--ink-soft);margin-bottom:0;font-size:.87rem;line-height:1.7}.progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.sequence-card{background:var(--paper);border:1px solid var(--line);border-radius:17px;min-width:0;padding:22px}.sequence-title{align-items:center;gap:13px;margin-bottom:18px;display:flex}.sequence-title>span{color:#fff;background:var(--ink);border-radius:50%;flex:none;place-items:center;width:39px;height:39px;font-family:Georgia,Times New Roman,serif;font-size:.75rem;display:grid}.sequence-title div{flex-direction:column;min-width:0;line-height:1.25;display:flex}.sequence-title small{color:var(--coral);letter-spacing:.1em;text-transform:uppercase;font-size:.61rem;font-weight:800}.sequence-title strong{text-overflow:ellipsis;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:1rem;font-weight:400;overflow:hidden}.sequence-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sequence-pair figure{min-width:0;margin:0}.sequence-frame{aspect-ratio:4/3;background:var(--ink-deep);border-radius:10px;position:relative;overflow:hidden}.sequence-frame:after{content:"";background:linear-gradient(#0516122e,#0000 45%);position:absolute;inset:0}.sequence-frame img{object-fit:cover;width:100%;height:100%}.sequence-bathroom .sequence-frame img{object-position:50% 63%}.sequence-frame>span{z-index:1;color:#fff;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0e2722d6;border:1px solid #ffffff38;border-radius:999px;padding:5px 8px;font-size:.54rem;font-weight:800;line-height:1;position:absolute;top:10px;left:10px}.statement-section{color:#fff;background:var(--ink);padding:110px 0;position:relative;overflow:hidden}.statement-section:before{content:"";border:1px solid #ffffff14;border-radius:50%;width:520px;height:520px;position:absolute;top:-240px;right:-180px;box-shadow:0 0 0 70px #ffffff05,0 0 0 140px #ffffff05}.statement-grid{grid-template-columns:160px minmax(0,1fr) 300px;align-items:end;gap:clamp(35px,5vw,75px);display:grid;position:relative}.statement-number{color:var(--coral);letter-spacing:-.08em;font-family:Georgia,Times New Roman,serif;font-size:8.5rem;line-height:.72}.statement-grid h2{letter-spacing:-.035em;max-width:720px;margin-bottom:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,3.7vw,3.7rem);font-weight:400;line-height:1.12}.statement-side{border-left:1px solid var(--white-line);padding-left:25px}.statement-side p{color:#ffffff9e;font-size:.88rem;line-height:1.75}.statement-side a{color:var(--coral-light);align-items:center;gap:8px;font-size:.78rem;font-weight:800;display:inline-flex}.process-section{background:var(--paper-light)}.process-grid{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.process-grid article{padding-right:clamp(25px,4vw,60px);position:relative}.process-grid article:not(:first-child){border-left:1px solid var(--line);padding-left:clamp(25px,4vw,60px)}.step-number{color:var(--coral);margin-bottom:26px;font-family:Georgia,Times New Roman,serif;font-size:2.7rem;display:block}.step-line{background:var(--line);width:100%;height:1px;margin-bottom:28px;overflow:hidden}.step-line:before{background:var(--coral);content:"";width:32%;height:1px;display:block}.process-grid h3{margin-bottom:13px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.process-grid p{color:var(--ink-soft);margin-bottom:0;font-size:.89rem;line-height:1.72}.zone-section{background:var(--paper);border-top:1px solid var(--line)}.zone-grid{grid-template-columns:minmax(310px,.65fr) minmax(460px,1fr);align-items:center;gap:clamp(55px,8vw,120px);display:grid}.zone-copy>p:not(.eyebrow){max-width:470px;color:var(--ink-soft);margin:31px 0 34px;line-height:1.78}.map-card{min-width:0;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#e7dfd2;position:relative;overflow:hidden}.map-card:after{content:"";pointer-events:none;background:radial-gradient(circle at 52% 56%,#df6b4426,#0000 30%);position:absolute;inset:0}.map-card svg{width:100%}.map-coast{fill:var(--ink);opacity:.92}.map-line{fill:none;stroke:#17352f2b;stroke-width:1.2px}.map-ring{fill:none;stroke:var(--coral);stroke-dasharray:5 6;stroke-width:1.5px}.map-ring-two{stroke-dasharray:none;opacity:.52}.map-dot{fill:var(--coral);stroke:var(--paper-light);stroke-width:5px}.map-labels{fill:var(--ink-soft);font-family:Arial,sans-serif;font-size:12px;font-weight:700}.map-labels text:first-child{fill:var(--ink);letter-spacing:.1em;font-size:14px;font-weight:900}.map-badge{z-index:2;color:#fff;background:var(--coral);border-radius:12px;align-items:center;gap:12px;padding:13px 16px;display:flex;position:absolute;bottom:22px;right:22px;box-shadow:0 14px 34px #17352f3d}.map-badge span{font-size:.68rem;line-height:1.35}.map-badge strong{font-weight:800}.faq-section{background:var(--paper-light);border-top:1px solid var(--line)}.faq-grid{grid-template-columns:.72fr 1fr;gap:clamp(70px,10vw,145px);display:grid}.faq-title{align-self:start;position:sticky;top:130px}.faq-title>p:not(.eyebrow){max-width:330px;color:var(--ink-soft);margin:30px 0 22px}.faq-title>a{color:var(--coral);align-items:center;gap:9px;font-size:.82rem;font-weight:800;display:inline-flex}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:25px;min-height:92px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;list-style:none;display:flex}.faq-list summary h3{font:inherit;margin:0}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary i{border:1px solid var(--line);border-radius:50%;flex:0 0 35px;width:35px;height:35px;position:relative}.faq-list summary i:before,.faq-list summary i:after{background:var(--coral);content:"";width:11px;height:1px;transition:transform .18s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-list summary i:after{transform:translate(-50%,-50%)rotate(90deg)}.faq-list details[open] summary i:after{transform:translate(-50%,-50%)rotate(0)}.faq-list details>p{max-width:620px;color:var(--ink-soft);margin:-8px 65px 30px 0;font-size:.9rem;line-height:1.78}.quote-section{color:#fff;background:var(--ink-deep);padding:125px 0;position:relative;overflow:hidden}.quote-section:before{content:"";background:radial-gradient(circle,#df6b442e,#0000 67%);width:480px;height:480px;position:absolute;top:-130px;left:-100px}.quote-grid{grid-template-columns:minmax(0,.75fr) minmax(500px,.92fr);align-items:start;gap:clamp(60px,8vw,120px);display:grid;position:relative}.quote-intro h2{margin-bottom:30px;font-size:clamp(3.2rem,5.5vw,5.65rem)}.quote-intro>p:not(.eyebrow){color:#ffffff9e;max-width:520px;line-height:1.82}.contact-stack{gap:13px;margin-top:42px;display:grid}.contact-stack a{align-items:center;gap:16px;width:fit-content;display:flex}.contact-stack a>span{width:46px;height:46px;color:var(--coral-light);border:1px solid var(--white-line);background:#ffffff12;border-radius:50%;place-items:center;display:grid}.contact-stack div{display:grid}.contact-stack small{color:#ffffff7a;font-size:.68rem}.contact-stack strong{color:#fff;font-size:.94rem}.quote-form{color:var(--ink);background:var(--paper-light);border-radius:var(--radius);padding:clamp(28px,4vw,45px);box-shadow:0 35px 90px #00000040}.form-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;padding-bottom:20px;display:flex}.form-heading span{font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.form-heading strong{color:var(--coral);letter-spacing:.08em;text-transform:uppercase;font-size:.67rem}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.quote-form label{color:var(--ink-soft);letter-spacing:.04em;gap:7px;margin-bottom:17px;font-size:.7rem;font-weight:800;display:grid}.quote-form input,.quote-form select,.quote-form textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #17352f2e;border-radius:9px;outline:none;font-size:.9rem;transition:border-color .18s,box-shadow .18s}.quote-form input,.quote-form select{height:52px;padding:0 14px}.quote-form textarea{resize:vertical;min-height:124px;padding:13px 14px}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px #df6b4421}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#17352f61}.form-submit{border:0;width:100%;margin-top:4px}.form-note,.form-feedback{color:#17352f8a;text-align:center;justify-content:center;align-items:center;gap:7px;margin:13px 0 0;font-size:.68rem;display:flex}.form-note svg{color:var(--coral)}.form-feedback{color:var(--ink);font-weight:700}.form-privacy{color:#17352f7a;text-align:center;margin:5px 0 0;font-size:.64rem}.site-footer{color:var(--ink);background:var(--paper);padding:58px 0 28px}.footer-main{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.7fr);align-items:start;gap:45px;padding-bottom:42px;display:grid}.footer-about p{max-width:320px;color:var(--ink-soft);margin:18px 0 12px;font-size:.82rem}.footer-about address{color:var(--ink-soft);font-size:.78rem;font-style:normal;line-height:1.7}.footer-about address a:hover,.footer-col a:hover,.footer-legal a:hover{color:var(--coral)}.footer-col{gap:10px;display:grid}.footer-col strong{letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px;font-size:.68rem}.footer-col a{color:var(--ink-soft);font-size:.8rem;font-weight:700}.footer-legal{gap:20px;display:flex}.footer-bottom{color:#17352f8c;justify-content:space-between;align-items:flex-start;gap:20px;padding-top:23px;font-size:.66rem;display:flex}.mobile-actions{display:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--coral);outline-offset:3px}a.service-card{display:block}.service-more{color:var(--coral);align-items:center;gap:7px;margin-top:18px;font-size:.74rem;font-weight:800;display:inline-flex}.service-card:hover .service-more,.service-card.featured .service-more{color:var(--coral-light)}.section-more{justify-content:center;margin-top:42px;display:flex}.zone-list{flex-wrap:wrap;gap:8px;margin:-10px 0 34px;padding:0;list-style:none;display:flex}.zone-list li{color:var(--ink-soft);background:var(--paper-light);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.75rem;font-weight:700}.form-honeypot{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.form-submit:disabled{cursor:wait;opacity:.7;transform:none}.form-error{color:#8a2d12;background:#df6b441a;border:1px solid #df6b4459;border-radius:9px;margin:14px 0 0;padding:12px 14px;font-size:.8rem;line-height:1.55}.form-error a,.form-privacy a,.form-success a{color:inherit;text-underline-offset:2px;font-weight:700;text-decoration:underline}.form-success{justify-items:start;gap:4px;display:grid}.form-success-icon{color:#fff;background:var(--coral);border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:18px;display:grid}.form-success h3{margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:1.7rem;font-weight:400;line-height:1.2}.form-success p{color:var(--ink-soft);font-size:.9rem}.form-success .button{margin-top:10px}.page-hero{color:#fff;background:radial-gradient(circle at 80% 20%, #df6b4426, transparent 28%), linear-gradient(110deg, var(--ink-deep), var(--ink) 62%, #234a42);position:relative;overflow:hidden}.page-hero:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}.page-hero>.shell{z-index:1;position:relative}.page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:center;gap:clamp(40px,6vw,90px);padding:70px 0 90px;display:grid}.page-hero-copy{animation:.7s both rise-in}.page-hero h1{max-width:760px;margin-bottom:28px;font-size:clamp(3rem,5.4vw,5.2rem)}.page-hero-media{min-width:0;margin:0;animation:.9s .12s both room-in;position:relative}.page-hero-media img{aspect-ratio:4/5;object-fit:cover;border-radius:4px;width:100%;max-height:560px;box-shadow:0 35px 90px #00000052}.page-hero-media:before,.page-hero-media:after{z-index:1;border-style:solid;border-color:var(--coral);content:"";width:75px;height:75px;position:absolute}.page-hero-media:before{border-width:3px 0 0 3px;top:-13px;left:-13px}.page-hero-media:after{border-width:0 3px 3px 0;bottom:-13px;right:-13px}.page-hero-compact>.shell{padding:70px 0 85px}.page-hero-compact h1{margin-bottom:22px}.breadcrumb{color:#ffffff8c;flex-wrap:wrap;gap:9px;margin-bottom:30px;font-size:.75rem;font-weight:700;display:flex}.breadcrumb a:hover{color:#fff}.breadcrumb [aria-current]{color:var(--coral-light)}.detail-section{background:var(--paper-light)}.detail-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);align-items:start;gap:clamp(50px,8vw,110px);display:grid}.detail-copy h2{margin-bottom:34px;font-size:clamp(2.6rem,4.4vw,4.4rem)}.detail-copy>p:not(.eyebrow){max-width:620px;color:var(--ink-soft);font-size:1rem;line-height:1.8}.detail-list{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(26px,3.5vw,40px)}.detail-list h3{margin-bottom:20px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.detail-list ul{gap:2px;margin:0 0 20px;padding:0;list-style:none;display:grid}.detail-list li{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:11px 0;font-size:.92rem;display:flex}.detail-list li svg{color:var(--coral);flex:none;margin-top:3px}.detail-list>p{color:var(--ink-soft);margin:0;font-size:.78rem}.detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:70px;display:grid}.detail-gallery figure{margin:0}.detail-gallery .sequence-frame{border-radius:16px}.related-section{background:var(--paper-light);padding-top:0}.related-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.related-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;align-items:center;gap:14px;padding:18px;transition:border-color .2s,transform .2s;display:flex}.related-card:hover{border-color:var(--coral);transform:translateY(-2px)}.related-card .service-icon{flex:none;width:44px;height:44px;margin:0}.related-card strong{flex:1;font-family:Georgia,Times New Roman,serif;font-size:.98rem;font-weight:400;line-height:1.3}.related-card>svg{color:var(--coral);flex:none}.realisations-section{background:var(--paper-light)}.realisations-list{gap:70px;display:grid}.realisation{grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);align-items:center;gap:clamp(30px,5vw,70px);display:grid}.realisation:nth-child(2n){grid-template-columns:minmax(260px,.8fr) minmax(0,1.5fr)}.realisation:nth-child(2n) .realisation-media{order:2}.realisation-media{gap:10px;display:grid}.realisation-media.is-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.realisation-media .sequence-frame{aspect-ratio:16/10;border-radius:16px}.realisation-media.is-pair .sequence-frame{aspect-ratio:4/5}.realisation-tag{color:#fff;background:var(--coral);letter-spacing:.11em;text-transform:uppercase;border-radius:999px;margin-bottom:14px;padding:5px 10px;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex}.realisation-copy h2{letter-spacing:-.03em;margin-bottom:14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,2.6vw,2.4rem);font-weight:400;line-height:1.1}.realisation-copy p{color:var(--ink-soft)}.realisation-copy a{color:var(--coral);align-items:center;gap:8px;font-size:.8rem;font-weight:800;display:inline-flex}.legal-section{background:var(--paper-light)}.legal-content{max-width:780px}.legal-content h2{letter-spacing:-.02em;margin:38px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:400;line-height:1.2}.legal-content h2:first-child{margin-top:0}.legal-content p{color:var(--ink-soft);line-height:1.8}.legal-content a{color:var(--coral);font-weight:700}.not-found>.shell{padding:110px 0 130px}@keyframes rise-in{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes room-in{0%{opacity:0;transform:translate(30px)rotate(3deg)}to{opacity:1;transform:translate(0)rotate(1.2deg)}}@keyframes marquee{to{transform:translate(-50%)}}@media (max-width:1120px){.main-nav{gap:18px}.main-nav a{font-size:.72rem}.header-phone span{display:none}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);gap:50px}.services-grid{grid-template-columns:repeat(2,1fr)}.statement-grid{grid-template-columns:130px 1fr}.statement-side{grid-column:2;max-width:500px;margin-top:5px}.quote-grid{grid-template-columns:minmax(0,.8fr) minmax(440px,1fr);gap:55px}}@media (max-width:900px){.section{padding:90px 0}.site-header{height:74px}.header-inner{grid-template-columns:1fr auto}.header-phone{display:none}.menu-toggle{display:block}.main-nav{z-index:-1;background:var(--paper-light);border-bottom:1px solid var(--line);opacity:0;pointer-events:none;align-content:start;gap:0;padding:20px 24px 28px;transition:opacity .18s,transform .18s;display:grid;position:fixed;top:74px;left:0;right:0;transform:translateY(-12px);box-shadow:0 25px 45px #17352f1f}.main-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.main-nav a{border-bottom:1px solid var(--line);padding:14px 4px;font-size:.9rem}.main-nav .nav-contact{color:#fff;background:var(--coral);border:0;border-radius:999px;justify-content:center;margin-top:15px;display:inline-flex}.hero-grid{grid-template-columns:1fr;gap:20px;min-height:auto;padding-top:75px;padding-bottom:85px}.hero-copy{max-width:740px}.hero h1{font-size:clamp(3.5rem,10.5vw,6rem)}.room-visual{width:min(620px,92%);margin:25px auto 0}.visual-stamp{right:-22px}.split-heading,.zone-grid,.faq-grid,.quote-grid{grid-template-columns:1fr}.split-heading{gap:28px}.split-heading>p{max-width:580px}.projects-gallery{grid-template-rows:repeat(2,230px) 240px;grid-template-columns:repeat(2,minmax(0,1fr))}.project-bathroom{grid-area:1/1/3}.project-kitchen{grid-area:1/2}.project-bedroom{grid-area:2/2}.project-exterior{grid-area:3/1/auto/3}.work-progress{grid-template-columns:1fr;gap:38px}.progress-heading{max-width:620px}.statement-grid{grid-template-columns:105px 1fr}.statement-number{font-size:6.7rem}.process-grid{grid-template-columns:1fr;gap:42px;max-width:620px;margin-inline:auto}.process-grid article,.process-grid article:not(:first-child){border-left:0;padding:0}.step-number{float:left;width:75px;margin:0}.step-line,.process-grid h3,.process-grid p{margin-left:75px}.zone-grid{gap:55px}.zone-copy{max-width:650px}.faq-grid{gap:50px}.faq-title{position:static}.quote-grid{gap:55px}.quote-intro,.quote-form{max-width:680px}.footer-main{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}.page-hero-grid,.detail-grid,.realisation,.realisation:nth-child(2n){grid-template-columns:minmax(0,1fr)}.page-hero-grid{padding:56px 0 70px}.page-hero-media{width:min(560px,100% - 13px)}.page-hero-media img{aspect-ratio:4/3}.realisation:nth-child(2n) .realisation-media{order:0}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.shell{width:min(calc(100% - 32px), var(--shell))}html{scroll-padding-top:74px}body{padding-bottom:62px}.section{padding:74px 0}.brand-mark{width:39px;height:39px}.hero-grid{padding-top:56px;padding-bottom:65px}.eyebrow{letter-spacing:.13em;margin-bottom:21px;font-size:.64rem}.hero h1{margin-bottom:25px;font-size:clamp(3.1rem,15vw,4.7rem)}.hero h1 em{white-space:normal}.hero-lead{font-size:.95rem}.hero-actions{display:grid}.hero-actions .button{width:100%}.trust-row{justify-content:space-between;gap:12px;margin-top:42px}.trust-row strong{font-size:1.04rem}.trust-row span{letter-spacing:.05em;font-size:.54rem}.room-visual{width:calc(100% - 13px);padding:16px 16px 14px}.visual-stamp{border-width:5px;width:86px;height:86px;bottom:28px;right:-14px}.visual-stamp span{font-size:1.3rem}.visual-stamp small{font-size:.42rem}.material{width:28px;height:28px}.section-heading h2,.zone-copy h2,.faq-title h2{font-size:clamp(2.7rem,13vw,4rem)}.split-heading{margin-bottom:45px}.services-grid{grid-template-columns:1fr}.service-card{min-height:245px}.service-icon{margin-bottom:38px}.projects-heading{margin-bottom:36px}.projects-gallery{grid-template-rows:none;grid-template-columns:1fr;gap:12px}.project-bathroom,.project-kitchen,.project-bedroom,.project-exterior{aspect-ratio:4/3;border-radius:14px;grid-area:auto}.project-bathroom{aspect-ratio:4/5}.project-caption{padding:20px}.project-caption p{font-size:.72rem}.project-caption-compact{padding:18px}.work-progress{gap:30px;margin-top:60px;padding-top:58px}.progress-grid{grid-template-columns:1fr}.sequence-card{padding:17px}.sequence-frame>span{font-size:.48rem;top:7px;left:7px}.statement-section{padding:80px 0}.statement-grid{grid-template-columns:1fr;gap:28px}.statement-number{font-size:5.8rem;line-height:.8}.statement-side{grid-column:auto;margin-top:5px}.centered-heading{margin-bottom:60px}.centered-heading h2{font-size:clamp(2.7rem,13vw,4rem)}.step-number{width:62px;font-size:2.25rem}.step-line,.process-grid h3,.process-grid p{margin-left:62px}.step-line{width:calc(100% - 62px)}.map-card{border-radius:14px}.map-badge{bottom:12px;right:12px}.map-badge span{display:none}.faq-list summary{min-height:82px;font-size:1.13rem}.faq-list details>p{margin-right:0}.quote-section{padding:80px 0}.quote-intro h2{font-size:clamp(3rem,14vw,4.3rem)}.contact-stack strong{font-size:.82rem}.quote-form{border-radius:14px;padding:24px 18px}.form-heading{flex-direction:column;align-items:flex-start;gap:4px}.form-row{grid-template-columns:1fr;gap:0}.footer-main{grid-template-columns:1fr;gap:30px}.page-hero h1{font-size:clamp(2.6rem,12vw,3.8rem)}.page-hero-compact>.shell{padding:50px 0 60px}.detail-gallery,.related-grid{grid-template-columns:1fr}.detail-gallery{margin-top:45px}.realisations-list{gap:50px}.footer-bottom{flex-direction:column}.mobile-actions{z-index:90;color:#fff;grid-template-columns:.8fr 1.2fr;height:62px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 28px #17352f30}.mobile-actions a{background:var(--ink);justify-content:center;align-items:center;gap:8px;font-size:.79rem;font-weight:800;display:flex}.mobile-actions a:last-child{background:var(--coral)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
