:root{
  --ink:#07142f;--ink-2:#15233f;--muted:#5f6d83;--line:#dde5f2;--paper:#fff;
  --bg:#f6f8fc;--soft:#eef5ff;--blue:#075be8;--blue-2:#0047c7;--green:#108557;--red:#d83939;
  --wood:#c5a174;--radius:clamp(1.1rem,1.55vw,1.7rem);--shadow:0 1.125rem 3.125rem rgba(7,20,47,.08);
  --container:min(100% - clamp(1.75rem,4vw,5rem),90rem);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fff 0,var(--bg) 58%,#fff 100%);font-size:clamp(.95rem,.42vw + .82rem,1.05rem);line-height:1.5;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:var(--container);margin-inline:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(1.1rem);border-bottom:1px solid rgba(221,229,242,.85)}.header-grid{min-height:clamp(4.25rem,5.2vw,5.2rem);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(1rem,2vw,2rem)}.brand{display:inline-flex;align-items:center;gap:.75rem;font-size:clamp(1.25rem,1.2vw + .8rem,1.75rem);font-weight:900;letter-spacing:-.04em;white-space:nowrap}.brand-mark{inline-size:clamp(2.25rem,2.6vw,2.6rem);block-size:clamp(2.25rem,2.6vw,2.6rem);border-radius:.85rem;background:linear-gradient(135deg,var(--blue),#2b82ff);display:grid;place-items:center;box-shadow:0 .65rem 1.6rem rgba(7,91,232,.22)}.brand-mark span{inline-size:55%;block-size:55%;border:.18rem solid #fff;border-top-color:rgba(255,255,255,.6);transform:rotate(45deg);border-radius:.25rem}.main-nav{display:flex;justify-content:center;gap:clamp(.9rem,2vw,2.1rem);font-weight:750;font-size:clamp(.82rem,.15vw + .78rem,.92rem)}.main-nav a{padding-block:1.7rem 1.45rem;border-bottom:.2rem solid transparent;color:#16233c;white-space:nowrap}.main-nav a.is-active,.main-nav a:hover{color:var(--blue);border-color:var(--blue)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;border-radius:.8rem;padding:clamp(.78rem,1vw,1rem) clamp(1rem,1.6vw,1.6rem);font-weight:850;border:1px solid transparent;transition:.2s;min-inline-size:max-content}.btn-primary{background:linear-gradient(180deg,var(--blue),var(--blue-2));color:#fff;box-shadow:0 .75rem 1.55rem rgba(7,91,232,.22)}.btn-ghost{border-color:#bad0fb;background:#fff;color:var(--blue)}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:.8rem;padding:.65rem}.menu-toggle span{display:block;inline-size:1.35rem;block-size:.13rem;background:var(--ink);margin:.25rem}.hero{padding-block:clamp(2.6rem,5vw,5.1rem) clamp(1.8rem,3vw,3rem)}.hero-grid,.soft-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(min(100%,22rem),.98fr);gap:clamp(1.6rem,4vw,3.5rem);align-items:center}.soft-hero{border-radius:clamp(1.4rem,2.5vw,2.25rem);background:linear-gradient(135deg,#fff,#eef5ff);border:1px solid var(--line);padding:clamp(1.6rem,3.2vw,3.2rem);box-shadow:0 .6rem 2rem rgba(7,20,47,.04)}.page-hero{padding-block:clamp(2.5rem,5vw,4.25rem) clamp(1.3rem,2.4vw,2rem)}.eyebrow,.mini-label{display:inline-flex;align-items:center;gap:.5rem;color:var(--blue);font-weight:900;text-transform:uppercase;font-size:.75rem;letter-spacing:.12em}.h1{font-size:clamp(2.1rem,4.9vw,4.7rem);line-height:.98;letter-spacing:-.07em;margin:clamp(.85rem,1.2vw,1.2rem) 0 clamp(1rem,1.6vw,1.5rem);overflow-wrap:anywhere}.lead{font-size:clamp(1.05rem,.85vw + .8rem,1.38rem);line-height:1.55;color:#33425b;max-width:46rem}.hero-actions,.metrics,.filter-row,.tags{display:flex;gap:clamp(.75rem,1.5vw,1.2rem);flex-wrap:wrap}.hero-actions{margin-block:clamp(1.4rem,2.4vw,2rem)}.metrics{margin-top:clamp(1.2rem,2vw,1.8rem)}.metric{display:flex;gap:.75rem;align-items:center;min-width:0;color:#25314a;font-weight:750}.icon{inline-size:clamp(2.45rem,3vw,3rem);block-size:clamp(2.45rem,3vw,3rem);border-radius:.95rem;background:var(--soft);display:grid;place-items:center;color:var(--blue);font-weight:900;border:1px solid #dce9ff;flex:0 0 auto}.visual-stage{position:relative;min-height:clamp(21rem,34vw,34rem);border-radius:clamp(1.4rem,2.4vw,2.3rem);background:radial-gradient(circle at 20% 10%,#fff 0 20%,transparent 22%),linear-gradient(135deg,#fff,#eef4ff);border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow);container-type:inline-size}.blueprint{position:absolute;inset:0;background-image:linear-gradient(rgba(7,91,232,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(7,91,232,.08) 1px,transparent 1px);background-size:clamp(1.5rem,4cqw,2.25rem) clamp(1.5rem,4cqw,2.25rem);mask-image:linear-gradient(120deg,transparent 0,#000 28%,#000 82%,transparent 100%)}.laptop{position:absolute;left:clamp(1.8rem,8cqw,5rem);top:clamp(3.2rem,12cqw,5.5rem);width:min(58cqw,27rem);aspect-ratio:430/260;border-radius:1.25rem;background:#1a2437;box-shadow:0 1.8rem 4.3rem rgba(7,20,47,.26);transform:rotate(-3deg)}.laptop:before{content:"";position:absolute;inset:6%;border-radius:.7rem;background:linear-gradient(135deg,#f5f8ff,#dce8fb)}.laptop:after{content:"";position:absolute;left:-9%;right:-13%;bottom:-13%;height:13%;border-radius:0 0 1.7rem 1.7rem;background:#b5c0cf}.cad-ui{position:absolute;left:clamp(3rem,11cqw,7rem);top:clamp(5.2rem,15cqw,7rem);width:min(49cqw,23rem);aspect-ratio:365/190;border-radius:.55rem;background:#fff;border:1px solid #c8d6ea;overflow:hidden}.cad-ui .bar{height:13%;background:#e9eef7}.cad-ui .model{position:absolute;left:24%;top:29%;width:44%;height:45%;border-radius:.5rem;background:linear-gradient(135deg,#d6b991,#8a6747);box-shadow:inset 0 0 0 .75rem rgba(255,255,255,.35)}.cad-ui .side{position:absolute;right:0;top:13%;width:21%;bottom:0;background:#f1f5fb;border-left:1px solid #d2deef}.cabinet{position:absolute;right:clamp(1.8rem,7cqw,4rem);bottom:clamp(2.6rem,8cqw,4.5rem);width:clamp(7rem,22cqw,12rem);aspect-ratio:1;border-radius:1rem;background:linear-gradient(135deg,#e4c69e,#b69168);box-shadow:0 1.5rem 2.8rem rgba(100,78,50,.18);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:.45rem;padding:.85rem}.cabinet span{background:rgba(255,255,255,.42);border:1px solid rgba(255,255,255,.55);border-radius:.5rem}.floating-card{position:absolute;right:clamp(1rem,5cqw,2.4rem);top:clamp(1.35rem,6cqw,4rem);min-width:min(14rem,48cqw);background:#fff;border:1px solid var(--line);border-radius:1.2rem;padding:clamp(.8rem,2cqw,1.2rem);box-shadow:var(--shadow);z-index:3}.text-overlay-note{position:absolute;left:clamp(1rem,5cqw,2.25rem);right:clamp(1rem,5cqw,2.25rem);bottom:clamp(1rem,5cqw,2.25rem);z-index:3;display:flex;justify-content:space-between;gap:.75rem;align-items:center;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(222,232,247,.9);padding:.7rem .95rem;color:#10203c;font-weight:900;box-shadow:0 .75rem 1.9rem rgba(7,20,47,.10)}.text-overlay-note span{color:var(--muted);font-size:.86em;font-weight:750}.check-list{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.check-list li{display:flex;gap:.6rem;align-items:flex-start;color:#24334e;font-weight:740;min-width:0}.check-list li:before{content:"✓";color:var(--blue);background:var(--soft);border-radius:50%;inline-size:1.35rem;block-size:1.35rem;display:inline-grid;place-items:center;flex:0 0 auto}.negative .check-list li:before{content:"×";background:#fff0f0;color:var(--red)}.section{padding-block:clamp(2.25rem,4.2vw,4.5rem)}.section.compact-top{padding-top:clamp(1.4rem,2vw,2rem)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:1.25rem;margin-bottom:clamp(1.2rem,2vw,1.8rem)}.section h2,.title-xl{font-size:clamp(1.9rem,2.4vw,2.55rem);letter-spacing:-.045em;line-height:1.12;margin:0 0 .75rem}.muted{color:var(--muted)}.grid{display:grid;gap:clamp(.9rem,1.45vw,1.35rem)}.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,16.25rem),1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.25rem,2vw,1.8rem);box-shadow:0 .65rem 1.9rem rgba(7,20,47,.04);min-width:0}.card h3{font-size:clamp(1.05rem,.6vw + .9rem,1.38rem);line-height:1.18;margin:clamp(.85rem,1vw,1.1rem) 0 .65rem;letter-spacing:-.03em}.card p{color:#4a5870;margin:0}.package{min-height:clamp(14rem,19vw,19rem)}.is-hot,.package.is-hot{border-color:var(--blue);box-shadow:0 1.125rem 2.8rem rgba(7,91,232,.12)}.badge{display:inline-flex;padding:.45rem .75rem;border-radius:999px;background:var(--blue);color:#fff;font-size:.75rem;font-weight:900}.price{font-size:clamp(1.3rem,1.5vw,1.7rem);color:var(--blue);font-weight:900}.split-card,.lead-form,.project-feature,.team-projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:clamp(1rem,1.7vw,1.5rem)}.positive{background:linear-gradient(135deg,#f1fff8,#fff);border-color:#cbefdf}.negative{background:linear-gradient(135deg,#fff3f3,#fff);border-color:#ffd5d5}.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:clamp(.9rem,1.4vw,1.2rem)}.step{text-align:center;position:relative;min-width:0}.step-num{inline-size:2.15rem;block-size:2.15rem;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;margin:0 auto .65rem;font-weight:900}.portfolio-card{position:relative;min-height:clamp(17.5rem,28vw,23rem);overflow:hidden;padding:0;background:#0b1730;display:flex}.placeholder-img,.mini-portfolio{height:clamp(10.5rem,18vw,15rem);border-radius:1.2rem;background:linear-gradient(135deg,#c6a179,#6b513c);position:relative;overflow:hidden}.placeholder-img{position:absolute;inset:0;height:100%;border-radius:0}.placeholder-img:before{content:"";position:absolute;inset:clamp(1rem,2vw,1.25rem);border:2px solid rgba(255,255,255,.46);border-radius:1rem}.placeholder-img:after{content:"";position:absolute;left:0;right:0;bottom:0;height:78%;background:linear-gradient(0deg,rgba(4,12,28,.86),rgba(4,12,28,.35) 48%,transparent)}.placeholder-wardrobe{background:linear-gradient(135deg,#d4b58e,#5d432f)}.placeholder-soft{background:linear-gradient(135deg,#d5c5b4,#8f7c69)}.placeholder-office{background:linear-gradient(135deg,#c8cfd7,#6c7682)}.portfolio-body{position:absolute;left:clamp(1rem,2vw,1.6rem);right:clamp(1rem,2vw,1.6rem);bottom:clamp(1rem,2vw,1.6rem);padding:0;color:#fff;z-index:2}.portfolio-body h3{color:#fff;text-shadow:0 .125rem .75rem rgba(0,0,0,.28)}.portfolio-body p{color:rgba(255,255,255,.78)}.tag{font-size:.75rem;padding:.4rem .62rem;border:1px solid rgba(255,255,255,.65);border-radius:999px;background:rgba(255,255,255,.92);color:#10203c;font-weight:750}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.75rem}.field,select,textarea,input{width:100%;min-width:0;border:1px solid var(--line);border-radius:.75rem;background:#fff;padding:.9rem 1rem;font:inherit;color:var(--ink)}textarea{min-height:7rem;resize:vertical}.full{grid-column:1/-1}.upload-box{border:1.5px dashed #b8cae6;border-radius:1rem;padding:1.1rem;background:#fbfdff;color:#526176}.form-message{margin-top:.75rem;font-weight:800}.form-message.is-success{color:var(--green)}.form-message.is-error{color:var(--red)}.notice,.reference-band{border:1px solid #bfd5ff;background:linear-gradient(135deg,#eef5ff,#fff);border-radius:var(--radius);padding:clamp(1.25rem,2vw,1.8rem)}.notice strong{color:var(--blue);font-size:clamp(1.05rem,.7vw + .9rem,1.25rem)}.faq-list{display:grid;gap:.7rem}.faq-item{border:1px solid var(--line);border-radius:1rem;background:#fff;padding:1.05rem 1.2rem;cursor:pointer}.faq-q{display:flex;justify-content:space-between;gap:1.2rem;font-weight:900}.faq-a{display:none;color:var(--muted);margin-top:.65rem}.faq-item.is-open .faq-a{display:block}.faq-plus{color:var(--blue);font-size:1.5rem;line-height:1}.cta-band{background:linear-gradient(135deg,#063a9b,#0767ff);color:#fff;border-radius:clamp(1.25rem,2vw,1.9rem);padding:clamp(1.5rem,3vw,2.5rem);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;box-shadow:0 1.55rem 3.75rem rgba(7,91,232,.22);position:relative;overflow:hidden}.cta-band:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:2rem 2rem}.cta-band>*{position:relative}.site-footer{background:#06142a;color:#d7e2f4;margin-top:2.5rem;padding-block:clamp(2rem,3vw,3rem) 1.1rem}.footer-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.8rem)}.site-footer h4,.site-footer .footer-title{margin:0 0 .75rem;color:#fff;font-weight:900}.site-footer a{display:block;color:#d7e2f4;margin:.45rem 0}.brand-footer{font-size:1.5rem;color:#fff}.socials{display:flex;gap:.65rem}.socials a{inline-size:2.15rem;block-size:2.15rem;border-radius:50%;background:#12294b;display:grid;place-items:center;font-size:.75rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:1.75rem;padding-top:1.1rem;color:#95a5bd}.role-card{padding:0;overflow:hidden}.role-visual{height:clamp(10rem,15vw,12rem);background:linear-gradient(135deg,#e7eef9,#bcd0ee);position:relative}.role-visual:before{content:"";position:absolute;left:50%;top:24%;transform:translateX(-50%);inline-size:clamp(3.8rem,6vw,4.8rem);block-size:clamp(3.8rem,6vw,4.8rem);border-radius:50%;background:#fff;border:.5rem solid #d9e7fb}.role-visual:after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);inline-size:55%;block-size:40%;border-radius:4rem 4rem 0 0;background:#20304b}.software-row,.deliverables-row,.team-project-strip,.hero-reference-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:clamp(.8rem,1.25vw,1.1rem)}.software{background:#fff;border:1px solid var(--line);border-radius:1.05rem;padding:1.05rem;text-align:center;font-weight:900}.filter-row{margin:1.5rem 0}.pill{border:1px solid var(--line);background:#fff;border-radius:.8rem;padding:.8rem 1.55rem;font-weight:800}.pill.is-active{background:var(--blue);color:#fff;border-color:var(--blue)}.team-project-strip .card{padding:.9rem}.team-project-strip .mini-portfolio{height:clamp(7rem,10vw,8rem)}.hero-reference-strip .metric{background:#fff;border:1px solid var(--line);border-radius:1.1rem;padding:1.05rem;min-width:0;box-shadow:0 .5rem 1.5rem rgba(7,20,47,.04)}.audit-note{font-size:.82rem;color:var(--muted);margin-top:.65rem}.hero-grid>*,.soft-hero>*,.grid>*,.timeline>*,.lead-form>*,.split-card>*{min-width:0}.h1,.lead,h1,h2,h3,p,.metric,.btn{overflow-wrap:anywhere;word-break:normal;hyphens:auto}@media(max-width:68.75rem){.hero-grid,.soft-hero{grid-template-columns:1fr}.visual-stage{min-height:clamp(21rem,52vw,32rem)}.main-nav{display:none;position:absolute;left:clamp(.9rem,4vw,1.75rem);right:clamp(.9rem,4vw,1.75rem);top:100%;background:#fff;border:1px solid var(--line);border-radius:1.25rem;box-shadow:var(--shadow);padding:1.25rem;flex-direction:column}.main-nav.is-open{display:flex}.main-nav a{padding:.5rem 0;border-bottom:0}.menu-toggle{display:block}.header-grid{grid-template-columns:auto auto auto;justify-content:space-between}.header-cta{display:none}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:45rem){.container{width:calc(100% - 1.75rem)}.section-head{display:block}.btn{width:100%;min-inline-size:0}.metrics{gap:.9rem}.metric{width:100%}.cta-band{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.portfolio-card{min-height:20rem}.floating-card{max-width:58%;font-size:.82rem}.check-list{gap:.5rem}.check-list li{font-size:.85rem}.text-overlay-note{display:block;border-radius:1rem}.text-overlay-note span{display:block;margin-top:.2rem}.laptop{width:68cqw}.cad-ui{width:56cqw}.brand{font-size:1.2rem}.visual-stage{min-height:22.5rem}}

.upload-input{display:block;margin-top:.65rem}.consent-row{display:flex;gap:.65rem;margin:1rem 0;color:#617089}.consent-check{width:auto;flex:0 0 auto}.case-visual{position:relative;inset:auto;height:clamp(20rem,28vw,26rem);border-radius:var(--radius)}

.block-offset{margin-top:clamp(1.2rem,2vw,1.75rem)}.role-body{padding:clamp(1.2rem,2vw,1.55rem)}

/* home hero photo */
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.visual-stage.hero-photo{min-height:0;aspect-ratio:701/561;background-image:url("../images/hero-kitchen-production.webp");background-size:cover;background-position:center;background-repeat:no-repeat}
@media(max-width:68.75rem){.visual-stage.hero-photo{min-height:0;aspect-ratio:701/561}}
@media(max-width:45rem){.visual-stage.hero-photo{min-height:0;aspect-ratio:701/561;background-position:center}}

.hero .metrics .hero-trust-icon{inline-size:clamp(1.8rem,2.2vw,2.15rem);block-size:clamp(1.8rem,2.2vw,2.15rem);display:grid;place-items:center;color:var(--blue);flex:0 0 auto}.hero .metrics .hero-trust-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.hero-reference-strip .icon svg{display:block;width:70%;height:70%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hero-reference-strip .icon-map svg{width:78%;height:62%}
.hero-reference-strip .icon-years{font-size:.9rem;letter-spacing:-.04em}

.hero-reference-strip .icon-map img{display:block;width:82%;height:68%;object-fit:contain;filter:none}
/* reference icons: “Что вы получаете” */
.benefit-reference-icon svg{display:block;width:76%;height:76%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
/* realistic backgrounds: “Форматы услуг” */
.service-format-card{position:relative;overflow:hidden;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:cover}
.service-format-card>*{position:relative;z-index:1}
.service-format-3d{background-image:url("../images/service-3d-concept-bg.webp")}
.service-format-technical{background-image:url("../images/service-technical-project-bg.webp")}
.service-format-production{background-image:url("../images/service-production-package-bg.webp")}
.service-format-support{background-image:url("../images/service-support-bg.webp")}
/* Home audience fit — aligned to supplied reference */
.audience-section{padding-block:clamp(1.8rem,3.2vw,3.1rem)}
.audience-fit{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,2.2vw,2.6rem)}
.audience-card{padding:clamp(1.05rem,1.45vw,1.35rem) clamp(1.15rem,1.8vw,1.65rem);border-radius:1.15rem;box-shadow:none}
.audience-card.positive{background:linear-gradient(115deg,#fbfffc 0%,#ffffff 74%);border-color:#d8eee1}
.audience-card.negative{background:linear-gradient(115deg,#fffdfd 0%,#ffffff 74%);border-color:#f3dcdc}
.section .audience-title{display:flex;align-items:center;gap:.7rem;margin:0 0 .85rem;font-size:clamp(1.08rem,.55vw + .94rem,1.28rem);line-height:1.2;letter-spacing:-.02em;font-weight:900}
.positive .audience-title{color:#1c7f49}
.negative .audience-title{color:#c63b42}
.audience-title-icon{inline-size:1.55rem;block-size:1.55rem;border-radius:50%;display:inline-grid;place-items:center;flex:0 0 auto;border:2px solid currentColor;font-size:.95rem;font-weight:900;line-height:1}
.audience-list{gap:.55rem}
.audience-list li{gap:.7rem;align-items:center;color:#323d51;font-weight:650;font-size:clamp(.91rem,.2vw + .88rem,1rem);line-height:1.35}
.audience-card .audience-list li:before{inline-size:1rem;block-size:1rem;background:transparent;border:1.6px solid currentColor;font-size:.68rem;font-weight:900;line-height:1}
.audience-card.positive .audience-list li:before{color:#4aa875;content:"✓"}
.audience-card.negative .audience-list li:before{color:#e2676c;content:"×";background:transparent}
@media(max-width:45rem){.audience-fit{grid-template-columns:1fr}.audience-card{padding:1rem}.audience-list li{font-size:.9rem}}
/* Home workflow — aligned to supplied reference */
.workflow-section{padding-block:clamp(2.1rem,3.3vw,3.4rem)}
.workflow-heading{text-align:center;margin-bottom:clamp(1.25rem,2vw,1.8rem)!important}
.workflow-timeline{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;align-items:start}
.workflow-step{padding-inline:clamp(.45rem,1vw,.9rem)}
.workflow-top{display:grid;grid-template-columns:auto auto 1fr;align-items:center;min-height:3rem;gap:.65rem}
.workflow-step:last-child .workflow-top{grid-template-columns:auto auto;justify-content:start}
.workflow-link{height:1px;border-top:2px dashed #bfd4ff;position:relative;min-width:2.8rem}
.workflow-link:after{content:"→";position:absolute;right:-.15rem;top:50%;transform:translateY(-56%);color:#7ea8ff;font-size:1.1rem;font-weight:900;background:#fff;padding-left:.22rem}
.workflow-step:nth-child(4) .workflow-link:after{display:block}
.workflow-icon{inline-size:2.25rem;block-size:2.25rem;color:var(--blue);display:grid;place-items:center;flex:0 0 auto;position:relative}.workflow-icon:before{content:"";position:absolute;left:-.7rem;top:50%;width:.55rem;border-top:1.5px solid #d4e1fb;transform:translateY(-50%)}
.workflow-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.workflow-step .step-num{margin:0;inline-size:2rem;block-size:2rem;font-size:.88rem;box-shadow:0 .35rem .8rem rgba(7,91,232,.12)}
.workflow-step h3{font-size:clamp(.96rem,.24vw + .92rem,1.08rem);margin:.6rem 0 .28rem;line-height:1.15;letter-spacing:-.02em}
.workflow-step p{font-size:clamp(.84rem,.12vw + .82rem,.93rem);line-height:1.35;margin:0;color:#4b5870}
@media(max-width:68.75rem){.workflow-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem}.workflow-link{display:none}.workflow-top{grid-template-columns:auto auto;justify-content:center}.workflow-step:last-child .workflow-top{grid-template-columns:auto auto;justify-content:center}.workflow-step{padding-inline:.5rem}}
@media(max-width:45rem){.workflow-timeline{grid-template-columns:1fr}.workflow-step{padding:0}.workflow-step p br{display:none}}
/* Home project examples — supplied portfolio images */
.portfolio-project-image{background-position:center;background-repeat:no-repeat;background-size:cover}
.portfolio-project-image:before{display:none}
.project-kitchen-modern{background-image:url("../images/project-kitchen-modern.webp")}
.project-wardrobe-bedroom{background-image:url("../images/project-wardrobe-bedroom.webp")}
.project-designer-case-furniture{background-image:url("../images/project-designer-case-furniture.webp")}
/* Home project examples — preserve supplied 3:1 images and reference-like card composition */
.home-projects-section .portfolio-card{display:block;min-height:0;background:#fff;border:1px solid var(--line);overflow:hidden}
.home-projects-section .portfolio-project-image{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:3/1;border-radius:0;background-size:cover;background-position:center}
.home-projects-section .portfolio-project-image:before,.home-projects-section .portfolio-project-image:after{display:none}
.home-projects-section .portfolio-body{position:static;padding:.85rem 1rem 1rem;color:var(--ink);background:#fff}
.home-projects-section .portfolio-body h3{color:var(--ink);text-shadow:none;margin:0 0 .55rem;font-size:clamp(1rem,.35vw + .94rem,1.16rem)}
.home-projects-section .tag{background:#f7f9fc;border-color:#dde5f2;color:#25314a}
@media(max-width:45rem){.home-projects-section .portfolio-card{min-height:0}.home-projects-section .portfolio-project-image{aspect-ratio:3/1}}

/* Home page: tighter, consistent vertical rhythm between major blocks */
body.home .section{padding-block:clamp(1.65rem,2.35vw,2.3rem)}
body.home .section.compact-top{padding-top:clamp(1.15rem,1.6vw,1.55rem)}
body.home .audience-section{padding-block:clamp(1.45rem,2vw,1.9rem)}
body.home .workflow-section{padding-block:clamp(1.55rem,2.1vw,2rem)}
@media(max-width:45rem){body.home .section{padding-block:1.55rem}body.home .section.compact-top{padding-top:1.1rem}body.home .audience-section,body.home .workflow-section{padding-block:1.4rem}}

/* Home lead form — aligned to supplied reference */
body.home .lead-reference-section{padding-block:clamp(1.8rem,2.35vw,2.6rem)}
body.home .lead-reference-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(18rem,1fr);gap:clamp(1rem,1.7vw,1.5rem);align-items:stretch}
body.home .lead-reference-form{padding:clamp(1.05rem,1.45vw,1.35rem);border-radius:1.15rem;box-shadow:none}
body.home .lead-reference-form h2{text-align:center;font-size:clamp(1.22rem,.7vw + 1rem,1.55rem);margin:0 0 .7rem;letter-spacing:-.025em}
body.home .lead-reference-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem .7rem}
body.home .lead-reference-form input:not([type=file]):not([type=checkbox]),body.home .lead-reference-form select,body.home .lead-reference-form textarea{min-height:2.55rem;border-radius:.52rem;border-color:#d7deea;padding:.58rem .8rem;font-size:.88rem;box-shadow:inset 0 0 0 1px rgba(222,228,238,.2)}
body.home .lead-reference-form textarea{min-height:2.75rem;height:2.75rem;resize:vertical}
body.home .lead-reference-upload{display:flex;align-items:center;gap:.8rem;min-height:3.35rem;padding:.55rem .9rem;border-style:solid;border-color:#d7deea;border-radius:.55rem;background:#fff;color:#25314a;cursor:pointer}
body.home .lead-reference-upload strong{font-weight:850}
body.home .lead-reference-upload small{display:block;margin-top:.06rem;color:#58667a;font-size:.78rem;line-height:1.25}
body.home .lead-upload-icon{inline-size:2.15rem;block-size:2.15rem;color:var(--blue);display:grid;place-items:center;flex:0 0 auto}
body.home .lead-upload-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body.home .lead-reference-form .upload-input{position:absolute;inline-size:1px;block-size:1px;opacity:0;pointer-events:none}
body.home .lead-reference-form .consent-row{display:flex;align-items:center;gap:.5rem;margin-top:.7rem;color:#596579;font-size:.8rem;line-height:1.25}
body.home .lead-reference-form .consent-check{inline-size:1rem;block-size:1rem;flex:0 0 auto;padding:0}
body.home .lead-reference-form .consent-row a{color:var(--blue);font-weight:700}
body.home .lead-reference-form .form-message{font-size:.82rem;margin-top:.4rem}
body.home .lead-reference-notice{display:flex;flex-direction:column;justify-content:space-between;gap:1rem;min-height:100%;padding:clamp(1.1rem,1.6vw,1.45rem);border-radius:1.15rem;background:linear-gradient(135deg,#eef5ff,#f8fbff);border-color:#d6e5ff;box-shadow:none}
body.home .lead-notice-copy{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:start}
body.home .lead-info-icon{inline-size:1.55rem;block-size:1.55rem;border:2px solid var(--blue);border-radius:50%;display:grid;place-items:center;color:var(--blue);font-size:.9rem;font-weight:900;font-family:Georgia,serif;line-height:1}
body.home .lead-reference-notice strong{display:block;color:var(--blue);font-size:clamp(.98rem,.38vw + .9rem,1.08rem);line-height:1.32}
body.home .lead-reference-notice p{margin:.7rem 0 0;color:#4b5870;font-size:.87rem;line-height:1.35}
body.home .lead-reference-submit{width:100%;min-height:2.7rem;padding:.65rem 1rem;border-radius:.5rem;font-size:.95rem}
@media(max-width:68.75rem){body.home .lead-reference-layout{grid-template-columns:1fr}body.home .lead-reference-notice{min-height:auto}}
@media(max-width:45rem){body.home .lead-reference-form .form-grid{grid-template-columns:1fr}body.home .lead-reference-form .full{grid-column:auto}body.home .lead-reference-form textarea{height:4.5rem}body.home .lead-reference-upload{align-items:flex-start}}
/* Home FAQ — aligned to supplied reference */
.home-faq-section{padding-block:clamp(1.7rem,2.6vw,2.7rem)}
.home-faq-heading{text-align:center;margin-bottom:clamp(.95rem,1.45vw,1.25rem)!important}
.home-faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem}
.home-faq-item{border:1px solid #dde5f0;border-radius:.62rem;background:#fff;padding:.72rem 1rem;box-shadow:0 .2rem .7rem rgba(7,20,47,.09)}
.home-faq-item .faq-q{align-items:center;font-size:clamp(.9rem,.2vw + .87rem,1rem);line-height:1.25;font-weight:800;color:#172238}
.home-faq-item .faq-a{margin-top:.7rem;padding-top:.65rem;border-top:1px solid #edf1f6;font-size:.92rem;line-height:1.45}
.home-faq-chevron{margin-left:auto;color:#52647d;font-size:1.25rem;line-height:1;transform:translateY(-.1rem);transition:transform .2s ease}
.home-faq-item.is-open .home-faq-chevron{transform:rotate(180deg) translateY(.1rem)}
.home-faq-more{text-align:center;margin-top:1rem}
.home-faq-more a{display:inline-flex;align-items:center;gap:.4rem;color:var(--blue);font-weight:800;font-size:.95rem}
@media(max-width:45rem){.home-faq-grid{grid-template-columns:1fr}.home-faq-item{padding:.8rem .9rem}}
/* Services page hero background */
.services-page-hero{padding-bottom:clamp(1.3rem,2.4vw,2rem)}
.services-hero{display:block;position:relative;min-height:0;aspect-ratio:3/1;background-image:url("../images/services-hero-bg.webp");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.services-hero-content{position:relative;z-index:1;width:min(48%,42rem)}
.services-hero .h1{margin-top:0}
.services-hero .lead{max-width:40rem}
@media(max-width:68.75rem){.services-hero{aspect-ratio:auto;min-height:28rem;background-position:62% center}.services-hero-content{width:min(58%,34rem)}}
@media(max-width:45rem){.services-hero{min-height:34rem;background-position:68% center}.services-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.28) 100%)}.services-hero-content{width:100%}}
/* Home hero — full-width background from supplied server image */
body.home .home-hero-grid{
  display:block;
  position:relative;
  aspect-ratio:2072/759;
  min-height:0;
  padding:clamp(1.6rem,3vw,2.8rem) clamp(1.2rem,2.5vw,2.4rem);
  border-radius:clamp(1.35rem,2vw,2rem);
  overflow:hidden;
  box-shadow:0 .65rem 2rem rgba(7,20,47,.05);
}
body.home .home-hero-media{position:absolute;inset:0;z-index:0;display:block}
body.home .home-hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
body.home .home-hero-content{position:relative;z-index:2;width:min(48%,42rem);}
body.home .home-hero-grid .h1{font-size:clamp(2.3rem,4vw,4rem);}
body.home .home-hero-grid .lead{max-width:40rem;}
body.home .home-hero-grid .hero-actions{margin-block:1rem;}
body.home .home-hero-grid .metrics{margin-top:1rem;}
@media(max-width:68.75rem){
  body.home .home-hero-grid{aspect-ratio:auto;min-height:34rem;padding:2rem 1.5rem;}
  body.home .home-hero-media img{object-position:62% center}
  body.home .home-hero-content{width:min(62%,40rem);}
}
@media(max-width:45rem){
  body.home .home-hero-grid{min-height:0;aspect-ratio:auto;padding:1.4rem 1.1rem;}
  body.home .home-hero-grid:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.98) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.18) 100%)}
  body.home .home-hero-media img{object-position:68% center}
  body.home .home-hero-content{width:100%;}
  body.home .home-hero-grid .h1{font-size:clamp(2.15rem,7vw,2.75rem);line-height:1;letter-spacing:-.055em;margin:.7rem 0 .9rem;}
}


/* services page: realistic image cards */
.services-page-hero + .section .grid.grid-4{align-items:stretch}
.service-real-card{padding:0;overflow:hidden;display:flex;flex-direction:column;background:#fff}
.service-real-image{aspect-ratio:4/3;background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--line)}
.service-real-body{padding:1rem 1.05rem 1.15rem;display:flex;flex-direction:column;flex:1}
.service-real-card h3{margin:.1rem 0 .55rem;font-size:clamp(1.02rem,.45vw + .92rem,1.22rem)}
.service-real-card p{font-size:.91rem;line-height:1.47;color:#4a5870}
@media(max-width:45rem){.service-real-body{padding:.95rem 1rem 1.05rem}.service-real-image{aspect-ratio:16/10}}
/* Services page: exactly 4 evenly spaced cards per row */
.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,1.45vw,1.35rem);align-items:stretch}
@media(max-width:68.75rem){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:45rem){.services-grid{grid-template-columns:1fr}}

/* Unified vertical section rhythm site-wide — matches homepage */
.section{padding-block:clamp(1.65rem,2.35vw,2.3rem)}
.section.compact-top{padding-top:clamp(1.15rem,1.6vw,1.55rem)}
@media(max-width:45rem){
  .section{padding-block:1.55rem}
  .section.compact-top{padding-top:1.1rem}
}
/* Services — package selector matched to reference */
.services-format-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.95rem,1.25vw,1.2rem);align-items:stretch}
.services-format-card{position:relative;display:flex;flex-direction:column;min-height:23rem;background:#fff;border:1px solid #e1e7f0;border-radius:1rem;box-shadow:0 .45rem 1.35rem rgba(7,20,47,.035);overflow:visible}
.services-format-card.is-popular{border:2px solid #69a4ff;box-shadow:0 .7rem 1.8rem rgba(7,91,232,.08)}
.services-format-main{display:flex;flex:1;flex-direction:column;padding:1.35rem 1.25rem .85rem}
.services-format-card h3{margin:0 0 .65rem;font-size:1.05rem;line-height:1.2;letter-spacing:-.02em;color:#17243c}
.services-format-intro{min-height:3.25rem;margin:0 0 1rem!important;color:#4b5a72!important;font-size:.88rem;line-height:1.4}
.services-format-list{display:grid;gap:.5rem;margin:.15rem 0 1.15rem;padding:0;list-style:none}
.services-format-list li{display:flex;align-items:flex-start;gap:.55rem;color:#41506a;font-size:.86rem;line-height:1.3}
.services-format-list li:before{content:"✓";display:inline-grid;place-items:center;inline-size:1.08rem;block-size:1.08rem;margin-top:.02rem;border:1.5px solid #63a1ff;border-radius:50%;color:#267cff;font-size:.7rem;font-weight:900;line-height:1;flex:0 0 auto;background:#fff}
.services-format-term{margin:auto 0 0!important;padding-top:.9rem;color:#516078!important;font-size:.9rem;font-weight:650}
.services-format-footer{margin:.15rem .7rem .7rem;border-radius:.45rem;background:linear-gradient(180deg,#f8faff,#f2f5fa);padding:.72rem .75rem;text-align:center;color:#2f82ff;font-size:.86rem;font-weight:750}
.services-format-badge{position:absolute;z-index:2;top:-.05rem;right:-.05rem;transform:translateY(-1px);display:inline-flex;align-items:center;justify-content:center;padding:.34rem .72rem;border-radius:999px;background:#0b66e8;color:#fff;font-size:.72rem;font-weight:850;line-height:1;box-shadow:0 .25rem .75rem rgba(7,91,232,.18)}
@media(max-width:68.75rem){.services-format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-format-card{min-height:22rem}}
@media(max-width:45rem){.services-format-grid{grid-template-columns:1fr}.services-format-card{min-height:0}.services-format-intro{min-height:0}}

/* Site-wide descriptive copy standard — reference: result-card body text */
:root{
  --description-copy-size:clamp(.95rem,.42vw + .82rem,1.05rem);
  --description-copy-line-height:1.5;
}
main p:not(.price):not(.services-format-term),
main li,
main .faq-a{
  font-size:var(--description-copy-size)!important;
  line-height:var(--description-copy-line-height)!important;
}


/* Software logos */
.software{display:flex;align-items:center;justify-content:center;gap:.7rem;min-height:4.9rem}
.software-logo{display:block;width:auto;height:auto;max-width:3.35rem;max-height:3rem;object-fit:contain;flex:0 0 auto}
.software span{line-height:1.15}


/* Services result cards with real images */
.services-results-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.result-real-card{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:0}
.result-real-image{width:100%;aspect-ratio:4/3;background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--line)}
.result-real-body{padding:1.2rem 1.25rem 1.35rem;display:flex;flex-direction:column;flex:1}
.result-real-body h3{margin:0 0 .65rem}
.result-real-body p{margin:0}

@media(max-width:68.75rem){.services-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:45rem){.services-results-grid{grid-template-columns:1fr}}


/* Results payment note — reference treatment */
.results-payment-note{display:flex;align-items:center;gap:1.2rem;width:100%;padding:1.15rem 1.45rem;border:1px solid #f0dddd;border-radius:1.15rem;background:#fff;box-shadow:0 .35rem 1.25rem rgba(16,32,60,.035)}
.results-payment-icon{flex:0 0 auto;width:2.9rem;height:2.9rem;border:2px solid var(--blue);border-radius:50%;display:grid;place-items:center;color:var(--blue);font-size:1.75rem;font-weight:900;font-family:Georgia,serif;line-height:1}
.results-payment-copy{min-width:0}
.results-payment-copy strong{display:block;color:#102c84;font-size:1.05rem;line-height:1.22;font-weight:900;margin:0 0 .28rem}
.results-payment-copy p{margin:0;color:#4a5870;font-size:1.05rem;line-height:1.5}
@media(max-width:45rem){.results-payment-note{align-items:flex-start;padding:1rem;gap:.85rem}.results-payment-icon{width:2.45rem;height:2.45rem;font-size:1.4rem}.results-payment-copy strong,.results-payment-copy p{font-size:1rem}}


/* Package choice realistic images */
.package-choice-card{padding:0;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.package-choice-image{aspect-ratio:4/3;background-size:cover;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--line)}
.package-choice-body{padding:1rem 1.05rem 1.15rem;display:flex;flex-direction:column;flex:1}
.package-choice-body h3{margin:.1rem 0 .55rem}
.package-choice-body p{margin:0;color:#4a5870}
@media(max-width:45rem){.package-choice-image{aspect-ratio:16/10}.package-choice-body{padding:.95rem 1rem 1.05rem}}


/* Projects page hero background */
.projects-page-hero{padding-bottom:clamp(1.3rem,2.4vw,2rem)}
.projects-hero{display:block;position:relative;min-height:0;aspect-ratio:3/1;background-image:url("../images/projects-hero-bg.webp");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.projects-hero-content{position:relative;z-index:1;width:min(46%,40rem)}
.projects-hero .h1{margin-top:0}
.projects-hero .lead{max-width:36rem}
.projects-hero .filter-row{margin:1.2rem 0 0;gap:.55rem}
.projects-hero .pill{background:rgba(255,255,255,.9);backdrop-filter:blur(4px)}
.projects-hero .pill.is-active{background:var(--blue)}
@media(max-width:68.75rem){.projects-hero{aspect-ratio:auto;min-height:28rem;background-position:62% center}.projects-hero-content{width:min(60%,38rem)}}
@media(max-width:45rem){.projects-hero{min-height:34rem;background-position:70% center}.projects-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0 58%,rgba(255,255,255,.78) 78%,rgba(255,255,255,.28) 100%)}.projects-hero-content{width:100%}}


/* Projects portfolio supplied images */
.projects-portfolio-section .project-portfolio-image{background-position:center;background-repeat:no-repeat;background-size:cover}
.projects-portfolio-section .project-portfolio-image[style]:before{display:none}


/* Projects portfolio — fixed 4-column rows */
.projects-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.45vw,1.35rem)}
@media(max-width:68.75rem){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:45rem){.projects-grid{grid-template-columns:1fr}}

/* Projects portfolio — landscape cards, 4 per row */
.projects-portfolio-section .portfolio-card{min-height:0;aspect-ratio:4/3}
.projects-portfolio-section .project-portfolio-image{position:absolute;inset:0;width:100%;height:100%;border-radius:0}
.projects-portfolio-section .portfolio-body{left:1rem;right:1rem;bottom:1rem}
.projects-portfolio-section .portfolio-body h3{margin:0 0 .35rem;font-size:clamp(.95rem,.32vw + .9rem,1.08rem);line-height:1.12}
.projects-portfolio-section .portfolio-body p{font-size:.82rem;line-height:1.2}
.projects-portfolio-section .tags{gap:.4rem;margin-top:.55rem}
.projects-portfolio-section .tag{font-size:.68rem;padding:.3rem .48rem}

/* FAQ page — enriched structured layout */
.faq-page-hero .faq-hero{align-items:stretch}
.faq-hero-copy{display:flex;flex-direction:column;justify-content:center}
.faq-hero-links{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.35rem}
.faq-hero-links a{display:inline-flex;align-items:center;min-height:2.5rem;padding:.55rem .85rem;border:1px solid #cfe0fb;border-radius:.8rem;background:rgba(255,255,255,.88);color:var(--blue);font-weight:800;font-size:.9rem;box-shadow:0 .2rem .7rem rgba(7,20,47,.04)}
.faq-page-hero .visual-stage{min-height:clamp(18rem,27vw,27rem)}
.faq-section-head{align-items:flex-end}
.faq-section-head>p{max-width:35rem;text-align:right}
.faq-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.45vw,1.35rem)}
.faq-quick-card{min-height:15.5rem;display:flex;flex-direction:column;align-items:flex-start}
.faq-quick-card h3{margin:.95rem 0 .65rem}
.faq-quick-card p{font-size:16.8px;line-height:25.2px}
.faq-quick-icon{width:3rem;height:3rem;border-radius:.95rem;display:grid;place-items:center;background:#eef5ff;border:1px solid #d8e7ff;color:var(--blue)}
.faq-quick-icon svg{width:1.6rem;height:1.6rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.faq-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,1.6vw,1.45rem)}
.faq-category{padding:clamp(1.25rem,1.8vw,1.65rem);scroll-margin-top:7rem}
.faq-category-title{display:flex;gap:1rem;align-items:flex-start;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #e7edf5}
.faq-category-title>span{flex:0 0 auto;display:grid;place-items:center;width:2.65rem;height:2.65rem;border-radius:.9rem;background:#eef5ff;border:1px solid #d9e7ff;color:var(--blue);font-weight:900}
.faq-category-title h3{margin:.1rem 0 .25rem;font-size:clamp(1.15rem,.55vw + 1rem,1.4rem)}
.faq-category-title p{font-size:.9rem;color:var(--muted)}
.faq-category .faq-item{padding:.95rem 1rem;border-radius:.85rem;box-shadow:none;background:#fbfdff}
.faq-category .faq-q{font-size:clamp(.94rem,.14vw + .91rem,1rem);line-height:1.35}
.faq-category .faq-a{font-size:16.8px;line-height:25.2px;padding-top:.7rem;border-top:1px solid #e8eef7}
.faq-prep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,1.6vw,1.45rem)}
.faq-prep-card{min-height:100%}
.faq-prep-card h2{margin-top:.55rem}
.faq-prep-list{margin-top:1.25rem}
.faq-prep-list li{font-size:16.8px;line-height:25.2px}
.faq-prep-accent{background:linear-gradient(135deg,#eef5ff 0,#fff 72%);border-color:#c8dcff}
.faq-result-list{display:grid;gap:.7rem;margin-top:1.15rem}
.faq-result-list>div{display:grid;grid-template-columns:2.5rem minmax(0,1fr);align-items:center;gap:.8rem;padding:.8rem .9rem;background:#fff;border:1px solid #dfe8f5;border-radius:.85rem}
.faq-result-list strong{color:var(--blue);font-size:.92rem}
.faq-result-list span{font-size:16.8px;line-height:25.2px;color:#34445e}
@media(max-width:68.75rem){.faq-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-page-hero .visual-stage{min-height:22rem}}
@media(max-width:45rem){.faq-section-head>p{text-align:left}.faq-quick-grid,.faq-category-grid,.faq-prep-grid{grid-template-columns:1fr}.faq-quick-card{min-height:0}.faq-hero-links a{flex:1 1 calc(50% - .4rem);justify-content:center}.faq-page-hero .visual-stage{min-height:20rem}}


/* FAQ hero without decorative visual */
.faq-page-hero .faq-hero,.faq-clean-hero{display:block}
.faq-page-hero .faq-hero-copy{max-width:58rem}
.faq-clean-hero>div{max-width:58rem}


/* FAQ page supplied hero background */
.faq-clean-hero{
  position:relative;
  min-height:0;
  aspect-ratio:2293/686;
  background-image:url("../images/faq-hero-bg.webp");
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  overflow:hidden;
}
.faq-clean-hero>div{position:relative;z-index:1;width:min(44%,38rem);max-width:none}
@media(max-width:68.75rem){
  .faq-clean-hero{aspect-ratio:auto;min-height:24rem;background-position:63% center}
  .faq-clean-hero>div{width:min(58%,36rem)}
}
@media(max-width:45rem){
  .faq-clean-hero{min-height:28rem;background-position:70% center}
  .faq-clean-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.24) 100%)}
  .faq-clean-hero>div{width:100%}
}

/* Correct FAQ hero target: /faq/ */
.page-id-17 .faq-page-hero .faq-hero{display:block;position:relative;min-height:0;aspect-ratio:2293/686;background-image:url("../images/faq-hero-bg.webp");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.page-id-17 .faq-page-hero .faq-hero-copy{position:relative;z-index:1;width:min(44%,38rem);max-width:none}
.page-id-5 .faq-clean-hero{background-image:none;aspect-ratio:auto;min-height:auto;background-position:initial;background-size:auto}
@media(max-width:68.75rem){.page-id-17 .faq-page-hero .faq-hero{aspect-ratio:auto;min-height:24rem;background-position:63% center}.page-id-17 .faq-page-hero .faq-hero-copy{width:min(58%,36rem)}}
@media(max-width:45rem){.page-id-17 .faq-page-hero .faq-hero{min-height:28rem;background-position:70% center}.page-id-17 .faq-page-hero .faq-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.24) 100%)}.page-id-17 .faq-page-hero .faq-hero-copy{width:100%}}


/* Contacts page hero background */
.contacts-page-hero{padding-bottom:clamp(1.3rem,2.4vw,2rem)}
.contacts-hero{display:block;position:relative;min-height:0;aspect-ratio:2293/686;background-image:url("../images/contacts-hero-bg.webp");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.contacts-hero-content{position:relative;z-index:1;width:min(43%,36rem)}
.contacts-hero .h1{margin-top:0}
.contacts-hero .lead{max-width:34rem}
@media(max-width:68.75rem){.contacts-hero{aspect-ratio:auto;min-height:27rem;background-position:62% center}.contacts-hero-content{width:min(58%,34rem)}}
@media(max-width:45rem){.contacts-hero{min-height:31rem;background-position:68% center}.contacts-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.28) 100%)}.contacts-hero-content{width:100%}}

/* Unified compact spacing above hero banners */
.site-main > .hero,
.site-main > .page-hero {
  padding-top: clamp(1rem, 1.55vw, 1.5rem);
}


/* Brand logo from approved furniture blueprint mark */
.brand-logo{display:block;inline-size:clamp(2.45rem,2.8vw,2.85rem);block-size:clamp(2.45rem,2.8vw,2.85rem);object-fit:contain;border-radius:.7rem;flex:0 0 auto}
.brand-footer .brand-logo{background:#fff}

/* Blog archive and article */
.blog-hero{display:block;position:relative;min-height:0;aspect-ratio:3/1;background-image:url("../images/blog-hero-bg.webp");background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden}
.blog-hero-copy{position:relative;z-index:1;width:min(43%,36rem);max-width:none}
.blog-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.9rem,1.45vw,1.35rem)}
.blog-topic-card{display:block;min-height:13rem;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.blog-topic-card:hover{transform:translateY(-2px);border-color:#b8d2ff;box-shadow:0 .9rem 2.2rem rgba(7,91,232,.08)}
.blog-topic-card h2{font-size:clamp(1.15rem,.55vw + 1rem,1.4rem);margin:.75rem 0 .55rem}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,1.55vw,1.45rem)}
.blog-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.blog-card-media{display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,#102b58,#075be8)}
.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.blog-card-placeholder{width:100%;height:100%;display:grid;place-items:center;padding:1.2rem;color:#fff;font-size:clamp(1.05rem,1vw + .85rem,1.45rem);font-weight:900;letter-spacing:-.03em;text-align:center;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:2rem 2rem}
.blog-card-body{display:flex;flex:1;flex-direction:column;padding:1.2rem 1.25rem 1.3rem}
.blog-meta{display:flex;flex-wrap:wrap;gap:.55rem;color:#65748b;font-size:.78rem;font-weight:750}
.blog-meta span+span:before{content:"•";margin-right:.55rem;color:#a0aec1}
.blog-card h3{margin:.7rem 0 .6rem;font-size:clamp(1.12rem,.55vw + 1rem,1.38rem)}
.blog-card h3 a:hover{color:var(--blue)}
.blog-card-body p{margin-bottom:1rem!important}
.blog-read-more{margin-top:auto;color:var(--blue);font-weight:850}
.blog-pagination{margin-top:1.5rem}.blog-pagination .nav-links{display:flex;gap:.5rem;flex-wrap:wrap}.blog-pagination .page-numbers{display:inline-flex;min-width:2.55rem;min-height:2.55rem;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:.7rem;background:#fff;padding:.45rem .75rem;font-weight:800}.blog-pagination .current{background:var(--blue);border-color:var(--blue);color:#fff}
.blog-empty{max-width:54rem;margin-inline:auto;text-align:center;padding:clamp(1.7rem,3vw,2.7rem)}.blog-empty h2{margin:.7rem 0}.blog-empty .btn{margin-top:1.1rem}
.blog-single-head{max-width:62rem}.blog-single-head .h1{font-size:clamp(2.2rem,4.6vw,4.2rem);margin:.75rem 0 1rem}.blog-single-cover{overflow:hidden;border-radius:var(--radius);max-height:36rem}.blog-single-cover img{width:100%;height:100%;object-fit:cover;display:block}
.blog-article-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(17rem,.8fr);gap:clamp(1.1rem,2.2vw,2rem);align-items:start}.blog-article-content{padding:clamp(1.4rem,2.5vw,2.4rem)}.blog-article-content>*:first-child{margin-top:0}.blog-article-content h2{margin:1.8rem 0 .75rem}.blog-article-content h3{margin:1.45rem 0 .65rem}.blog-article-content p{margin:.85rem 0;color:#33425b}.blog-article-content a{color:var(--blue);text-decoration:underline}.blog-article-content ul,.blog-article-content ol{padding-left:1.3rem;color:#33425b}.blog-article-content blockquote{margin:1.3rem 0;padding:1rem 1.2rem;border-left:.25rem solid var(--blue);background:#f4f8ff;border-radius:0 .8rem .8rem 0}.blog-article-aside{position:sticky;top:6.5rem;display:grid;gap:1rem}.blog-article-aside .btn{width:100%;margin-top:1rem}.blog-back{color:var(--blue);font-weight:800}
@media(max-width:68.75rem){.blog-hero{aspect-ratio:auto;min-height:28rem;background-position:62% center}.blog-hero-copy{width:min(58%,34rem)}.blog-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-article-layout{grid-template-columns:1fr}.blog-article-aside{position:static}}
@media(max-width:45rem){.blog-hero{min-height:31rem;background-position:68% center}.blog-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0 58%,rgba(255,255,255,.72) 78%,rgba(255,255,255,.28) 100%)}.blog-hero-copy{width:100%}.blog-topic-grid,.blog-grid{grid-template-columns:1fr}.blog-topic-card{min-height:0}.blog-single-head .h1{font-size:clamp(2rem,9vw,2.8rem)}}

/* Verified public contacts */
.contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.contact-link{display:flex;flex-direction:column;gap:.2rem;padding:1rem;border:1px solid var(--line);border-radius:.9rem;background:#fff;transition:.18s}.contact-link:hover{border-color:#a9c9ff;box-shadow:0 .5rem 1.4rem rgba(7,91,232,.08)}.contact-link span{font-size:.78rem;color:var(--muted);font-weight:750}.contact-link strong{color:var(--blue);font-size:.96rem;line-height:1.25}@media(max-width:45rem){.contact-links{grid-template-columns:1fr}}

/* Personal-data release gate */
.consent-row{display:flex;align-items:flex-start;gap:.65rem;margin:1rem 0 .45rem;font-size:.9rem;line-height:1.45;color:#33425b}.consent-row .consent-check{width:1.1rem;height:1.1rem;min-width:1.1rem;margin:.12rem 0 0;padding:0;accent-color:var(--blue)}.consent-row a,.form-privacy-note a,.legal-document a{color:var(--blue);text-decoration:underline;text-underline-offset:.14em}.form-privacy-note{margin:.15rem 0 1rem;color:var(--muted);font-size:.78rem;line-height:1.45}.legal-document{max-width:68rem}.legal-card{padding:clamp(1.35rem,3vw,2.6rem)}.legal-card h2{margin:2rem 0 .75rem;font-size:clamp(1.25rem,1.4vw,1.65rem)}.legal-card h2:first-of-type{margin-top:.5rem}.legal-card p,.legal-card li{color:#3d4b63;line-height:1.65}.legal-card ul{padding-left:1.3rem}.legal-card li+li{margin-top:.35rem}
