
:root{--bg:#fff8f6;--card:#ffffff;--text:#48383f;--muted:#74666c;--line:#ead4db;--accent:#d786a4;--accent2:#f2c9b9;--wa:#25D366;--shadow:0 18px 42px rgba(98,71,82,.10);--radius:26px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--text);background:radial-gradient(circle at top right,#ffe6db 0,#fff7f2 35%,#fffdfb 100%);overflow-x:hidden}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}
.container{width:min(1160px,calc(100% - 24px));margin:0 auto}
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,248,246,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(224,190,201,.6)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;font-size:20px;box-shadow:var(--shadow);flex:0 0 auto}
.brand-title{font-weight:900;font-size:1.05rem;line-height:1.1}.brand-sub{color:var(--muted);font-weight:600;font-size:.90rem;line-height:1.2;margin-top:2px}
.main-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-start}.main-nav a{padding:11px 14px;border-radius:999px;color:var(--muted);font-weight:800}.main-nav a.active,.main-nav a:hover{color:var(--text);background:#fff;border:1px solid var(--line)}
.right-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.menu-toggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text);font-size:22px;line-height:1;cursor:pointer}
.mobile-menu{display:contents}
.lang-switch{display:flex;align-items:center;gap:6px;background:#fff;padding:6px;border-radius:999px;border:1px solid var(--line);box-shadow:0 8px 18px rgba(114,87,98,.08)}
.flag{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border-radius:999px;font-weight:900;font-size:.88rem;color:var(--muted)}.flag:hover{background:#fff3ef}.flag.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;border-radius:999px;font-weight:900;border:1px solid transparent;cursor:pointer;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn-wa{background:var(--wa);color:#fff;box-shadow:0 12px 22px rgba(37,211,102,.22)}.btn-mail,.btn-soft{background:#fff;border-color:var(--line)}
.hero{padding:46px 0 24px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:center}
.badge{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:10px 14px;border:1px solid var(--line);border-radius:999px;color:#b56181;font-weight:800}
h1{font-size:clamp(2.2rem,5.7vw,4.8rem);line-height:1.02;letter-spacing:-.04em;margin:16px 0 16px}.lead{font-size:1.10rem;color:#5d4f56;max-width:60ch}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.hero-card{background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,244,240,.96));border:1px solid var(--line);border-radius:34px;padding:18px;box-shadow:var(--shadow)}
.collage{display:grid;grid-template-columns:1.08fr .92fr;gap:14px}.collage-main,.stack-item,.story-photo,.feature-photo,.panel-photo{overflow:hidden;border-radius:24px;background:#f4ebe7}.collage-main{min-height:520px;position:relative}
.collage-main img,.stack-item img,.story-photo img,.feature-photo img,.panel-photo img{width:100%;height:100%;object-fit:cover}.collage-main img{object-position:center 38%}
.stack{display:grid;grid-template-rows:1fr 1fr;gap:14px}.stack-item.top{min-height:252px}.stack-item.bottom{min-height:252px}.stack-item.top img{object-position:center center}.stack-item.bottom img{object-position:center 30%}
.float-note{position:absolute;left:16px;bottom:16px;background:rgba(255,255,255,.94);border:1px solid var(--line);padding:14px 16px;border-radius:18px;max-width:78%;box-shadow:var(--shadow)}.float-note strong{display:block;margin-bottom:4px}
.section{padding:24px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:18px}.section-head p{margin:0;color:var(--muted);max-width:62ch}.title{font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:-.03em;margin:0}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;font-size:24px;background:linear-gradient(135deg,#ffe5ee,#fff5f0);margin-bottom:16px}.card h3{margin:0 0 10px;font-size:1.18rem}.card p{margin:0;color:#5d4f56}.card .title + p{margin-top:10px}.card .title + .price-table{margin-top:10px}
.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px}.story-photo img{object-position:center 34%}
.checklist{display:grid;gap:12px;margin-top:18px}.checklist div{display:flex;gap:12px;align-items:flex-start;background:#fff6f2;border:1px solid #f0dee3;border-radius:18px;padding:14px 16px}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.gallery-card{overflow:hidden;border-radius:24px;background:#f4ebe7;position:relative;box-shadow:var(--shadow)}.gallery-card.tall{grid-column:span 4;min-height:470px}.gallery-card.wide{grid-column:span 8;min-height:228px}.gallery-card.mid{grid-column:span 4;min-height:228px}.gallery-card img{width:100%;height:100%;object-fit:cover}.gallery-card.tall img{object-position:center 34%}.gallery-card.wide img{object-position:center 52%}.gallery-card.mid img{object-position:center center}.overlay{position:absolute;left:0;right:0;bottom:0;padding:16px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(31,22,26,.58));color:#fff;font-weight:800}
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{background:linear-gradient(180deg,#fff,#fff8f4);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.review p{margin:0 0 14px;color:#5b4d54;font-style:italic}.review strong{display:block}
.price-table{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff}.price-table th,.price-table td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.price-table th{background:#fff1f5;color:#6a4a58}.price-table tr:last-child td{border-bottom:none}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.step-num{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;color:#fff;font-weight:900;background:linear-gradient(135deg,var(--accent),var(--accent2));margin-bottom:14px}
.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:20px}.contact-list{display:grid;gap:12px;margin-top:16px}.contact-list .item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;font-weight:700}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:grid;gap:8px}.field.full{grid-column:1/-1}label{font-weight:800;font-size:.95rem}
input,select,textarea{width:100%;padding:14px 16px;border-radius:16px;border:1px solid #dcc8cf;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(215,134,164,.12)}textarea{min-height:138px;resize:vertical}.helper{font-size:.92rem;color:var(--muted);margin-top:10px}.error-text{color:#b44b69;font-size:.88rem}
input[type="checkbox"],input[type="radio"]{width:auto;padding:0;border:none;background:transparent;box-shadow:none}input[type="checkbox"]:focus,input[type="radio"]:focus{outline:2px solid rgba(215,134,164,.45);outline-offset:2px}
.choice-group{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.choice-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #dcc8cf;border-radius:999px;background:#fff;color:var(--text);font-weight:700;cursor:pointer}.choice-pill:hover{background:#fff7f4}.choice-pill input{accent-color:var(--accent)}
.cta-box{padding:28px;border-radius:30px;background:linear-gradient(135deg,#fff0f4,#fff6f0 58%,#f7fffb);border:1px solid var(--line);box-shadow:var(--shadow)}.cta-box .title + p{margin-top:10px}
footer{margin-top:26px;padding:40px 0 56px;color:var(--muted);background:linear-gradient(180deg,rgba(255,255,255,0),#fff6f2 24%,#fff2ee 100%)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;gap:20px;padding:22px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 14px 28px rgba(98,71,82,.08)}
.footer-grid>div:first-child strong{display:inline-block;font-size:1.02rem;color:var(--text);line-height:1.2;margin-bottom:6px}
.footer-grid>div:first-child span{display:block;line-height:1.5;max-width:54ch}
.footer-nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.footer-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;color:#5d4f56;font-weight:800;font-size:.92rem;overflow-wrap:anywhere;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}
.footer-nav a:hover,.footer-nav a:focus-visible{background:#fff4ef;color:var(--text);border-color:#e6becd;transform:translateY(-1px)}
.footer-nav a:focus-visible{outline:2px solid rgba(215,134,164,.35);outline-offset:2px}
.print-btn{position:fixed;right:16px;bottom:16px;z-index:40}
@media (max-width:1100px){.nav{align-items:flex-start}.main-nav{width:100%}}
@media (max-width:860px){.topbar{position:sticky}.nav{position:relative;align-items:center;gap:10px}.nav .brand{flex:1 1 auto;width:auto}.brand-mark{width:40px;height:40px;font-size:18px}.brand-sub{display:none}.brand-title{font-size:.98rem}.menu-toggle{display:inline-flex;flex:0 0 auto}.mobile-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:60;background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:0 18px 34px rgba(98,71,82,.16)}.nav.menu-open .mobile-menu{display:flex;flex-direction:column;gap:10px}.nav .mobile-menu .main-nav{display:grid;grid-template-columns:1fr;width:100%;gap:6px}.nav .mobile-menu .main-nav a{padding:11px 12px;border-radius:12px;text-align:left}.nav .mobile-menu .right-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;justify-content:stretch}.nav .mobile-menu .right-controls .btn{width:100%;min-height:44px}.nav .mobile-menu .lang-switch{grid-column:1/-1;justify-content:center;width:100%}}
@media (max-width:980px){.hero-grid,.grid-2,.grid-3,.story,.contact-grid,.reviews,.steps,.footer-grid{grid-template-columns:1fr}.collage{grid-template-columns:1fr}.stack{grid-template-columns:1fr 1fr;grid-template-rows:none}.gallery{grid-template-columns:1fr 1fr}.gallery-card.tall,.gallery-card.wide,.gallery-card.mid{grid-column:auto;min-height:250px}.brand{width:100%}.brand>div{min-width:0}.brand-title,.brand-sub{overflow-wrap:anywhere}.section-head{align-items:flex-start}}
@media (max-width:720px){.container{width:min(100% - 18px,1160px)}.nav{padding:12px 0}.main-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.main-nav a{text-align:center;padding:12px 10px}.right-controls{width:100%;justify-content:flex-start}.lang-switch{width:100%;justify-content:center}.right-controls .btn{min-height:44px}.hero{padding-top:30px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.form-grid,.gallery,.stack{grid-template-columns:1fr}.collage-main{min-height:420px}.stack-item.top,.stack-item.bottom{min-height:200px}.float-note{left:12px;right:12px;bottom:12px;max-width:none}.price-table th,.price-table td{padding:12px 12px}.price-table th:last-child,.price-table td:last-child{white-space:nowrap;width:1%}.contact-list .item,.card p,.section-head p,.checklist div{overflow-wrap:anywhere}input,select,textarea{font-size:16px}h1{font-size:clamp(2rem,12vw,3.2rem)}footer{padding:34px 0 44px}.footer-grid{padding:18px;gap:14px;text-align:center}.footer-grid>div:first-child span{max-width:none}.footer-nav{justify-content:center;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.footer-nav a{width:100%}}
@media (max-width:560px){.main-nav{grid-template-columns:1fr}.right-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.right-controls .lang-switch{grid-column:1/-1}.right-controls .btn{width:100%}.title{font-size:clamp(1.55rem,7vw,2rem)}.badge{font-size:.82rem;padding:9px 12px}.footer-nav{grid-template-columns:1fr}}
@media (max-width:400px){.container{width:min(100% - 14px,1160px)}.card,.hero-card,.step,.review,.cta-box{padding:18px}.price-table th,.price-table td{padding:10px}.brand-mark{width:42px;height:42px}}
@media print{.topbar,.print-btn,.hero-actions,.right-controls,footer{display:none !important}body{background:#fff}.card,.review,.step,.cta-box,.hero-card{box-shadow:none}}
