@font-face{font-family:Manrope;src:url("fonts/manrope-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url("fonts/manrope-700.ttf") format("truetype");font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:"DM Mono";src:url("fonts/dmmono-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}

:root{
  --ink:#171713;
  --paper:#f3f0e9;
  --paper-2:#e8e3d9;
  --lime:#c4ff00;
  --lime-dark:#a6ca17;
  --white:#fff;
  --grey:#8c8a83;
  --line:rgba(23,23,19,.16);
  --line-light:rgba(255,255,255,.17);
  --serif:Georgia,"Times New Roman",serif;
  --sans:Manrope,Arial,sans-serif;
  --mono:"DM Mono",Consolas,monospace;
  --pad:clamp(22px,4.4vw,76px);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:102px;scrollbar-gutter:stable}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;overflow-x:hidden;text-rendering:optimizeLegibility}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
::selection{background:var(--lime);color:var(--ink)}
.skip-link{position:fixed;z-index:9999;top:10px;left:10px;padding:12px 18px;background:var(--lime);transform:translateY(-160%);transition:.2s}
.skip-link:focus{transform:none}

#main{padding-top:92px}
.site-header,.site-header.location-header{position:fixed;top:0;left:0;right:0;z-index:100;height:92px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:var(--paper);transition:box-shadow .25s}
.site-header.is-sticky{box-shadow:0 8px 30px rgba(0,0,0,.06)}
.brand{display:flex;align-items:center;position:relative;flex-shrink:0}
.site-header .brand{z-index:102}
.brand-frame{position:relative;display:block;overflow:hidden;width:300px;aspect-ratio:1885/352;background:transparent}
.brand-logo{position:absolute;display:block;width:115.2255%;max-width:none;height:auto;left:-7.8515%;top:-50.5682%;filter:url(#logo-cutout)}
.brand:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.footer-brand{width:fit-content;max-width:100%}
.footer-brand .brand-frame{width:280px;max-width:100%}
.brand-filters{position:absolute;pointer-events:none}
.footer-brand .brand-frame{background:transparent}
.footer-brand .brand-logo{filter:url(#footer-logo-white)}
.desktop-nav{display:flex;align-items:center;gap:clamp(19px,2.2vw,38px);margin-left:auto;margin-right:clamp(24px,3vw,54px);font-size:12px}
.desktop-nav a{position:relative;padding:11px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:1px;background:var(--ink);transition:right .3s}
.desktop-nav a:hover::after{right:0}
.header-actions{display:flex;align-items:center;gap:16px}
.header-phone{font-family:var(--mono);font-size:10px;line-height:1.3;text-align:right}
.header-phone span{display:block;color:var(--grey);font-family:var(--sans);font-size:9px;text-transform:uppercase;letter-spacing:.6px}
.header-phone .phone-number{display:block;color:var(--ink);font-size:14px;text-transform:none;letter-spacing:0}
.header-phone .phone-mobile{display:none}
.nav-cta{display:flex;align-items:center;gap:24px;padding:13px 17px;border:1px solid var(--ink);font-size:11px;font-weight:700;transition:.25s}
.nav-cta:hover{background:var(--ink);color:white}
.nav-cta span{font-size:16px}
.menu-toggle{display:none;position:relative;z-index:102;width:42px;height:42px;border:0;background:none;padding:0}
.menu-toggle span{position:absolute;left:8px;width:27px;height:1px;background:var(--ink);transition:.3s}
.menu-toggle span:first-child{top:16px}.menu-toggle span:last-child{top:25px}
.menu-toggle[aria-expanded="true"] span:first-child{top:21px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{top:21px;transform:rotate(-45deg)}
.mobile-menu{display:none}
.mobile-menu[hidden]{display:none}

.hero{min-height:calc(100svh - 92px);display:grid;grid-template-columns:minmax(420px,46%) 1fr;padding:34px var(--pad) 44px}
.hero-copy{min-width:0;padding:6.5vh 4.2vw 0 0;display:flex;flex-direction:column}
.eyebrow,.section-index{margin:0;font-family:var(--mono);font-size:9px;letter-spacing:1.25px;text-transform:uppercase}
.eyebrow{margin-bottom:clamp(35px,5vh,70px)}
.eyebrow span{display:inline-block;width:30px;height:8px;margin-right:11px;background:var(--lime)}
.hero h1{margin:0;font-size:clamp(53px,5.95vw,108px);line-height:.865;letter-spacing:-.075em;font-weight:600}
.hero h1 em,.display-title em,.section-head h2 em,.process-heading h2 em,.standard-copy h2 em,.estimate h2 em,.faq h2 em{font-family:var(--serif);font-weight:400}
.lead{max-width:535px;margin:clamp(28px,4vh,48px) 0 0;font-size:clamp(16px,1.27vw,22px);line-height:1.52;letter-spacing:-.025em}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:clamp(27px,3.4vh,40px)}
.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-width:225px;padding:18px 20px;border:0;font-size:12px;font-weight:700;transition:transform .25s,background .25s,color .25s}
.button:hover{transform:translateY(-2px)}
.button span{font-size:19px;font-weight:400}
.button-dark{background:var(--ink);color:white}
.button-dark:hover{background:#36362f}
.button-lime{background:var(--lime);color:var(--ink)}
.button-lime:hover{background:white}
.text-link{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:4px}
.time-note{max-width:490px;margin:14px 0 0;color:#77756f;font-size:9px;line-height:1.5}
.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:auto;padding:24px 0 6px;border-top:1px solid var(--line);font-size:9px;line-height:1.4;text-transform:uppercase}
.trust-row b{display:block;margin-bottom:7px;color:#718b00;font-family:var(--mono);font-size:10px}
.hero-visual{position:relative;min-height:650px;overflow:hidden;background:#d5d0c7;isolation:isolate}
.hero-visual>img{width:100%;height:100%;object-fit:cover;transform:scale(1.045);animation:heroIn 1.3s cubic-bezier(.22,1,.36,1) both}
@keyframes heroIn{from{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1.045)}}
.image-grain{pointer-events:none;position:absolute;inset:0;z-index:1;opacity:.16;background:repeating-linear-gradient(117deg,rgba(255,255,255,.035) 0,rgba(255,255,255,.035) 1px,transparent 1px,transparent 5px)}
.hero-caption{position:absolute;z-index:2;left:22px;bottom:22px;color:white;text-shadow:0 1px 14px rgba(0,0,0,.46)}
.hero-caption span,.hero-caption strong{display:block}.hero-caption span{font-family:var(--mono);font-size:8px;text-transform:uppercase;letter-spacing:1px}.hero-caption strong{margin-top:5px;font-size:17px}
.timeline-badge{position:absolute;z-index:2;top:0;right:0;width:155px;padding:17px 18px;display:flex;align-items:flex-end;gap:10px;background:var(--lime);color:var(--ink)}
.timeline-badge strong{font-size:49px;line-height:.8;letter-spacing:-5px}.timeline-badge span{font-size:8px;text-transform:uppercase;line-height:1.38}
.scroll-cue{position:absolute;z-index:2;right:18px;bottom:18px;width:66px;height:66px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:50%;color:white;animation:float 2.3s ease-in-out infinite}
.scroll-cue span{font-family:var(--mono);font-size:7px;text-transform:uppercase;transform:rotate(-90deg);position:absolute}.scroll-cue b{font-weight:400;transform:translateY(16px)}
@keyframes float{50%{transform:translateY(-7px)}}

.ticker{overflow:hidden;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--lime);padding:17px 0}
.ticker-track{display:flex;align-items:center;width:max-content;gap:36px;white-space:nowrap;animation:ticker 28s linear infinite;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1.2px}
.ticker-track i{font-style:normal;font-size:9px}
@keyframes ticker{to{transform:translateX(-50%)}}

.section-pad{padding-left:var(--pad);padding-right:var(--pad)}
.idea{position:relative;min-height:900px;padding-top:115px;padding-bottom:140px;overflow:hidden}
.idea-content{max-width:1200px;margin:78px auto 0}
.kicker{margin:0 0 26px 27%;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#77756d}
.display-title{margin:0;font-size:clamp(62px,8.4vw,155px);line-height:.82;letter-spacing:-.072em;font-weight:600}
.display-title em{display:inline-block;color:#747168}
.idea-detail{width:min(510px,40%);margin:58px 5% 0 auto}
.idea-detail p{margin:0;font-size:clamp(16px,1.3vw,21px);line-height:1.65;letter-spacing:-.02em}
.arrow-link{display:flex;justify-content:space-between;margin-top:33px;padding:17px 0;border-top:1px solid var(--ink);font-size:11px;font-weight:700}.arrow-link span{font-size:18px}
.idea-stat{position:absolute;left:var(--pad);bottom:130px;display:flex;align-items:flex-end;gap:12px;color:#718b00}
.idea-stat>span{position:absolute;top:-12px;left:5px;font-family:var(--mono);font-size:8px;text-transform:uppercase}
.idea-stat strong{font-size:92px;line-height:.75;letter-spacing:-9px}.idea-stat small{font-size:9px;line-height:1.35;text-transform:uppercase;color:var(--ink)}

.projects{padding-top:110px;padding-bottom:130px;background:#ddd8cd}
.section-head{display:grid;grid-template-columns:1fr minmax(250px,400px);gap:60px;align-items:end;margin-bottom:72px}
.section-head h2,.process-heading h2,.standard-copy h2,.estimate h2,.faq h2{margin:22px 0 0;font-size:clamp(50px,6.5vw,105px);line-height:.9;letter-spacing:-.065em;font-weight:600}
.section-intro{margin:0 0 10px;font-size:17px;line-height:1.65}
.project-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(15px,2vw,32px);align-items:start}
.project-card{appearance:none;text-align:left;border:0;background:none;padding:0;color:inherit;min-width:0}
.project-card:nth-child(1){grid-column:span 5}.project-card:nth-child(2){grid-column:span 7;margin-top:110px}.project-card:nth-child(3){grid-column:2/span 4;margin-top:20px}.project-card:nth-child(4){grid-column:7/span 5;margin-top:-40px}.project-card:nth-child(5){grid-column:span 6;margin-top:70px}.project-card:nth-child(6){grid-column:8/span 5;margin-top:20px}
.project-image{position:relative;display:block;overflow:hidden;background:#bbb5a9}
.project-tall .project-image{aspect-ratio:4/5}.project-wide .project-image{aspect-ratio:1.42/1}.project-square .project-image{aspect-ratio:1/1}
.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .5s}
.project-card:hover img{transform:scale(1.045);filter:saturate(.86)}
.project-view{position:absolute;right:18px;bottom:18px;width:70px;height:70px;display:grid;place-items:center;border-radius:50%;background:var(--lime);font-family:var(--mono);font-size:8px;text-transform:uppercase;transform:scale(0);transition:transform .35s}.project-view b{position:absolute;right:10px;top:8px;font-size:14px;font-weight:400}.project-card:hover .project-view{transform:scale(1)}
.project-meta{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid rgba(0,0,0,.25)}
.project-meta>span{font-size:14px;font-weight:700}.project-meta>span b{margin-right:14px;color:#718b00;font-family:var(--mono);font-size:9px}.project-meta small{font-size:9px;text-transform:uppercase;color:#6f6c66}
.projects-cta{margin-top:90px;padding:30px 0;border-top:1px solid rgba(0,0,0,.25);display:flex;justify-content:flex-end;align-items:center;gap:34px}.projects-cta p{font-family:var(--serif);font-size:22px;font-style:italic}

.situations{padding-top:130px;padding-bottom:150px}.situations-head{display:grid;grid-template-columns:1fr 1.4fr .65fr;gap:4vw;align-items:end;margin-bottom:90px}.situations-head h2,.pricing-heading h2,.before-call h2,.modekor-roots h2,.locations-preview h2{margin:0;font-size:clamp(43px,5vw,82px);line-height:.94;letter-spacing:-.06em}.situations-head h2 em,.pricing-heading h2 em,.before-call h2 em,.locations-preview h2 em{font-family:var(--serif);font-weight:400}.situations-head>p:last-child{margin:0;font-size:14px;line-height:1.65}
.situations-grid{display:grid;gap:110px}.situation-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:550px;background:var(--paper-2)}.situation-card.situation-reverse{grid-template-columns:.95fr 1.05fr}.situation-reverse .situation-image{grid-column:2;grid-row:1}.situation-reverse .situation-copy{grid-column:1;grid-row:1}.situation-image{position:relative;min-height:550px;overflow:hidden}.situation-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1)}.situation-card:hover .situation-image img{transform:scale(1.025)}.situation-image>span{position:absolute;left:18px;bottom:18px;padding:9px 12px;background:var(--lime);font-family:var(--mono);font-size:8px;text-transform:uppercase}.situation-copy{padding:clamp(38px,6vw,95px);display:flex;flex-direction:column;justify-content:center}.situation-copy small{font-family:var(--mono);font-size:8px;text-transform:uppercase;color:#74716a}.situation-copy h3{max-width:570px;margin:30px 0 24px;font-family:var(--serif);font-size:clamp(31px,3.3vw,54px);font-style:italic;font-weight:400;line-height:1.05;letter-spacing:-.04em}.situation-copy p{max-width:540px;margin:0;font-size:15px;line-height:1.7}.situation-copy ul{list-style:none;margin:35px 0 0;padding:22px 0 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 26px}.situation-copy li{font-family:var(--mono);font-size:8px;text-transform:uppercase}.situation-copy li::before{content:"+";margin-right:7px;color:#718b00}

.process{position:relative;background:var(--ink);color:white;padding-top:120px;padding-bottom:70px;overflow:hidden}
.process::before{content:"60";position:absolute;right:-4vw;top:-3vw;color:rgba(255,255,255,.025);font-size:40vw;font-weight:700;letter-spacing:-.12em;line-height:.8}
.process-top{position:relative;z-index:1}
.process-heading{display:grid;grid-template-columns:1fr 280px;gap:50px;align-items:end;margin-top:36px}.process-heading p{margin:0 0 11px;color:#b7b5ae;font-size:15px;line-height:1.65}
.process-line{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:100px}
.process-line::before{content:"";position:absolute;top:58px;left:var(--pad);right:var(--pad);height:1px;background:var(--line-light)}
.process-step{position:relative;padding:0 36px 0 0;min-height:290px}.process-step:not(:first-child){padding-left:30px;border-left:1px solid var(--line-light)}
.step-no{font-family:var(--mono);font-size:9px;color:#8f8e88}.step-dot{position:relative;z-index:2;width:11px;height:11px;margin:24px 0 43px;border:3px solid var(--ink);outline:1px solid var(--lime);border-radius:50%;background:var(--lime)}
.process-step small{font-family:var(--mono);font-size:8px;text-transform:uppercase;color:var(--lime)}
.process-step h3{margin:14px 0 17px;font-size:20px}.process-step p{margin:0;color:#a9a8a2;font-size:12px;line-height:1.65}
.process-foot{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:40px;margin-top:35px;padding-top:28px;border-top:1px solid var(--line-light)}.process-foot p{max-width:720px;margin:0;color:#77766f;font-size:9px;line-height:1.6}.process-foot a{display:flex;gap:50px;font-size:12px;font-weight:700;color:var(--lime)}

.standard{padding-top:130px;padding-bottom:140px;display:grid;grid-template-columns:minmax(300px,.72fr) 1.28fr;gap:8vw}
.standard-copy{position:sticky;top:120px;align-self:start}.standard-copy h2{font-size:clamp(52px,5.6vw,92px)}.standard-copy>p:last-child{max-width:500px;margin:38px 0 0;font-size:16px;line-height:1.7}
.standard-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.feature{position:relative;min-height:330px;padding:30px;border:1px solid var(--line);display:flex;flex-direction:column}.feature>span{font-family:var(--mono);font-size:9px}.feature h3{margin:auto 0 18px;max-width:260px;font-size:26px;line-height:1.05;letter-spacing:-.04em}.feature p{margin:0;max-width:280px;font-size:12px;line-height:1.65}.feature i{position:absolute;right:25px;top:24px;font-size:21px;font-style:normal}.feature-lime{background:var(--lime);border-color:var(--lime)}.feature-dark{background:var(--ink);color:white}.feature-dark p{color:#aaa9a3}.feature-image{padding:0;overflow:hidden;border:0}.feature-image img{width:100%;height:100%;object-fit:cover;position:absolute}.image-label{position:absolute!important;left:17px;bottom:17px;padding:8px 10px;background:var(--paper);font-size:8px!important;text-transform:uppercase}

.pricing{padding-top:135px;padding-bottom:145px;background:#dcd7cc}.pricing-heading{display:grid;grid-template-columns:.55fr 1.35fr .7fr;gap:4vw;align-items:end;margin-bottom:80px}.pricing-heading>p:last-child{margin:0;font-size:14px;line-height:1.7}.price-factors{border-top:1px solid var(--ink)}.price-factor{display:grid;grid-template-columns:70px 1fr 160px;gap:30px;align-items:start;padding:32px 0;border-bottom:1px solid var(--ink)}.price-factor>span{font-family:var(--mono);font-size:9px;color:#718b00}.price-factor>div{display:grid;grid-template-columns:minmax(220px,.7fr) 1fr;gap:45px}.price-factor h3{margin:0;font-size:23px;letter-spacing:-.035em}.price-factor p{max-width:680px;margin:0;color:#5d5b55;font-size:13px;line-height:1.7}.price-factor strong{font-family:var(--mono);font-size:8px;text-align:right;text-transform:uppercase;font-weight:400}.pricing-note{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;margin-top:55px;padding:35px 0;border-top:1px solid rgba(0,0,0,.25);border-bottom:1px solid rgba(0,0,0,.25)}.pricing-note p{max-width:750px;margin:0;font-family:var(--serif);font-size:clamp(21px,2vw,31px);font-style:italic;line-height:1.4}

.quote-band{display:grid;grid-template-columns:1.05fr .95fr;min-height:650px;background:#c7c1b5}.quote-image{min-height:650px}.quote-image img{width:100%;height:100%;object-fit:cover}.quote-band blockquote{margin:0;padding:8vw 8vw 6vw;display:flex;flex-direction:column}.quote-band blockquote>span{font-family:var(--serif);font-size:130px;line-height:.5;color:#718b00}.quote-band blockquote p{margin:auto 0;font-family:var(--serif);font-size:clamp(31px,3.4vw,56px);font-style:italic;line-height:1.08;letter-spacing:-.035em}.quote-band blockquote footer{padding-top:25px;border-top:1px solid rgba(0,0,0,.26);font-family:var(--mono);font-size:8px;text-transform:uppercase;letter-spacing:1px}

.before-call{padding-top:135px;padding-bottom:140px;display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.before-call-copy>p:not(.section-index){max-width:560px;margin:35px 0 0;color:#5e5c56;font-size:15px;line-height:1.75}.before-call-copy .section-index{margin-bottom:30px}.before-call-copy .arrow-link{max-width:420px}.before-call-list{align-self:end}.before-call-list>p{margin:0 0 18px;font-family:var(--mono);font-size:9px;text-transform:uppercase}.before-call-list ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}.before-call-list li{display:grid;grid-template-columns:48px 1fr 190px;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid var(--ink)}.before-call-list li>span{font-family:var(--mono);font-size:8px;color:#718b00}.before-call-list b{font-size:15px}.before-call-list small{color:#74716a;font-size:10px;line-height:1.5}
.locations-preview{padding-top:130px;padding-bottom:135px;display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw;background:var(--ink);color:white}.locations-preview-copy>p:not(.section-index){max-width:530px;margin:35px 0 0;color:#aaa9a3;font-size:14px;line-height:1.7}.locations-preview-copy .section-index{margin-bottom:30px;color:var(--lime)}.locations-preview-copy .arrow-link{max-width:430px;border-color:var(--line-light);color:var(--lime)}.locations-preview-links{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-light)}.locations-preview-links a{display:grid;grid-template-columns:38px 1fr 22px;gap:12px;align-items:center;padding:21px 18px 21px 0;border-bottom:1px solid var(--line-light);transition:color .2s}.locations-preview-links a:nth-child(odd){border-right:1px solid var(--line-light)}.locations-preview-links a:nth-child(even){padding-left:22px}.locations-preview-links a:hover{color:var(--lime)}.locations-preview-links span{font-family:var(--mono);font-size:8px;color:#77766f}.locations-preview-links b{font-size:14px}.locations-preview-links i{font-style:normal;font-weight:400}
.modekor-roots{padding-top:115px;padding-bottom:120px;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;background:var(--lime)}.roots-mark{align-self:center;font-size:clamp(66px,10vw,170px);font-weight:800;letter-spacing:-.1em}.roots-mark span{font-family:var(--serif);font-size:.45em;font-weight:400}.roots-copy .section-index{margin-bottom:25px}.modekor-roots h2{max-width:760px}.roots-copy>p:not(.section-index){max-width:760px;margin:30px 0 0;font-size:16px;line-height:1.75}.roots-copy>a{display:flex;justify-content:space-between;max-width:380px;margin-top:35px;padding:16px 0;border-top:1px solid var(--ink);font-size:12px;font-weight:700}

.estimate{display:grid;grid-template-columns:.88fr 1.12fr;background:var(--ink);color:white}
.estimate-side{padding:120px var(--pad) 110px}.estimate-side h2{font-size:clamp(50px,5.4vw,88px)}.estimate-side>p:not(.section-index){max-width:470px;margin:32px 0 0;color:#aaa9a2;font-size:15px;line-height:1.7}.estimate-contact{margin-top:65px;padding:23px 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}.estimate-contact span,.estimate-contact small{display:block;font-size:9px;text-transform:uppercase;color:#83827c}.estimate-contact a{display:block;margin:9px 0;font-size:clamp(25px,2.3vw,39px);letter-spacing:-.04em}.estimate-benefits{list-style:none;padding:0;margin:32px 0 0;display:flex;flex-wrap:wrap;gap:12px 24px;font-size:10px;text-transform:uppercase;color:#aaa9a2}.estimate-benefits b{color:var(--lime);margin-right:5px}
.estimate-form{position:relative;background:var(--paper);color:var(--ink);padding:85px clamp(24px,5vw,86px);min-height:790px}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important}.form-progress{height:2px;background:#d3cfc5}.form-progress span{display:block;width:33.333%;height:100%;background:var(--ink);transition:width .45s}.form-step-label{display:grid;grid-template-columns:50px 1fr auto;align-items:center;margin:25px 0 60px;font-family:var(--mono);font-size:9px;text-transform:uppercase}.form-step-label>span{font-size:16px}.form-step-label p{margin:0}.form-step-label small{color:#84827b}.form-step-label small b{color:var(--ink)}
.estimate-form[data-current-step="2"] .form-progress span{width:66.666%}.estimate-form[data-current-step="3"] .form-progress span{width:100%}
.form-step h3{max-width:580px;margin:0 0 10px;font-size:clamp(28px,2.25vw,40px);line-height:1.12;letter-spacing:-.04em}.form-hint{margin:0 0 35px;color:#77756f;font-size:12px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:34px 0}.choice{position:relative;min-height:150px;border:1px solid #c7c3ba;padding:17px;cursor:pointer;transition:.22s}.choice input{position:absolute;opacity:0}.choice:has(input:checked){background:var(--lime);border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.choice:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}.choice b{position:absolute;left:15px;bottom:14px;font-size:11px}.layout-icon{position:relative;display:block;width:68px;height:60px;margin:8px auto}.layout-icon i{position:absolute;display:block;background:#8c8a83}.choice:has(input:checked) .layout-icon i{background:var(--ink)}.layout-straight i{width:62px;height:10px;left:3px;bottom:8px}.layout-l i:first-child{width:62px;height:10px;left:3px;bottom:8px}.layout-l i:last-child{width:10px;height:45px;left:3px;bottom:8px}.layout-u i:first-child{width:62px;height:10px;left:3px;bottom:8px}.layout-u i:nth-child(2){width:10px;height:45px;left:3px;bottom:8px}.layout-u i:nth-child(3){width:10px;height:45px;right:3px;bottom:8px}.layout-island i:first-child{width:62px;height:10px;left:3px;top:6px}.layout-island i:last-child{width:40px;height:14px;left:14px;bottom:8px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:block;margin-top:22px}.field>span{display:block;margin-bottom:9px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.field>span small{font-weight:400;color:#89867f;text-transform:none}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #aaa69d;border-radius:0;background:transparent;padding:13px 2px;font-size:14px;outline:0}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}.input-with-unit{position:relative}.input-with-unit i{position:absolute;right:4px;bottom:14px;font-style:normal;font-size:12px}.input-with-unit input{padding-right:35px}.upload-field{display:flex;align-items:center;gap:18px;margin-top:27px;padding:20px;border:1px dashed #9f9b92;cursor:pointer}.upload-field input{position:absolute;opacity:0}.upload-icon{width:47px;height:47px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--lime);font-size:23px}.upload-field>span:last-child{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:3px 20px}.upload-field b,.upload-field small{display:block}.upload-field b{font-size:11px}.upload-field small{grid-column:1;color:#86837c;font-size:8px;text-transform:uppercase}.upload-field em{grid-column:2;grid-row:1/3;font-family:var(--mono);font-size:8px;font-style:normal;text-transform:uppercase}.consent{display:flex;gap:12px;align-items:flex-start;margin-top:22px;cursor:pointer}.consent input{position:absolute;opacity:0}.consent>span{width:18px;height:18px;flex:0 0 auto;border:1px solid #89867e;display:grid;place-items:center}.consent input:checked+span{background:var(--ink)}.consent input:checked+span::after{content:"✓";color:white;font-size:11px}.consent input:focus-visible+span{outline:2px solid var(--lime);outline-offset:2px}.consent small{color:#696761;font-size:9px;line-height:1.5}.consent button{border:0;border-bottom:1px solid;padding:0;background:none;font-size:inherit}.form-nav{display:flex;align-items:center;justify-content:space-between;margin-top:45px;padding-top:24px;border-top:1px solid #d0ccc2}.back-button{border:0;background:none;padding:12px 0;font-size:10px}.submit-button{min-width:245px}.form-status{margin-top:18px;font-size:12px;line-height:1.5}.form-status.is-error{color:#a12a20}.form-status.is-success{padding:18px;background:#dfffa4;color:#1e2d00}.estimate-form.is-sent .form-step,.estimate-form.is-sent .form-step-label,.estimate-form.is-sent .form-progress{display:none!important}.form-success-panel{padding:80px 0}.form-success-panel b{display:block;font-family:var(--serif);font-size:70px;font-style:italic}.form-success-panel h3{font-size:35px}.form-success-panel a{display:inline-block;margin-top:20px;border-bottom:1px solid}.button[disabled]{opacity:.55;cursor:wait}

.faq{padding-top:130px;padding-bottom:140px;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.faq-title-block{position:sticky;top:120px;align-self:start}.faq h2{font-size:clamp(48px,5vw,82px)}.faq-title-block>p:not(.section-index){max-width:410px;margin-top:28px;color:#67655f;font-size:14px;line-height:1.65}.faq-title-block>a{display:flex;justify-content:space-between;max-width:310px;margin-top:34px;padding:16px 0;border-top:1px solid var(--ink);font-weight:700;font-size:14px}.faq-list details{border-top:1px solid var(--ink)}.faq-list details:last-child{border-bottom:1px solid var(--ink)}.faq-list summary{list-style:none;display:grid;grid-template-columns:45px 1fr 30px;gap:15px;align-items:center;padding:27px 0;cursor:pointer;font-size:16px;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-family:var(--mono);font-size:8px;color:#77756f}.faq-list summary i{font-size:20px;font-style:normal;font-weight:400;transition:transform .25s}.faq-list details[open] summary i{transform:rotate(45deg)}.faq-list details p{margin:0;padding:0 40px 29px 60px;color:#5f5d58;font-size:13px;line-height:1.7}

.site-footer{padding:105px var(--pad) 28px;background:#11110e;color:white}.footer-top{display:grid;grid-template-columns:1fr .7fr 1.4fr;gap:50px;align-items:start;padding-bottom:75px;border-bottom:1px solid var(--line-light)}.footer-brand{display:flex;align-items:flex-start;gap:9px;font-size:clamp(40px,5vw,79px);line-height:.78;font-weight:700;letter-spacing:-.07em}.footer-brand b{color:var(--lime);font-family:var(--mono);font-size:.28em;letter-spacing:-.1em}.footer-top>p{margin:0;color:#898882;font-family:var(--serif);font-size:17px;font-style:italic;line-height:1.45}.footer-cta{font-size:clamp(26px,3vw,46px);line-height:1.08;letter-spacing:-.04em}.footer-cta em{display:inline-grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--lime);color:var(--ink);font-size:19px;font-style:normal;vertical-align:middle}.footer-bottom{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:52px 0}.footer-bottom>div{display:flex;flex-direction:column;gap:8px}.footer-bottom>div>span{margin-bottom:11px;color:#696863;font-family:var(--mono);font-size:8px;text-transform:uppercase;letter-spacing:1px}.footer-bottom a,.footer-bottom p,.footer-bottom button{margin:0;padding:0;border:0;background:none;color:#bbb9b3;font-size:11px;line-height:1.6;text-align:left}.footer-bottom a:hover,.footer-bottom button:hover{color:var(--lime)}.footer-legal{padding-top:20px;border-top:1px solid var(--line-light);display:grid;grid-template-columns:1fr 1fr auto;gap:30px;color:#686761;font-family:var(--mono);font-size:8px;text-transform:uppercase}.footer-legal p{margin:0}.footer-legal a{color:#aaa9a3}

.floating-contact{position:fixed;z-index:90;right:17px;bottom:17px;display:flex;box-shadow:0 8px 34px rgba(0,0,0,.2);transform:translateY(140%);transition:transform .4s}.floating-contact.is-visible{transform:none}.floating-contact>a{display:flex;align-items:center;gap:8px;padding:13px 16px;background:white;font-size:10px}.floating-contact>a:last-child{background:var(--lime);font-weight:700}.floating-contact small{display:none}.pulse{width:7px;height:7px;border-radius:50%;background:#5bb127;box-shadow:0 0 0 0 rgba(91,177,39,.5);animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(91,177,39,0)}}

/* Podstrony miejscowości */
.location-page{background:var(--paper)}.location-header{position:relative}.breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:55px;color:#85827a;font-family:var(--mono);font-size:8px;text-transform:uppercase}.breadcrumbs a:hover{color:var(--ink)}.breadcrumbs b{color:var(--ink);font-weight:400}.location-hero{min-height:calc(100svh - 92px);display:grid;grid-template-columns:1.05fr .95fr;background:var(--ink);color:white}.location-hero-copy{padding-top:70px;padding-bottom:60px;display:flex;flex-direction:column;justify-content:center}.location-hero .eyebrow{margin-bottom:35px;color:#bbb9b3}.location-hero h1{margin:0;max-width:900px;font-size:clamp(54px,6.5vw,110px);line-height:.88;letter-spacing:-.07em}.location-hero h1 em{font-family:var(--serif);font-weight:400;color:var(--lime)}.location-lead{max-width:690px;margin:42px 0 0;color:#c1bfb8;font-size:clamp(16px,1.35vw,21px);line-height:1.65}.location-hero .text-link{border-color:white}.location-hero .time-note{color:#85837d}.location-hero-image{position:relative;min-height:680px;overflow:hidden}.location-hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.58))}.location-hero-image>img{width:100%;height:100%;object-fit:cover}.location-hero-image>div{position:absolute;z-index:1;left:30px;right:30px;bottom:28px;display:flex;justify-content:space-between;gap:30px;align-items:end}.location-hero-image span{font-family:var(--serif);font-size:31px;font-style:italic}.location-hero-image strong{font-family:var(--mono);font-size:8px;text-transform:uppercase}
.location-intro{padding-top:135px;padding-bottom:140px;display:grid;grid-template-columns:.55fr 1.45fr;gap:7vw}.location-intro>div{max-width:950px}.location-intro h2,.location-section-head h2,.location-process-heading h2,.location-gallery-copy h2,.location-faq h2,.nearby-locations h2,.location-final-cta h2,.locations-hub-hero h1,.location-directory-head h2,.location-hub-cta h2{margin:0;font-size:clamp(46px,5.2vw,88px);line-height:.94;letter-spacing:-.06em}.location-intro>div>p{max-width:760px;margin:35px 0 0;font-size:16px;line-height:1.75}.location-intro>div>p+p{padding-top:28px;border-top:1px solid var(--line)}
.location-editorial{padding-top:130px;padding-bottom:140px;display:grid;grid-template-columns:.42fr 1.58fr;gap:7vw;background:#e8e3d9;border-top:1px solid var(--line)}.location-editorial aside{display:flex;flex-direction:column;align-items:flex-start}.location-editorial aside>span{margin-top:55px;font-family:var(--mono);font-size:8px;text-transform:uppercase;color:#77756f}.location-editorial aside>strong{margin-top:10px;font-family:var(--serif);font-size:clamp(34px,3.4vw,58px);font-style:italic;font-weight:400;line-height:1}.location-editorial article h2{max-width:1050px;margin:0;font-size:clamp(42px,4.8vw,76px);line-height:.98;letter-spacing:-.055em}.location-editorial-text{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(25px,3.3vw,58px);margin-top:70px;padding-top:32px;border-top:1px solid var(--ink)}.location-editorial-text p{margin:0;color:#4e4c47;font-size:13px;line-height:1.78}.location-editorial article ul{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,50px);margin:65px 0 0;padding:0}.location-editorial article li{display:grid;grid-template-columns:32px 1fr;gap:10px;padding-top:18px;border-top:1px solid var(--ink);font-size:11px;font-weight:700;line-height:1.5;text-transform:uppercase}.location-editorial article li span{font-family:var(--mono);font-size:8px;color:#718b00}

.location-needs{padding-top:125px;padding-bottom:135px;background:#ddd8cd}.location-section-head{display:grid;grid-template-columns:.55fr 1.45fr;gap:7vw;margin-bottom:85px}.location-section-head h2 em,.location-process-heading h2 em,.location-gallery-copy h2 em,.location-faq h2 em,.nearby-locations h2 em,.location-final-cta h2 em,.locations-hub-hero h1 em,.location-directory-head h2 em,.location-hub-cta h2 em{font-family:var(--serif);font-weight:400}.location-needs-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.location-needs-grid article{min-height:370px;padding:30px 4vw 35px 0;display:flex;flex-direction:column}.location-needs-grid article+article{padding-left:4vw;border-left:1px solid var(--ink)}.location-needs-grid span{font-family:var(--mono);font-size:9px;color:#718b00}.location-needs-grid h3{max-width:310px;margin:auto 0 20px;font-size:28px;line-height:1.05;letter-spacing:-.04em}.location-needs-grid p{max-width:380px;margin:0;color:#5d5b55;font-size:13px;line-height:1.7}
.location-process{padding-top:125px;padding-bottom:90px;background:var(--ink);color:white}.location-process-heading{display:grid;grid-template-columns:.55fr 1.45fr;gap:7vw;margin-bottom:85px}.local-steps{list-style:none;margin:0;display:grid;grid-template-columns:repeat(4,1fr);padding-top:0;padding-bottom:0}.local-steps li{min-height:340px;padding:28px 30px 32px 0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);display:flex;flex-direction:column}.local-steps li+li{padding-left:30px;border-left:1px solid var(--line-light)}.local-steps span{font-family:var(--mono);font-size:9px;color:var(--lime)}.local-steps div{margin-top:auto}.local-steps h3{margin:0 0 16px;font-size:23px}.local-steps p{margin:0;color:#aaa9a3;font-size:12px;line-height:1.7}.local-time{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:start;padding-top:55px}.local-time strong{font-family:var(--serif);font-size:clamp(38px,4vw,64px);font-style:italic;color:var(--lime);font-weight:400}.local-time p{max-width:690px;margin:8px 0 0;color:#8c8a84;font-size:11px;line-height:1.7}
.location-gallery{padding-top:140px;padding-bottom:145px}.location-gallery-copy{display:grid;grid-template-columns:.45fr 1.05fr .5fr;gap:4vw;align-items:end;margin-bottom:75px}.location-gallery-copy>p:last-child{margin:0;color:#5d5b55;font-size:13px;line-height:1.7}.location-gallery-grid{display:grid;grid-template-columns:1.15fr .7fr .85fr;gap:18px;align-items:start}.location-gallery-grid img{width:100%;height:550px;object-fit:cover}.location-gallery-grid img:nth-child(2){height:430px;margin-top:120px}.location-gallery-grid img:nth-child(3){height:490px;margin-top:40px}
.location-faq{padding-top:130px;padding-bottom:140px;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;background:#dcd7cc}.location-faq .faq-list{align-self:start}.location-faq .faq-list details p{padding-left:60px}
.nearby-locations{padding-top:115px;padding-bottom:125px;display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.nearby-locations>div:last-child{border-top:1px solid var(--ink)}.nearby-locations a{display:grid;grid-template-columns:170px 1fr 25px;gap:20px;align-items:center;padding:24px 0;border-bottom:1px solid var(--ink)}.nearby-locations a:hover strong{color:#718b00}.nearby-locations a span{font-family:var(--mono);font-size:8px;text-transform:uppercase;color:#77756f}.nearby-locations a strong{font-size:19px;transition:color .2s}.nearby-locations a i{font-style:normal}
.location-final-cta{padding-top:120px;padding-bottom:120px;background:var(--lime)}.location-final-cta>p{margin:0 0 28px;font-family:var(--mono);font-size:9px;text-transform:uppercase}.location-final-cta h2{max-width:1100px}.location-final-cta>div{display:flex;align-items:center;gap:35px;margin-top:45px}.location-final-cta>div>a:last-child{border-bottom:1px solid;font-size:12px}.location-mini-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding-top:35px;padding-bottom:35px;background:#11110e;color:#aaa9a3;font-size:10px}.location-mini-footer a:first-child{color:white;font-weight:700}.location-mini-footer p{margin:0;text-align:center}.location-mini-footer a:last-child{text-align:right}

/* Katalog miejscowości */
.locations-hub-hero{min-height:610px;padding-top:120px;padding-bottom:90px;background:var(--ink);color:white;display:grid;grid-template-columns:1.35fr .65fr;gap:7vw;align-items:end}.locations-hub-hero .eyebrow{color:#aaa9a3}.locations-hub-hero>p{max-width:500px;margin:0;color:#b5b3ad;font-size:16px;line-height:1.7}.locations-hub-hero h1 em{color:var(--lime)}.location-directory{padding-top:130px;padding-bottom:145px}.location-directory-head{display:grid;grid-template-columns:.55fr 1.45fr;gap:7vw;margin-bottom:100px}.province-groups{display:grid;gap:90px}.province-group{display:grid;grid-template-columns:.45fr 1.55fr;gap:7vw}.province-label{display:flex;justify-content:space-between;gap:20px;padding-top:21px;border-top:1px solid var(--ink);font-size:14px;font-weight:700}.province-label small{color:#77756f;font-family:var(--mono);font-size:8px;font-weight:400;text-transform:uppercase}.province-links{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}.province-links a{display:grid;grid-template-columns:42px 1fr 22px;gap:14px;align-items:center;padding:20px 15px 20px 0;border-bottom:1px solid var(--ink)}.province-links a:nth-child(odd){border-right:1px solid var(--ink)}.province-links a:nth-child(even){padding-left:20px}.province-links a:hover strong{color:#718b00}.province-links span{font-family:var(--mono);font-size:8px;color:#77756f}.province-links strong{font-size:14px;transition:color .2s}.province-links i{font-style:normal}.location-hub-cta{padding-top:115px;padding-bottom:120px;background:var(--lime)}.location-hub-cta>p{margin:0 0 25px;font-family:var(--mono);font-size:9px;text-transform:uppercase}.location-hub-cta>div{display:flex;gap:30px;align-items:center;margin-top:45px}

dialog{border:0;padding:0}.lightbox{width:min(1120px,92vw);max-width:none;background:#111;color:white}.lightbox::backdrop,.privacy-dialog::backdrop{background:rgba(10,10,8,.85);backdrop-filter:blur(6px)}.lightbox img{width:100%;max-height:80vh;object-fit:contain}.dialog-close{position:absolute;z-index:2;right:15px;top:15px;width:43px;height:43px;border:0;border-radius:50%;background:var(--lime);font-size:25px;line-height:1}.lightbox-caption{display:flex;justify-content:space-between;padding:17px 20px}.lightbox-caption span{font-family:var(--mono);font-size:8px;text-transform:uppercase}.lightbox-caption b{font-size:13px}.privacy-dialog{width:min(650px,92vw);max-width:none;padding:55px;background:var(--paper)}.privacy-dialog h2{margin:18px 0 25px;font-size:52px;letter-spacing:-.05em}.privacy-dialog p:not(.section-index){color:#5e5c56;font-size:13px;line-height:1.7}.privacy-dialog a{border-bottom:1px solid}.privacy-dialog .button{margin-top:20px}

.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(35px);transition:opacity .75s,transform .75s cubic-bezier(.22,1,.36,1)}.js .reveal.is-visible{opacity:1;transform:none}

@media(max-width:1180px){
  .desktop-nav{display:none}.header-phone{display:none}.menu-toggle{display:block}.mobile-menu{display:flex;position:fixed;z-index:101;inset:0;background:var(--paper);padding:125px var(--pad) 40px;flex-direction:column;transform:translateY(-110%);transition:transform .48s cubic-bezier(.22,1,.36,1)}.mobile-menu.is-open{transform:none}.mobile-menu>a:not(.mobile-call){display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:clamp(27px,5vw,50px);font-weight:600;letter-spacing:-.05em}.mobile-menu>a span{font-family:var(--mono);font-size:8px;color:#78766f}.mobile-call{margin-top:auto;padding:18px;background:var(--lime);text-align:center;font-weight:700}.hero{grid-template-columns:48% 52%}.hero-copy{padding-right:3vw}.hero h1{font-size:6vw}.idea{min-height:780px}.standard{gap:5vw}.choice-grid{grid-template-columns:1fr 1fr}.estimate-form{padding-left:4vw;padding-right:4vw}
}

@media(max-width:860px){
  .site-header{height:76px}.site-header.is-sticky{height:70px}.brand-name small{display:none}.nav-cta{display:none}
  .hero{min-height:auto;grid-template-columns:1fr;padding-top:22px}.hero-copy{min-height:680px;padding:6vh 0 40px}.hero h1{font-size:clamp(58px,12vw,92px)}.lead{max-width:580px}.trust-row{margin-top:70px}.hero-visual{min-height:76svh}
  .idea{min-height:720px;padding-top:90px}.idea-content{margin-top:60px}.kicker{margin-left:0}.display-title{font-size:12vw}.idea-detail{width:60%}.idea-stat{bottom:90px}.idea-stat strong{font-size:70px}
  .section-head{grid-template-columns:1fr}.section-intro{max-width:520px}.project-card:nth-child(n){grid-column:auto;margin-top:0}.project-grid{grid-template-columns:1fr 1fr}.project-card:nth-child(3n){grid-column:1/-1}.projects-cta{justify-content:space-between}
  .process-heading{grid-template-columns:1fr}.process-heading p{max-width:420px}.process-line{grid-template-columns:1fr 1fr;gap:50px 0}.process-line::before{display:none}.process-step:nth-child(3){border-left:0}.process-step{min-height:240px}.step-dot{margin-bottom:28px}
  .standard{grid-template-columns:1fr}.standard-copy{position:relative;top:0}.standard-copy>p:last-child{max-width:650px}.quote-band{grid-template-columns:1fr}.quote-image{min-height:60vw}.quote-band blockquote{min-height:520px;padding:70px var(--pad)}
  .estimate{grid-template-columns:1fr}.estimate-side{padding-top:95px;padding-bottom:85px}.estimate-form{padding:70px var(--pad)}
  .faq{grid-template-columns:1fr}.faq-title-block{position:relative;top:0}.faq-title-block>p:not(.section-index){max-width:600px}.footer-top{grid-template-columns:1fr 1fr}.footer-cta{grid-column:1/-1}.footer-bottom{grid-template-columns:1fr 1fr}.footer-legal{grid-template-columns:1fr auto}.footer-legal p:nth-child(2){display:none}
}

@media(max-width:560px){
  :root{--pad:20px}.site-header{padding:0 18px}.brand-mark{width:39px;height:39px}.brand-name{font-size:15px}
  .hero{padding:15px 20px 26px}.hero-copy{min-height:670px;padding-top:42px}.eyebrow{margin-bottom:32px}.hero h1{font-size:15.1vw;line-height:.89}.lead{margin-top:28px;font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.hero-actions .button{width:100%}.time-note{font-size:8px}.trust-row{gap:7px;margin-top:auto}.trust-row span{font-size:8px}.hero-visual{min-height:610px}.hero-visual>img{object-position:55% center}.timeline-badge{width:133px}.scroll-cue{display:none}.hero-caption{bottom:16px;left:16px}
  .ticker{padding:14px 0}.ticker-track{gap:25px}
  .idea{min-height:780px;padding-top:85px;padding-bottom:120px}.idea-content{margin-top:64px}.display-title{font-size:14.5vw;line-height:.87}.idea-detail{width:86%;margin-top:44px;margin-left:auto;margin-right:0}.idea-detail p{font-size:14px}.idea-stat{left:20px;bottom:80px}.idea-stat strong{font-size:62px}.idea-stat small{font-size:7px}
  .projects{padding-top:85px;padding-bottom:90px}.section-head{margin-bottom:45px;gap:25px}.section-head h2,.process-heading h2,.standard-copy h2,.estimate h2,.faq h2{font-size:13vw}.section-intro{font-size:14px}.project-grid{display:flex;overflow-x:auto;gap:14px;margin-right:-20px;padding-right:20px;scroll-snap-type:x mandatory;scrollbar-width:none}.project-grid::-webkit-scrollbar{display:none}.project-card:nth-child(n){flex:0 0 80vw;scroll-snap-align:start}.project-card:nth-child(2n){margin-top:40px}.project-image{aspect-ratio:4/5!important}.project-meta{display:block}.project-meta small{display:block;margin-top:5px;margin-left:26px}.project-view{display:none}.projects-cta{margin-top:55px;display:block}.projects-cta p{font-size:19px}.projects-cta .button{width:100%}
  .process{padding-top:85px}.process-line{grid-template-columns:1fr;margin-top:65px}.process-step,.process-step:not(:first-child){min-height:0;padding:0 0 45px 35px;border-left:1px solid var(--line-light)}.process-step:last-child{padding-bottom:10px}.step-dot{position:absolute;left:-6px;top:23px}.process-step h3{margin-top:12px}.process-foot{align-items:flex-start;flex-direction:column}.process-foot a{gap:30px}
  .standard{padding-top:90px;padding-bottom:95px}.standard-copy>p:last-child{font-size:14px}.standard-grid{grid-template-columns:1fr}.feature{min-height:275px}.feature-image{min-height:390px}.quote-image{min-height:92vw}.quote-band blockquote{min-height:500px;padding-top:70px}.quote-band blockquote>span{font-size:100px}.quote-band blockquote p{font-size:31px}
  .estimate-side{padding:85px 20px 70px}.estimate-contact a{font-size:29px}.estimate-benefits{display:grid}.estimate-form{min-height:750px;padding:55px 20px}.form-step-label{margin-bottom:45px}.choice{min-height:125px}.layout-icon{transform:scale(.83);transform-origin:top center}.field-row{grid-template-columns:1fr;gap:0}.form-nav{gap:16px}.form-nav .button{min-width:0;flex:1}.upload-field>span:last-child{display:block}.upload-field em{display:block;margin-top:7px}.consent small{font-size:8px}.submit-button{min-width:0}
  .faq{padding-top:90px;padding-bottom:95px}.faq-list summary{grid-template-columns:29px 1fr 22px;gap:9px;font-size:13px;line-height:1.35}.faq-list details p{padding-left:38px;padding-right:10px;font-size:12px}
  .site-footer{padding-top:80px}.footer-top{grid-template-columns:1fr}.footer-brand{font-size:61px}.footer-cta{font-size:31px}.footer-bottom{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-legal{display:flex;justify-content:space-between}.floating-contact{left:12px;right:12px;bottom:11px}.floating-contact>a{flex:1;justify-content:center}.floating-contact>a:last-child{max-width:120px}.privacy-dialog{padding:48px 22px 30px}.privacy-dialog h2{font-size:42px}.lightbox{width:96vw}
}

@media(max-width:860px){
  .situations-head,.pricing-heading{grid-template-columns:1fr}.situations-head>p:last-child,.pricing-heading>p:last-child{max-width:620px}.situation-card,.situation-card.situation-reverse{grid-template-columns:1fr}.situation-reverse .situation-image,.situation-reverse .situation-copy{grid-column:auto;grid-row:auto}.situation-reverse .situation-copy{grid-row:2}.situation-image{min-height:65vw}.situation-copy{min-height:430px}.price-factor>div{grid-template-columns:1fr}.price-factor{grid-template-columns:45px 1fr 110px}.pricing-note{grid-template-columns:1fr}.before-call,.locations-preview,.modekor-roots{grid-template-columns:1fr}.before-call-list{margin-top:20px}.roots-mark{font-size:110px}.locations-preview-links{margin-top:20px}
  .location-hero{grid-template-columns:1fr}.location-hero-image{min-height:70vw}.location-intro,.location-section-head,.location-process-heading,.location-faq,.nearby-locations{grid-template-columns:1fr}.location-intro>p.section-index,.location-section-head>.section-index,.location-process-heading>.section-index{margin-bottom:10px}.location-needs-grid{grid-template-columns:1fr}.location-needs-grid article{min-height:270px;padding:28px 0}.location-needs-grid article+article{padding-left:0;border-left:0;border-top:1px solid var(--ink)}.local-steps{grid-template-columns:1fr 1fr}.local-steps li:nth-child(3){border-left:0}.location-gallery-copy{grid-template-columns:1fr}.location-gallery-copy>p:last-child{max-width:620px}.location-gallery-grid{grid-template-columns:1fr 1fr}.location-gallery-grid img{height:65vw}.location-gallery-grid img:nth-child(2){height:50vw;margin-top:70px}.location-gallery-grid img:nth-child(3){grid-column:1/-1;height:60vw;margin-top:0}.nearby-locations>div:last-child{margin-top:25px}.locations-hub-hero,.location-directory-head,.province-group{grid-template-columns:1fr}.locations-hub-hero>p{max-width:650px}.location-directory-head{margin-bottom:70px}.province-group{gap:25px}.province-label{max-width:450px}
}

@media(max-width:560px){
  .situations{padding-top:85px;padding-bottom:95px}.situations-head{margin-bottom:50px}.situations-head h2,.pricing-heading h2,.before-call h2,.modekor-roots h2,.locations-preview h2{font-size:12.6vw}.situations-grid{gap:45px}.situation-image{min-height:92vw}.situation-copy{min-height:0;padding:42px 24px}.situation-copy h3{font-size:34px}.situation-copy p{font-size:13px}.pricing{padding-top:90px;padding-bottom:95px}.pricing-heading{margin-bottom:50px}.price-factor{grid-template-columns:35px 1fr;padding:26px 0}.price-factor>div{gap:18px}.price-factor>strong{grid-column:2;text-align:left}.pricing-note{gap:28px}.before-call{padding-top:90px;padding-bottom:95px}.before-call-list li{grid-template-columns:32px 1fr;padding:21px 0}.before-call-list small{grid-column:2}.locations-preview{padding-top:90px;padding-bottom:95px}.locations-preview-links{grid-template-columns:1fr}.locations-preview-links a:nth-child(n){padding-left:0;border-right:0}.modekor-roots{padding-top:80px;padding-bottom:85px}.roots-mark{font-size:80px}.roots-copy>p:not(.section-index){font-size:14px}
  .location-header .brand-name small{display:none}.location-header .header-phone{display:block;font-size:9px}.location-header .header-phone span{display:none}.location-hero-copy{min-height:700px;padding-top:55px;padding-bottom:50px}.breadcrumbs{margin-bottom:40px}.location-hero h1{font-size:14vw}.location-lead{font-size:15px}.location-hero .hero-actions{align-items:flex-start}.location-hero-image{min-height:600px}.location-hero-image>div{left:18px;right:18px;bottom:18px;display:block}.location-hero-image strong{display:block;margin-top:8px}.location-intro,.location-needs,.location-gallery,.location-faq{padding-top:88px;padding-bottom:92px}.location-intro h2,.location-section-head h2,.location-process-heading h2,.location-gallery-copy h2,.location-faq h2,.nearby-locations h2,.location-final-cta h2,.locations-hub-hero h1,.location-directory-head h2,.location-hub-cta h2{font-size:12.7vw}.location-intro>div>p{font-size:14px}.location-section-head{margin-bottom:50px}.location-needs-grid article{min-height:245px}.location-process{padding-top:88px}.location-process-heading{margin-bottom:55px}.local-steps{grid-template-columns:1fr}.local-steps li,.local-steps li+li{min-height:250px;padding:25px 0;border-left:0;border-top:1px solid var(--line-light)}.local-time{grid-template-columns:1fr;padding-top:45px}.location-gallery-copy{margin-bottom:45px}.location-gallery-grid{display:flex;overflow-x:auto;gap:13px;margin-right:-20px;padding-right:20px;scroll-snap-type:x mandatory}.location-gallery-grid img,.location-gallery-grid img:nth-child(n){flex:0 0 82vw;width:82vw;height:105vw;margin:0;scroll-snap-align:start}.location-faq{gap:55px}.location-faq .faq-list details p{padding-left:38px}.nearby-locations{padding-top:85px;padding-bottom:90px}.nearby-locations a{grid-template-columns:1fr 24px}.nearby-locations a span{display:none}.location-final-cta{padding-top:85px;padding-bottom:90px}.location-final-cta>div,.location-hub-cta>div{align-items:flex-start;flex-direction:column}.location-mini-footer{grid-template-columns:1fr;padding-top:30px;padding-bottom:30px}.location-mini-footer p,.location-mini-footer a:last-child{text-align:left}.locations-hub-hero{min-height:650px;padding-top:90px;padding-bottom:70px}.location-directory{padding-top:88px;padding-bottom:95px}.location-directory-head{margin-bottom:60px}.province-groups{gap:65px}.province-label{display:block}.province-label small{display:block;margin-top:8px}.province-links{grid-template-columns:1fr}.province-links a:nth-child(n){padding-left:0;border-right:0}.location-hub-cta{padding-top:85px;padding-bottom:90px}
}

@media(max-width:860px){.location-editorial{grid-template-columns:1fr}.location-editorial aside{display:grid;grid-template-columns:1fr auto;align-items:end}.location-editorial aside .section-index{grid-column:1/-1}.location-editorial aside>span{margin-top:35px}.location-editorial aside>strong{margin-left:20px}.location-editorial-text{grid-template-columns:1fr 1fr}.location-editorial-text p:last-child{grid-column:1/-1;max-width:760px}}
@media(max-width:560px){.location-editorial{padding-top:88px;padding-bottom:92px}.location-editorial aside{display:flex}.location-editorial aside>span{margin-top:35px}.location-editorial aside>strong{margin:9px 0 0}.location-editorial article h2{margin-top:48px;font-size:11.5vw}.location-editorial-text{grid-template-columns:1fr;gap:28px;margin-top:45px}.location-editorial-text p,.location-editorial-text p:last-child{grid-column:auto;font-size:13px}.location-editorial article ul{grid-template-columns:1fr;gap:18px;margin-top:48px}}

.roots-mark{display:flex;flex-direction:column;align-items:flex-start;gap:24px;letter-spacing:normal}
.modekor-roots{background:var(--paper-2)}
.roots-mark .brand{max-width:100%;padding:0;background:transparent}
.roots-mark .brand-frame{width:clamp(220px,26vw,380px);max-width:100%}
.roots-mark span{font-family:var(--sans);font-size:16px;font-weight:700;line-height:1.6}
html.menu-open,body.menu-open{overflow:hidden;overscroll-behavior:none}
@media(max-width:1180px){
  .site-header,.site-header.location-header{--header-height:92px;height:var(--header-height)}
  .site-header.is-sticky{height:var(--header-height)}
  .mobile-menu{position:absolute;inset:100% 0 auto;z-index:101;height:calc(100dvh - var(--header-height));padding:18px var(--pad) max(24px,env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;transform:none;transition:none;border-top:1px solid var(--line)}
  .mobile-menu>a:not(.mobile-call){flex-shrink:0;padding:clamp(12px,2.2dvh,20px) 0;font-size:clamp(24px,5vw,42px);line-height:1.25}
  .mobile-menu .mobile-call{flex-shrink:0;margin-top:28px;font-size:16px}
  .header-actions{position:relative;z-index:102;gap:10px}
  .menu-toggle{width:44px;height:44px;flex-shrink:0}
  .location-header .header-phone{display:block;font-size:14px}
}
@media(max-width:860px){
  .site-header,.site-header.location-header{--header-height:76px}
  #main{padding-top:76px}
  html{scroll-padding-top:86px}
  .brand-frame{width:280px}
}
@media(max-width:560px){
  .site-header,.site-header.location-header{gap:10px;padding-inline:16px}
  .brand-frame{width:min(270px,calc(100vw - 103px))}
  .location-header .brand-frame{width:min(255px,calc(100vw - 112px))}
  .location-header .header-phone{font-family:var(--sans);font-size:14px;font-weight:700;white-space:nowrap;padding:12px 0}
  .location-header .header-phone .phone-number{display:none}
  .location-header .header-phone .phone-mobile{display:block;color:var(--ink);font-size:14px;font-weight:700;text-transform:none;letter-spacing:0}
  .footer-brand .brand-frame{width:min(300px,calc(100vw - 40px))}
}
@media(max-width:360px){.site-header.location-header{gap:8px;padding-inline:12px}.location-header .header-phone{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.ticker-track{animation:none}.js .reveal{opacity:1;transform:none}}

/* Dokumenty i informacja przy formularzu — czytelne także na małym ekranie. */
.legal-links{display:flex;flex-wrap:wrap;gap:10px 24px}
.footer-bottom .legal-links{flex-direction:column;gap:8px}
.footer-bottom .legal-links a{font-size:14px;line-height:1.6}
.location-mini-footer>.legal-links{grid-column:1/-1;border-top:1px solid var(--line-light);padding-top:24px}
.location-mini-footer .legal-links a{font-size:14px;color:#d7d5cd;text-align:left;font-weight:400}
.form-privacy{margin:24px 0 0;font-size:14px;line-height:1.75;color:#4b4943}
.form-privacy a,.consent a{text-decoration:underline;text-underline-offset:3px}
.consent small{font-size:14px;line-height:1.65;color:#4b4943}
.consent input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}
.estimate-form .field input,.estimate-form .field textarea,.estimate-form .field select{font-size:16px}
.legal-page{overflow-wrap:anywhere}
.legal-home{font-size:14px;font-weight:700;padding:12px 0;white-space:nowrap;border-bottom:1px solid var(--ink)}
.legal-hero{padding-top:80px;padding-bottom:58px;border-bottom:1px solid var(--line);background:var(--paper-2)}
.legal-hero h1{max-width:1000px;font-size:clamp(42px,6.6vw,92px);line-height:1.05;letter-spacing:-.055em;margin:24px 0}
.legal-intro{max-width:720px;font-size:18px;line-height:1.75;color:#4b4943}
.legal-version{margin-top:24px;font-size:14px;color:#535148}
.legal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.legal-actions a,.legal-actions button{min-height:46px;padding:12px 18px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:inherit;font-size:14px;cursor:pointer}
.legal-actions a{background:var(--ink);color:#fff}
.legal-layout{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(0,2fr);gap:clamp(32px,7vw,120px);max-width:1440px;margin:0 auto;padding-top:64px;padding-bottom:100px;align-items:start}
.legal-toc{position:sticky;top:120px}
.legal-toc>p{margin:0 0 22px;font-size:16px;font-weight:700}
.legal-toc>nav:not(.legal-links){display:grid;gap:4px}
.legal-toc>nav:not(.legal-links) a{display:flex;gap:14px;font-size:14px;line-height:1.5;padding:10px 0;border-bottom:1px solid var(--line)}
.legal-toc a span{font-family:var(--mono);font-size:11px;line-height:2;color:#676458;flex-shrink:0}
.legal-toc .legal-links{display:grid;gap:0;margin-top:32px;font-size:14px}
.legal-toc .legal-links a{padding:9px 0;text-decoration:underline;text-underline-offset:4px}
.legal-body{max-width:800px;font-size:16px;line-height:1.8}
.legal-company{padding:28px;background:var(--paper-2);border-left:3px solid #718b00}
.legal-company h2{font-size:17px;line-height:1.4;letter-spacing:0;margin:0 0 20px}
.legal-company p{margin:10px 0 0}
.legal-company a{text-decoration:underline;text-underline-offset:4px}
.legal-body>section{padding-top:40px;margin-top:32px;border-top:1px solid var(--line);scroll-margin-top:112px}
.legal-body>section h2{font-size:clamp(23px,2.3vw,30px);line-height:1.25;letter-spacing:-.025em;margin:0 0 24px}
.legal-body h2>span{color:#696658;font-size:16px;font-family:var(--mono)}
.legal-body>section p,.legal-body>section li{color:#4a4841}
.legal-body>section p{margin:0 0 18px}
.legal-body ul{padding-left:22px}
.legal-body li{padding-left:5px;margin-bottom:16px}
.legal-footer{padding-top:40px;padding-bottom:40px;background:var(--ink);color:#d7d5cd;font-size:14px;line-height:1.7}
.legal-footer .legal-links{font-size:16px;margin-bottom:28px}
.legal-footer a:hover,.legal-toc a:hover{text-decoration:underline;text-underline-offset:4px}
.legal-page :focus-visible{outline:2px solid #718b00;outline-offset:4px}
@media(max-width:860px){
  .legal-layout{grid-template-columns:1fr;gap:40px;padding-top:38px;padding-bottom:65px}
  .legal-toc{position:static}
  .legal-toc .legal-links{display:none}
  .legal-hero{padding-top:48px;padding-bottom:40px}
  .legal-hero h1{font-size:clamp(36px,7.5vw,62px)}
  .legal-intro{font-size:16px}
  .legal-page .location-header .brand-frame{width:min(260px,calc(100vw - 154px))}
  .legal-home{font-size:12px}
  .legal-body>section{scroll-margin-top:88px}
  .legal-company{padding:22px}
  .legal-footer .legal-links{flex-direction:column;gap:14px}
}
@media print{
  .legal-page .site-header,.legal-page .skip-link,.legal-actions,.legal-toc,.legal-footer{display:none!important}
  #main.legal-page{padding:0;background:#fff;color:#000}
  .legal-hero,.legal-layout{display:block;padding:0;background:none;border:0;max-width:none}
  .legal-hero h1{font-size:28pt;letter-spacing:-1px}
  .legal-intro,.legal-version{font-size:11pt;color:#000}
  .legal-body{max-width:none;font-size:11pt;line-height:1.55}
  .legal-company{margin:20px 0;padding:14px;border:1px solid #aaa;background:none;break-inside:avoid}
  .legal-company h2{font-size:12pt}
  .legal-body>section{margin-top:20px;padding-top:16px;scroll-margin:0}
  .legal-body>section h2{font-size:16pt;break-after:avoid}
  .legal-body p,.legal-body li{orphans:3;widows:3;color:#000!important}
}
