:root{
  --ink:#0d252b;
  --ink-2:#183840;
  --muted:#61767c;
  --paper:#f4f8f7;
  --paper-2:#eaf2f1;
  --white:#fff;
  --blue:#328aa0;
  --blue-dark:#1f6679;
  --green:#4e9e89;
  --green-dark:#2e7867;
  --aqua:#8bcbd4;
  --line:rgba(28,76,85,.15);
  --line-light:rgba(255,255,255,.22);
  --shadow:0 30px 80px rgba(11,35,42,.16);
  --shadow-soft:0 16px 45px rgba(14,42,49,.10);
  --radius-xl:36px;
  --radius-lg:28px;
  --radius-md:20px;
  --container:min(1220px,calc(100% - 44px));
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
::selection{background:rgba(78,158,137,.22);color:var(--ink)}
.container{width:var(--container);margin-inline:auto}
.skip-link{position:absolute;left:-999px;top:12px;z-index:9999;padding:10px 14px;border-radius:12px;background:var(--ink);color:#fff}
.skip-link:focus{left:12px}
.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}

.page-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:999;background:transparent;pointer-events:none}
.page-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--green),var(--aqua),var(--blue));box-shadow:0 0 16px rgba(87,185,189,.65)}

.site-loader{position:fixed;inset:0;z-index:1000;display:grid;place-content:center;justify-items:center;background:#eff6f5;transition:opacity .7s var(--ease),visibility .7s var(--ease)}
.site-loader.hidden{opacity:0;visibility:hidden}
.loader-tile{display:grid;grid-template-columns:repeat(2,22px);gap:5px;margin-bottom:22px;transform:rotate(45deg)}
.loader-tile i{width:22px;height:22px;border-radius:5px;background:linear-gradient(135deg,var(--green),var(--blue));animation:tilePulse 1.2s infinite alternate}
.loader-tile i:nth-child(2){animation-delay:.15s}.loader-tile i:nth-child(3){animation-delay:.3s}.loader-tile i:nth-child(4){animation-delay:.45s}
.site-loader strong{font-size:1.45rem;letter-spacing:.12em}.site-loader>span{font-size:.72rem;letter-spacing:.5em;margin-left:.48em;color:var(--muted)}
@keyframes tilePulse{from{opacity:.28;transform:scale(.78)}to{opacity:1;transform:scale(1)}}

.topline{position:relative;z-index:20;background:#e9f3f2;border-bottom:1px solid var(--line)}
.topline-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:42px;color:var(--ink-2);font-size:.82rem;font-weight:650}
.topline p,.topline div{display:flex;align-items:center;gap:12px;margin:0}.topline p svg{color:var(--green-dark)}.topline div span{width:1px;height:14px;background:var(--line)}

.site-header{position:sticky;top:0;z-index:50;padding:12px 0;transition:.32s var(--ease)}
.site-header.scrolled{padding:8px 0;background:rgba(244,248,247,.78);backdrop-filter:blur(20px) saturate(160%);box-shadow:0 12px 40px rgba(10,34,41,.08)}
.nav-shell{display:flex;align-items:center;gap:22px;min-height:68px;padding:10px 12px 10px 15px;border-radius:22px;background:rgba(255,255,255,.84);backdrop-filter:blur(16px) saturate(170%);border:1px solid rgba(255,255,255,.7);box-shadow:0 12px 35px rgba(12,41,48,.08)}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#f8ffff,#dfefed);border:1px solid rgba(46,120,103,.16);color:var(--blue-dark)}
.brand-mark svg{width:32px;height:32px}.brand-mark .roof{color:var(--green)}
.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font-size:1.35rem;letter-spacing:.035em}.brand-copy small{font-size:.63rem;letter-spacing:.43em;margin-top:5px;color:var(--muted)}
.main-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.main-nav a{position:relative;padding:10px 0;color:#526b72;font-size:.91rem;font-weight:700;transition:.25s var(--ease)}
.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--blue));transform:scaleX(0);transform-origin:left;transition:.25s var(--ease)}
.main-nav a:hover,.main-nav a.active{color:var(--ink)}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;font-weight:800;transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease)}
.nav-cta{padding:13px 18px;background:linear-gradient(135deg,var(--green),var(--blue));color:#fff;box-shadow:0 12px 26px rgba(50,138,160,.22)}.nav-cta:hover,.button:hover{transform:translateY(-2px)}.nav-cta svg,.button svg{width:17px;height:17px}
.menu-toggle{display:none;margin-left:auto;width:47px;height:47px;border:1px solid var(--line);border-radius:15px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:var(--ink)}
.menu-toggle span{width:20px;height:2px;border-radius:99px;background:currentColor;transition:.25s var(--ease)}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.kicker{display:inline-flex;align-items:center;gap:11px;color:var(--green-dark);font-size:.76rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.kicker i{display:block;width:46px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--blue))}.kicker.light{color:rgba(255,255,255,.83)}.kicker.light i{background:linear-gradient(90deg,#a8e4da,#9bd6e5)}
.section-head{max-width:810px;margin-bottom:46px}.section-head h2,.craft-intro h2,.planning-copy h2,.quality-copy h2,.contact-copy h2{margin:16px 0 18px;font-size:clamp(2.45rem,5vw,5rem);line-height:1.02;letter-spacing:-.045em}.section-head h2 em,.craft-intro h2 em{font-style:normal;background:linear-gradient(125deg,var(--green-dark),var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}.section-head p,.craft-intro p{max-width:650px;margin:0;color:var(--muted);font-size:1.05rem}.section-head.light{color:#fff}.section-head.light h2 em{color:#bdeee5;background:none;-webkit-text-fill-color:initial}.section-head.light p{color:rgba(255,255,255,.72)}.section-head.split{max-width:none;display:grid;grid-template-columns:1.15fr .6fr;align-items:end;gap:60px}.section-head.split>div{max-width:760px}

.hero{position:relative;min-height:calc(100svh - 42px);display:flex;align-items:center;overflow:hidden;background:#0e272e;color:#fff;margin-top:-92px;padding-top:140px}
.hero-picture{position:absolute;inset:0}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.04);will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,23,28,.93) 0%,rgba(8,27,32,.78) 43%,rgba(6,21,26,.30) 74%,rgba(4,15,18,.16) 100%),linear-gradient(0deg,rgba(6,20,24,.54),transparent 55%)}
.hero-pattern{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000 0%,transparent 78%)}
.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.62fr);gap:58px;align-items:end;padding-block:110px 100px}
.hero-copy{max-width:850px}.hero h1{margin:20px 0 22px;font-size:clamp(3.35rem,7vw,7rem);line-height:.93;letter-spacing:-.06em}.hero h1 em{font-style:normal;color:#a8e4da}.hero-copy>p{max-width:710px;margin:0;color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.72}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.button{padding:15px 23px;border:1px solid transparent}.button-primary{background:linear-gradient(135deg,var(--green),var(--blue));color:#fff;box-shadow:0 16px 34px rgba(45,132,151,.25)}.button-primary:hover{box-shadow:0 22px 46px rgba(45,132,151,.34)}.button-glass{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.22);color:#fff;backdrop-filter:blur(10px)}.button-glass:hover{background:rgba(255,255,255,.16)}
.hero-proof{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.hero-proof span{display:flex;align-items:center;gap:9px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(8px);color:rgba(255,255,255,.78);font-size:.88rem}.hero-proof b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(168,228,218,.13);color:#b8eee5;font-size:.67rem}
.hero-plan-card{padding:27px;border-radius:30px;background:rgba(246,252,251,.90);backdrop-filter:blur(24px) saturate(140%);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.6)}.plan-card-head{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:.67rem;font-weight:850;letter-spacing:.14em}.hero-plan-card h2{font-size:1.9rem;line-height:1.16;letter-spacing:-.025em;margin:17px 0 20px}.hero-plan-card ol{list-style:none;padding:0;margin:0}.hero-plan-card li{display:flex;gap:13px;padding:15px 0;border-top:1px solid var(--line)}.hero-plan-card li>span{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,rgba(78,158,137,.14),rgba(50,138,160,.14));color:var(--blue-dark);font-weight:850;font-size:.75rem}.hero-plan-card li div{display:flex;flex-direction:column}.hero-plan-card li b{font-size:.94rem}.hero-plan-card li small{margin-top:3px;color:var(--muted);line-height:1.45}.hero-plan-card>a{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding:14px 16px;border-radius:16px;background:var(--ink);color:#fff;font-weight:800;font-size:.88rem}.hero-plan-card>a svg{width:19px;height:19px}
.hero-scroll{position:absolute;left:50%;bottom:23px;z-index:3;display:flex;align-items:center;gap:13px;transform:translateX(-50%);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.68)}.hero-scroll i{position:relative;width:28px;height:45px;border:1px solid rgba(255,255,255,.38);border-radius:99px}.hero-scroll i::after{content:"";position:absolute;left:50%;top:9px;width:5px;height:8px;border-radius:99px;background:#bdeee5;transform:translateX(-50%);animation:scrollDot 1.8s infinite}@keyframes scrollDot{0%{opacity:0;transform:translate(-50%,0)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,16px)}}
.load-reveal{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease),transform 1s var(--ease)}body.loaded .load-reveal{opacity:1;transform:none}.hero-plan-card.load-reveal{transition-delay:.18s}

.craft-story{padding:120px 0 0;background:linear-gradient(180deg,#f4f8f7 0%,#edf4f3 100%)}.craft-intro{max-width:960px;margin-bottom:72px}.craft-intro p{max-width:760px}.craft-sticky{display:grid;grid-template-columns:1.08fr .92fr;min-height:100vh;background:#0f292f}.craft-visual{position:sticky;top:0;height:100vh;overflow:hidden}.craft-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .75s var(--ease),transform 1.4s var(--ease)}.craft-image.active{opacity:1;transform:scale(1.01)}.craft-visual-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,24,.14),rgba(6,25,30,.43)),linear-gradient(0deg,rgba(4,18,22,.75),transparent 55%)}.craft-visual-label{position:absolute;left:42px;right:42px;bottom:38px;display:flex;justify-content:space-between;align-items:end;color:#fff;border-top:1px solid rgba(255,255,255,.34);padding-top:16px}.craft-visual-label span{font-size:.8rem;font-weight:850;letter-spacing:.16em}.craft-visual-label b{font-size:1.2rem}.craft-steps{padding:14vh 7vw 16vh}.craft-step{display:grid;grid-template-columns:60px 1fr;gap:22px;min-height:70vh;padding:44px 0;border-top:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.42);transition:color .45s var(--ease),transform .45s var(--ease)}.craft-step.active{color:#fff;transform:translateX(-8px)}.craft-step>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:.77rem;font-weight:850}.craft-step.active>span{background:linear-gradient(135deg,var(--green),var(--blue));border-color:transparent}.craft-step h3{margin:0 0 14px;font-size:clamp(1.8rem,3vw,3.1rem);line-height:1.05;letter-spacing:-.035em}.craft-step p{margin:0;max-width:530px;color:inherit}.craft-step ul{display:grid;gap:8px;padding:0;margin:24px 0 0;list-style:none}.craft-step li{position:relative;padding-left:18px;font-size:.91rem}.craft-step li::before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:#8ed7cb}

.services-scene{position:relative;padding:125px 0;overflow:hidden;background:#0e282f}.services-backdrop{position:absolute;inset:0;background:linear-gradient(rgba(6,24,29,.84),rgba(8,28,33,.89)),url('../images/marble-kitchen.jpg') center/cover fixed}.services-backdrop::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:74px 74px;opacity:.5}.services-inner{position:relative;z-index:1}.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{position:relative;overflow:hidden;border-radius:30px;background:rgba(251,255,254,.94);border:1px solid rgba(255,255,255,.36);box-shadow:0 28px 65px rgba(0,0,0,.22);transform-style:preserve-3d;transition:transform .25s ease-out,box-shadow .35s var(--ease)}.service-card:hover{box-shadow:0 36px 86px rgba(0,0,0,.30)}.service-media{position:relative;height:280px;overflow:hidden}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.service-card:hover .service-media img{transform:scale(1.07)}.service-media::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,24,28,.64))}.service-media>span{position:absolute;z-index:2;left:18px;top:18px;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.9);color:var(--blue-dark);font-size:.74rem;font-weight:850;backdrop-filter:blur(10px)}.service-body{padding:24px}.service-body>svg{width:27px;height:27px;color:var(--green-dark)}.service-body h3{margin:14px 0 9px;font-size:1.35rem;line-height:1.2}.service-body p{margin:0 0 21px;color:var(--muted);font-size:.95rem}.service-body a{display:inline-flex;align-items:center;gap:8px;color:var(--blue-dark);font-weight:850;font-size:.88rem}.service-body a svg{width:16px;height:16px}

.planning-section{position:relative;min-height:900px;display:flex;align-items:center;overflow:hidden;color:#fff;background:#0f292f}.planning-bg{position:absolute;inset:0}.planning-bg img{width:100%;height:100%;object-fit:cover}.planning-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,25,30,.94) 0%,rgba(7,25,30,.78) 48%,rgba(7,25,30,.34) 100%),linear-gradient(0deg,rgba(5,20,24,.5),transparent 55%)}.planning-layout{position:relative;z-index:1;display:grid;grid-template-columns:.84fr 1.16fr;gap:70px;align-items:center;padding-block:115px}.planning-copy h2{font-size:clamp(2.7rem,5vw,5.4rem)}.planning-copy h2 em,.quality-copy h2 em,.contact-copy h2 em{font-style:normal;color:#b8ece3}.planning-copy p{max-width:590px;color:rgba(255,255,255,.74);font-size:1.05rem;margin:0 0 30px}.planning-board{padding:26px;border-radius:32px;background:rgba(246,252,251,.92);backdrop-filter:blur(22px);color:var(--ink);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.48)}.board-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:.67rem;font-weight:850;letter-spacing:.14em;color:var(--muted)}.board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.board-grid article{position:relative;min-height:190px;padding:22px;border-radius:22px;background:linear-gradient(145deg,#fff,#edf5f4);border:1px solid rgba(31,102,121,.10);overflow:hidden}.board-grid article::before{content:"";position:absolute;right:-25px;bottom:-30px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(139,203,212,.28),transparent 68%)}.board-grid svg{width:25px;height:25px;color:var(--green-dark)}.board-grid span{float:right;font-size:.72rem;font-weight:850;color:var(--muted)}.board-grid h3{margin:24px 0 8px;font-size:1.12rem}.board-grid p{margin:0;color:var(--muted);font-size:.88rem}

.transformation-section{padding:125px 0;background:#f4f8f7}.comparison{position:relative;height:min(72vw,760px);min-height:460px;border-radius:38px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.7);background:#ccc;isolation:isolate}.comparison-layer{position:absolute;inset:0}.comparison-layer img{width:100%;height:100%;object-fit:cover}.comparison-layer span{position:absolute;top:22px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px);font-size:.72rem;font-weight:850;letter-spacing:.12em;color:var(--ink)}.comparison-after span{right:22px}.comparison-before{width:var(--position);overflow:hidden;border-right:2px solid rgba(255,255,255,.92)}.comparison-before img{width:calc(100vw - 44px);max-width:1220px}.comparison-before span{left:22px}.comparison-handle{position:absolute;z-index:3;left:var(--position);top:0;bottom:0;width:2px;background:#fff;transform:translateX(-50%);pointer-events:none}.comparison-handle i{position:absolute;left:50%;top:50%;width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 10px 30px rgba(0,0,0,.22);transform:translate(-50%,-50%)}.comparison-handle i::before,.comparison-handle i::after{content:"";position:absolute;top:50%;width:8px;height:8px;border-top:2px solid var(--ink);border-left:2px solid var(--ink)}.comparison-handle i::before{left:15px;transform:translateY(-50%) rotate(-45deg)}.comparison-handle i::after{right:15px;transform:translateY(-50%) rotate(135deg)}.comparison input{position:absolute;z-index:4;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}

.projects-section{position:relative;padding:125px 0;background:#eef4f3;overflow:hidden}.projects-texture{position:absolute;inset:0;background:linear-gradient(rgba(238,244,243,.89),rgba(238,244,243,.93)),url('../images/bathroom-green.jpg') center/cover fixed}.projects-texture::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(31,102,121,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(31,102,121,.08) 1px,transparent 1px);background-size:64px 64px;opacity:.38}.projects-section .container{position:relative}.project-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:130px;gap:20px}.project-card{position:relative;grid-column:span 4;grid-row:span 3;overflow:hidden;border-radius:28px;background:#fff;box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.68)}.project-card.project-large{grid-column:span 7;grid-row:span 5}.project-card.project-wide{grid-column:span 8;grid-row:span 3}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.project-card:hover img{transform:scale(1.055)}.project-card::after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(5,23,27,.86))}.project-card>div{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;color:#fff}.project-card span{font-size:.68rem;font-weight:850;letter-spacing:.16em;color:#bcebe4}.project-card h3{margin:9px 0 4px;font-size:clamp(1.2rem,2.2vw,2rem);line-height:1.1}.project-card p{margin:0;color:rgba(255,255,255,.73);font-size:.88rem}

.quality-section{position:relative;min-height:760px;display:flex;align-items:center;overflow:hidden;color:#fff;background:#092027}.quality-bg{position:absolute;inset:0}.quality-bg img{width:100%;height:100%;object-fit:cover;object-position:center}.quality-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,18,22,.92),rgba(6,23,28,.70) 55%,rgba(5,20,24,.33)),linear-gradient(0deg,rgba(4,18,22,.54),transparent)}.quality-content{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;padding-block:110px}.quality-copy p{max-width:640px;color:rgba(255,255,255,.74);font-size:1.05rem}.quality-metrics{display:grid;gap:14px}.quality-metrics article{padding:24px 26px;border-radius:24px;background:rgba(255,255,255,.10);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.18)}.quality-metrics strong{font-size:3.4rem;line-height:1;letter-spacing:-.05em}.quality-metrics span{font-size:1.4rem;color:#b5eadd}.quality-metrics small{display:block;margin-top:8px;color:rgba(255,255,255,.67)}

.testimonial-section{padding:125px 0;background:#f6faf9}.testimonial-slider{position:relative;max-width:980px;margin:0 auto;padding:64px 100px 46px;border-radius:34px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);text-align:center;overflow:hidden}.testimonial-slider::before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,var(--green),var(--aqua),var(--blue))}.testimonial-track{min-height:260px}.testimonial{display:none;animation:fadeSlide .5s var(--ease)}.testimonial.active{display:block}.testimonial>svg{width:48px;height:48px;margin:0 auto 20px;color:var(--blue)}.testimonial p{margin:0;font:500 clamp(1.35rem,2.25vw,2.05rem)/1.5 Georgia,serif;color:var(--ink)}.testimonial>div{display:flex;flex-direction:column;gap:4px;margin-top:25px}.testimonial strong{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.testimonial span{font-size:.78rem;color:var(--muted)}.slider-button{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:50px;height:50px;border-radius:16px;border:1px solid var(--line);background:#fff;color:var(--blue-dark);font-size:2rem;box-shadow:var(--shadow-soft);transition:.25s var(--ease)}.slider-button:hover{background:linear-gradient(135deg,var(--green),var(--blue));color:#fff;border-color:transparent}.slider-button.prev{left:24px}.slider-button.next{right:24px}.slider-dots{display:flex;justify-content:center;gap:8px;margin-top:18px}.slider-dots button{width:9px;height:9px;border:0;padding:0;border-radius:999px;background:rgba(31,102,121,.18)}.slider-dots button.active{width:28px;background:linear-gradient(90deg,var(--green),var(--blue))}@keyframes fadeSlide{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.contact-section{position:relative;padding:125px 0;color:#fff;overflow:hidden;background:#0b252b}.contact-bg{position:absolute;inset:0}.contact-bg img{width:100%;height:100%;object-fit:cover}.contact-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,21,25,.95),rgba(7,25,30,.84) 52%,rgba(7,25,30,.44)),linear-gradient(0deg,rgba(4,18,22,.58),transparent)}.contact-layout{position:relative;z-index:1;display:grid;grid-template-columns:.88fr 1.12fr;gap:52px;align-items:start}.contact-copy p{max-width:620px;color:rgba(255,255,255,.72)}.contact-lines{display:grid;gap:12px;margin-top:30px}.contact-lines a,.contact-lines>div{display:flex;align-items:center;gap:15px;padding:16px 18px;border-radius:20px;background:rgba(255,255,255,.085);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px)}.contact-lines svg{flex:none;width:22px;height:22px;color:#aee8de}.contact-lines span{display:flex;flex-direction:column}.contact-lines small{font-size:.72rem;color:rgba(255,255,255,.55)}.contact-lines strong{font-size:.98rem}
.quote-form{padding:32px;border-radius:32px;background:rgba(247,252,251,.94);backdrop-filter:blur(20px);color:var(--ink);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.5)}.form-head>span{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(78,158,137,.12);color:var(--green-dark);font-size:.7rem;font-weight:850;letter-spacing:.13em}.form-head h3{margin:15px 0 7px;font-size:1.95rem;line-height:1.15}.form-head p{margin:0;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.form-grid label{display:flex;flex-direction:column;gap:7px}.form-grid label>span,.form-consent span{font-size:.84rem;font-weight:750}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:14px 15px;border-radius:15px;border:1px solid rgba(31,102,121,.17);background:#fff;color:var(--ink);outline:none;transition:.2s var(--ease)}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:rgba(50,138,160,.48);box-shadow:0 0 0 4px rgba(139,203,212,.22)}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#93a3a7}.form-full{grid-column:1/-1}.form-consent{display:flex;align-items:flex-start;gap:9px;margin:16px 0}.form-consent input{accent-color:var(--green-dark);margin-top:3px}.form-submit{width:100%}.form-status{min-height:20px;margin:10px 0 0;color:var(--blue-dark);font-size:.86rem;font-weight:700}

.footer{padding:70px 0 0;background:#eaf2f1;color:var(--ink)}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,.7fr);gap:36px;padding-bottom:36px}.footer h4{margin:0 0 14px;font-size:.95rem}.footer a:not(.brand){display:block;margin-top:9px;color:var(--muted);font-size:.9rem;transition:.2s var(--ease)}.footer a:not(.brand):hover{color:var(--blue-dark);transform:translateX(3px)}.footer-brand p{max-width:380px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0 28px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.footer-bottom p{margin:0}

.floating-whatsapp,.mobile-bar{display:none}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-visible{opacity:1;transform:none}

@media (max-width:1100px){
  .main-nav{gap:17px}.nav-cta{display:none}
  .hero-layout{grid-template-columns:1fr .72fr;gap:34px}.hero h1{font-size:clamp(3rem,7vw,6rem)}
  .service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-layout,.quality-content,.contact-layout{grid-template-columns:1fr;gap:42px}
  .planning-board{max-width:840px}.quality-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .project-mosaic{grid-auto-rows:115px}.project-card{grid-column:span 6}.project-card.project-large{grid-column:span 7}.project-card.project-wide{grid-column:span 12}
}

@media (max-width:860px){
  html{scroll-padding-top:84px}.topline{display:none}.site-header{top:0;padding:8px 0}.nav-shell{min-height:66px}.menu-toggle{display:flex}.main-nav{position:absolute;left:22px;right:22px;top:calc(100% + 8px);display:grid;gap:4px;padding:14px;border-radius:24px;background:rgba(255,255,255,.98);box-shadow:var(--shadow);border:1px solid var(--line);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s var(--ease)}.main-nav.open{opacity:1;visibility:visible;transform:none}.main-nav a{padding:12px 10px}.main-nav a::after{display:none}
  .hero{margin-top:-84px;padding-top:100px}.hero-layout{grid-template-columns:1fr;padding-block:90px 80px}.hero-plan-card{max-width:600px}.hero-scroll{display:none}
  .craft-story{padding-top:90px}.craft-sticky{display:block;min-height:auto;background:#0f292f;padding:24px}.craft-visual{position:relative;top:auto;height:58svh;min-height:460px;border-radius:28px}.craft-steps{padding:30px 0 0;display:grid;grid-template-columns:repeat(4,85%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory}.craft-step{min-height:auto;display:block;padding:26px;border:1px solid rgba(255,255,255,.14);border-radius:24px;background:rgba(255,255,255,.06);scroll-snap-align:start;color:#fff}.craft-step>span{margin-bottom:18px}.craft-step.active{transform:none}.craft-step ul{margin-top:18px}
  .services-backdrop,.projects-texture{background-attachment:scroll}.planning-section{min-height:auto}.planning-layout{padding-block:90px}.board-grid{grid-template-columns:1fr 1fr}
  .comparison{height:620px}.comparison-before img{width:calc(100vw - 44px)}
  .section-head.split{grid-template-columns:1fr;gap:16px}
  .project-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:300px}.project-card,.project-card.project-large,.project-card.project-wide{grid-column:span 1;grid-row:span 1}
  .quality-metrics{grid-template-columns:1fr 1fr 1fr}.testimonial-slider{padding:60px 75px 42px}
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:640px){
  :root{--container:min(100% - 24px,1220px)}body{padding-bottom:78px}.site-header{background:rgba(244,248,247,.76);backdrop-filter:blur(16px)}.nav-shell{padding:8px 8px 8px 11px;border-radius:18px}.brand-mark{width:44px;height:44px;border-radius:13px}.brand-copy strong{font-size:1.2rem}.brand-copy small{font-size:.56rem}.menu-toggle{width:43px;height:43px;border-radius:13px}
  .hero{min-height:860px;align-items:end}.hero-picture img{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(5,20,24,.96) 0%,rgba(5,20,24,.83) 48%,rgba(5,20,24,.26) 100%)}.hero-pattern{background-size:46px 46px;mask-image:linear-gradient(0deg,#000 0%,transparent 70%)}.hero-layout{padding-block:135px 60px;gap:24px}.hero h1{font-size:clamp(2.65rem,12.8vw,4.2rem);line-height:.96;margin-top:16px}.hero-copy>p{font-size:.98rem}.hero-actions{display:grid;grid-template-columns:1fr}.button{width:100%}.hero-proof{display:grid;grid-template-columns:1fr 1fr}.hero-proof span{border-radius:15px;padding:9px}.hero-plan-card{padding:21px;border-radius:24px}.hero-plan-card h2{font-size:1.45rem}.hero-plan-card li{padding:12px 0}.hero-plan-card>a{font-size:.81rem}
  .craft-story{padding-top:78px}.craft-intro{margin-bottom:38px}.craft-intro h2,.section-head h2,.planning-copy h2,.quality-copy h2,.contact-copy h2{font-size:clamp(2.2rem,11vw,3.55rem)}.craft-intro p,.section-head p{font-size:.98rem}.craft-sticky{padding:12px}.craft-visual{height:52svh;min-height:390px;border-radius:22px}.craft-visual-label{left:20px;right:20px;bottom:18px}.craft-steps{grid-template-columns:repeat(4,91%)}.craft-step{padding:23px}.craft-step h3{font-size:1.65rem}
  .services-scene,.transformation-section,.projects-section,.testimonial-section,.contact-section{padding:82px 0}.service-cards{grid-template-columns:1fr}.service-media{height:250px}.planning-layout{padding-block:82px}.planning-board{padding:18px;border-radius:24px}.board-grid{grid-template-columns:1fr}.board-grid article{min-height:auto}.comparison{height:510px;min-height:0;border-radius:24px}.comparison-before img{width:calc(100vw - 24px)}.comparison-layer span{top:14px}.comparison-after span{right:14px}.comparison-before span{left:14px}.comparison-handle i{width:48px;height:48px}
  .project-mosaic{display:grid;grid-template-columns:1fr;grid-auto-rows:330px;gap:14px}.project-card,.project-card.project-large,.project-card.project-wide{grid-column:1;grid-row:auto;border-radius:22px}.project-card>div{left:18px;right:18px;bottom:17px}.quality-section{min-height:auto}.quality-content{padding-block:84px}.quality-metrics{grid-template-columns:1fr}.quality-metrics article{padding:20px}.quality-metrics strong{font-size:2.8rem}
  .testimonial-slider{padding:52px 22px 35px;border-radius:24px}.slider-button{display:none}.testimonial-track{min-height:330px}.quote-form{padding:22px;border-radius:24px}.form-grid{grid-template-columns:1fr}.form-full{grid-column:auto}.footer{padding-top:52px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;align-items:flex-start}
  .floating-whatsapp{position:fixed;right:15px;bottom:91px;z-index:60;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--blue));color:#fff;box-shadow:0 16px 34px rgba(45,132,151,.30)}.floating-whatsapp svg{width:23px;height:23px}.mobile-bar{position:fixed;left:10px;right:10px;bottom:10px;z-index:59;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border-radius:20px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid rgba(31,102,121,.14);box-shadow:0 18px 36px rgba(9,33,39,.17)}.mobile-bar a{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px 7px;border-radius:14px;background:#edf4f3;color:var(--ink);font-size:.79rem;font-weight:800}.mobile-bar a:first-child{background:linear-gradient(135deg,var(--green),var(--blue));color:#fff}.mobile-bar svg{width:17px;height:17px}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal,.load-reveal{opacity:1;transform:none}.site-loader{display:none}}
