:root{--ink:#0a2a35;--deep:#0b6e75;--aqua:#0fb5ae;--foam:#e8f8f6;--sun:#ffc933;--paper:#fbfefd;--line:#cfe6e2;--r:16px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Noto Sans Georgian","Noto Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.7}
a{color:inherit;text-decoration:none}ul{list-style:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--sun);outline-offset:3px}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px}
/* top bar */
.top{background:var(--ink);color:#d6ecea;font-size:.88rem}
.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:42px;flex-wrap:wrap}
.top .c{display:flex;gap:20px;flex-wrap:wrap}.top a:hover{color:var(--sun)}
.soc{display:flex;gap:8px}
.ic{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;transition:transform .25s}
.ic:hover{transform:translateY(-3px) scale(1.08)}
.ic svg{width:18px;height:18px}
.wa{background:#25d366}.vb{background:#7360f2}
/* header */
header.nav{position:sticky;top:0;z-index:20;background:rgba(251,254,253,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
header.nav.sc{box-shadow:0 8px 30px rgba(10,42,53,.1)}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:18px}
.logo{display:flex;align-items:center;gap:10px}
.logo .mark{width:42px;height:42px;transition:transform .6s cubic-bezier(.3,1.6,.5,1)}
.logo:hover .mark{transform:rotate(-12deg) scale(1.08)}
.spark{transform-origin:20px 18px;animation:tw 3s ease-in-out infinite}
.s2{transform-origin:30px 30px;animation-delay:.9s}
@keyframes tw{0%,100%{transform:scale(1) rotate(0)}50%{transform:scale(1.18) rotate(22deg)}}
.word{font-family:Sora,"Noto Sans Georgian",sans-serif;font-weight:800;font-size:1.5rem;letter-spacing:-.02em;display:flex}
.word b,.word span{--c:var(--ink);background:linear-gradient(100deg,var(--c) 38%,#6ff0e6 47%,var(--sun) 52%,var(--c) 62%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4.5s ease-in-out infinite}
.word b{--c:var(--aqua)}
.light .word b,.light .word span{--c:#fff}.light .word b{--c:#7ff0e8}
@keyframes shine{0%,25%{background-position:120% 0}75%,100%{background-position:-20% 0}}
nav>ul{display:flex;gap:4px;align-items:center}
nav>ul>li{position:relative}
nav>ul>li>a{display:block;padding:9px 11px;border-radius:999px;font-weight:600;font-size:.95rem}
nav>ul>li>a:hover,nav>ul>li>a.on{background:var(--foam);color:var(--deep)}
.sub{position:absolute;top:100%;left:0;min-width:330px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:8px;box-shadow:0 20px 50px rgba(10,42,53,.15);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}
li:hover>.sub,li:focus-within>.sub{opacity:1;visibility:visible;transform:none}
.sub a{display:block;padding:9px 14px;border-radius:10px;font-size:.92rem}
.sub a:hover{background:var(--foam);color:var(--deep)}
.cta,.btn{display:inline-block;background:var(--aqua);color:#04282c;font-weight:700;padding:12px 24px;border-radius:999px;transition:.25s;border:0;cursor:pointer;font:inherit;font-weight:700}
.cta:hover,.btn:hover{background:var(--sun);transform:translateY(-2px)}
.btn.ghost{background:transparent;color:#fff;border:2px solid #ffffff55}.btn.ghost:hover{background:#fff;color:var(--ink)}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;height:3px;width:26px;margin:5px auto;background:var(--ink);border-radius:3px}
/* hero */
.hero{background:radial-gradient(circle at 80% 20%,#0f6f78 0,transparent 55%),var(--ink);color:#fff;padding:80px 0 96px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;position:relative;z-index:1}
.hero h1{font-size:clamp(2.1rem,5vw,3.7rem);line-height:1.15;font-weight:800;letter-spacing:-.01em}
.hero h1 em{font-style:normal;color:var(--sun)}
.hero p{margin:20px 0 32px;max-width:48ch;color:#cfe8e5;font-size:1.1rem}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap}
.bub{position:absolute;bottom:-60px;width:var(--s);height:var(--s);left:var(--x);border-radius:50%;border:2px solid #ffffff40;background:radial-gradient(circle at 30% 30%,#ffffff55,transparent 60%);animation:rise var(--d) linear infinite;animation-delay:var(--l)}
@keyframes rise{to{transform:translateY(-120vh) translateX(30px)}}
.pane{position:relative;aspect-ratio:4/5;max-width:420px;margin-left:auto;border:12px solid #fff;border-radius:22px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45);background:
linear-gradient(115deg,transparent 30%,#ffffff88 34%,transparent 40%,transparent 58%,#ffffff55 60%,transparent 64%),
linear-gradient(#fff 0 0) center/12px 100% no-repeat,linear-gradient(#fff 0 0) center/100% 12px no-repeat,
linear-gradient(160deg,#9fe9e3,#2aa8c4)}
.pane::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,#6c7a78 0 12%,transparent 30%),radial-gradient(circle at 75% 70%,#59686a 0 14%,transparent 34%),#8d9c99;opacity:.92;transform-origin:right;animation:wipe 7s cubic-bezier(.6,0,.3,1) infinite}
.pane i{position:absolute;top:0;bottom:0;width:14px;left:0;background:linear-gradient(90deg,var(--sun),#ffe08a);box-shadow:0 0 20px var(--sun);z-index:2;animation:blade 7s cubic-bezier(.6,0,.3,1) infinite}
.pane s{position:absolute;right:16%;top:14%;width:34px;height:34px;z-index:3;background:#fff;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:pop 7s infinite}
@keyframes wipe{0%{transform:scaleX(1);opacity:0}4%{transform:scaleX(1);opacity:.92}40%{transform:scaleX(0);opacity:.92}92%{transform:scaleX(0);opacity:.92}100%{transform:scaleX(0);opacity:0}}
@keyframes blade{0%,4%{left:0;opacity:0}6%{opacity:1}40%{left:calc(100% - 14px);opacity:1}42%,100%{left:calc(100% - 14px);opacity:0}}
@keyframes pop{0%,40%{transform:scale(0) rotate(0)}48%{transform:scale(1.2) rotate(40deg)}58%,100%{transform:scale(0) rotate(90deg)}}
/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-48px;position:relative;z-index:2}
.stats div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 16px;text-align:center;box-shadow:0 14px 40px rgba(10,42,53,.08)}
.stats strong{display:block;font-family:Sora,sans-serif;font-size:2.2rem;color:var(--deep);line-height:1.2}
/* sections */
section{padding:84px 0}
.head{max-width:620px;margin-bottom:40px}
h2{font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1.25;font-weight:800}
.head p{color:#476068;margin-top:10px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px;transition:.3s;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;left:0;top:0;height:4px;width:0;background:linear-gradient(90deg,var(--aqua),var(--sun));transition:width .4s}
.card:hover{transform:translateY(-6px);box-shadow:0 22px 50px rgba(10,42,53,.12)}.card:hover::before{width:100%}
.ico{width:52px;height:52px;border-radius:14px;background:var(--foam);display:grid;place-items:center;margin-bottom:16px}
.ico svg{width:26px;height:26px;stroke:var(--deep);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:1.05rem;line-height:1.4;margin-bottom:8px}
.card p{color:#476068;font-size:.93rem}
.more{display:inline-block;margin-top:14px;color:var(--deep);font-weight:700;font-size:.92rem}
.alt{background:var(--foam)}
.why{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px}
.why div{padding:24px;border-left:4px solid var(--aqua);background:#fff;border-radius:0 var(--r) var(--r) 0}
.why h3{margin-bottom:6px;font-size:1.05rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:s}
.steps div{counter-increment:s;padding:26px;border-radius:var(--r);background:var(--ink);color:#fff}
.steps div::before{content:counter(s);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--sun);color:var(--ink);font-weight:800;margin-bottom:14px}
.steps p{color:#b9d6d3;font-size:.92rem}
.marq{overflow:hidden;border-block:1px solid var(--line);background:#fff;padding:18px 0}
.marq div{display:flex;gap:48px;width:max-content;animation:mq 30s linear infinite;font-weight:700;color:var(--deep)}
@keyframes mq{to{transform:translateX(-50%)}}
.band{background:linear-gradient(120deg,var(--deep),var(--aqua));color:#fff;text-align:center;border-radius:28px;padding:56px 24px}
.band p{margin:10px auto 24px;max-width:50ch}
/* inner pages */
.phero{background:var(--ink);color:#fff;padding:56px 0}
.phero small{color:#8fd8d2}.phero small a:hover{color:var(--sun)}
.phero h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.2;margin-top:6px;max-width:22ch}
.two{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;align-items:start}
.check li{padding:12px 0 12px 38px;position:relative;border-bottom:1px solid var(--line)}
.check li::before{content:"";position:absolute;left:0;top:15px;width:22px;height:22px;border-radius:50%;background:var(--aqua) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/14px no-repeat}
.side{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px;position:sticky;top:100px}
.side h3{margin-bottom:10px}.side a{display:block;padding:8px 12px;border-radius:10px;font-size:.92rem}
.side a:hover,.side a.on{background:var(--foam);color:var(--deep);font-weight:700}
details{background:#fff;border:1px solid var(--line);border-radius:var(--r);margin-bottom:12px;padding:0 22px}
summary{cursor:pointer;padding:18px 0;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::after{content:"+";font-size:1.5rem;line-height:1;color:var(--aqua);transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding-bottom:18px;color:#476068}
form{display:grid;gap:14px}
input,select,textarea{width:100%;font:inherit;padding:14px 16px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{border-color:var(--aqua);outline:none}
.info a,.info div{display:flex;gap:14px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);margin-bottom:12px}
/* footer */
footer{background:var(--ink);color:#b9d6d3;padding:64px 0 28px;font-size:.93rem}
footer .g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
footer h4{color:#fff;margin-bottom:12px}footer li{margin-bottom:6px}footer a:hover{color:var(--sun)}
footer .cp{border-top:1px solid #ffffff22;margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
/* floating */
.fab{position:fixed;right:20px;bottom:20px;display:grid;gap:12px;z-index:30}
.fab a{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.3);transition:transform .25s;position:relative}
.fab a:hover{transform:scale(1.1)}.fab svg{width:30px;height:30px}
.fab .wa::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #25d366;animation:ring 2.2s infinite}
@keyframes ring{to{transform:scale(1.7);opacity:0}}
@media(max-width:1100px){
.burger{display:block}
nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);display:none;padding:12px 22px 22px;max-height:80vh;overflow:auto}
nav.open{display:block}nav>ul{flex-direction:column;align-items:stretch}
.sub{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;min-width:0;padding:0 0 0 14px}
header .cta{display:none}
.hero .wrap,.two{grid-template-columns:1fr}.pane{margin:0 auto;aspect-ratio:16/11}
.stats,.steps{grid-template-columns:1fr 1fr}footer .g{grid-template-columns:1fr 1fr}.side{position:static}}
@media(max-width:520px){.stats,.steps,footer .g{grid-template-columns:1fr}.top .c{gap:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.pane::after,.pane i,.pane s{display:none}}
/* language switcher */
.hr{display:flex;align-items:center;gap:12px}
.lang{position:relative}
.lb{display:flex;align-items:center;gap:10px;background:var(--deep);color:#fff;border:0;border-radius:12px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer;transition:background .2s}
.lb:hover,.lang.open .lb{background:#095a60}
.fl{width:28px;height:19px;border-radius:3px;box-shadow:0 0 0 1px #0003;flex:none}
.chev{width:16px;height:16px;stroke:#fff;fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.lang.open .chev{transform:rotate(180deg)}
.lm{position:absolute;right:0;top:calc(100% + 8px);min-width:100%;background:var(--deep);border-radius:12px;padding:6px;box-shadow:0 18px 40px rgba(10,42,53,.3);opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s;z-index:6}
.lang.open .lm{opacity:1;visibility:visible;transform:none}
.lm a{display:flex;align-items:center;gap:10px;color:#fff;padding:9px 12px;border-radius:8px;font-weight:600;white-space:nowrap}
.lm a:hover,.lm a.on{background:#ffffff26}
/* v3 fixes */
nav>ul>li>a{white-space:nowrap;font-size:.9rem}
.cta{white-space:nowrap;padding:11px 20px}
header.nav .wrap{gap:12px}
.lb span{white-space:nowrap}
@media(max-width:1280px){nav>ul>li>a{padding:9px 8px;font-size:.85rem}.cta{padding:10px 14px;font-size:.88rem}}
header.nav .wrap{max-width:1240px}
@media(max-width:1280px){nav>ul>li>a{padding:9px 9px;font-size:.88rem}}
@media(max-width:560px){
.lb span{display:none}.lb{padding:10px 12px;gap:8px}
.word{font-size:1.25rem}.logo .mark{width:36px;height:36px}
header.nav .wrap{padding:0 14px;min-height:64px}.hr{gap:8px}
.top .c a:nth-child(3){display:none}.top .c{gap:12px}
}

/* contact icon styling */
.top .c{display:flex;align-items:center;gap:14px}
.top-contact{display:flex!important;align-items:center;gap:9px;font-weight:600}
.top-contact .contact-ico{width:34px;height:34px;background:#ffffff18;border-radius:50%;display:grid;place-items:center;flex:none}
.contact-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.contact-cards{display:grid;gap:14px}
.contact-card{display:grid;grid-template-columns:54px 180px 1fr;align-items:center;gap:18px;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:var(--r);color:var(--ink)}
.contact-card .contact-ico{width:52px;height:52px;border-radius:50%;background:var(--foam);color:var(--aqua);display:grid;place-items:center}
.contact-card .contact-ico svg{width:25px;height:25px}
.contact-card b{font-size:1.05rem}
.contact-card span:last-child{font-size:1.02rem}
.contact-card:hover{border-color:var(--aqua)}
@media(max-width:640px){.contact-card{grid-template-columns:46px 1fr;gap:12px}.contact-card .contact-ico{width:46px;height:46px;grid-row:1/3}.contact-card span:last-child{grid-column:2}.top-contact .contact-ico{width:30px;height:30px}.top .c{gap:8px}.top-contact{gap:6px;font-size:.82rem}}

/* mobile top bar: contact dropdown + language */
.mbar{display:none;background:var(--ink);padding:12px 14px;gap:12px;align-items:flex-start;position:relative;z-index:25}
.cdrop{position:relative;flex:1}
.cb{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:var(--deep);color:#fff;border:0;border-radius:12px;padding:11px 14px;font:inherit;font-weight:700;cursor:pointer;transition:background .2s}
.cb:hover,.cdrop.open .cb{background:#095a60}
.cdrop.open .chev{transform:rotate(180deg)}
.cm{position:absolute;left:0;top:calc(100% + 8px);min-width:272px;background:var(--deep);border-radius:14px;padding:8px;box-shadow:0 18px 40px rgba(0,0,0,.35);opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s}
.cdrop.open .cm{opacity:1;visibility:visible;transform:none}
.cm a{display:flex;align-items:center;gap:14px;color:#fff;padding:7px 8px;border-radius:12px;font-weight:600;white-space:nowrap}
.cm a:hover{background:#ffffff1f}
.cm .contact-ico{width:44px;height:44px;border-radius:50%;background:#094f56;color:#fff;display:grid;place-items:center;flex:none}
.cm .contact-ico svg{width:22px;height:22px}
@media(max-width:600px){
.top{display:none}
.mbar{display:flex}
.mbar .lang{flex:1}
.mbar .lb{width:100%;justify-content:space-between}
.mbar .lb span{display:inline}
.hr>.lang{display:none}
}

/* Mobile header alignment refinement */
@media(max-width:600px){
  .mbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 16px;
  }
  .mbar .cdrop,
  .mbar .lang{flex:0 0 auto;min-width:0}
  .mbar .cb,
  .mbar .lb{
    width:auto;
    min-height:48px;
    padding:11px 16px;
    gap:12px;
    justify-content:flex-start;
    white-space:nowrap;
    line-height:1;
  }
  .mbar .cb span,
  .mbar .lb span{display:block;white-space:nowrap}
  .mbar .cb .chev,
  .mbar .lb .chev{margin-left:4px;flex:none}
  .mbar .lm{right:0;left:auto}
}
@media(max-width:380px){
  .mbar{padding:10px 12px;gap:8px}
  .mbar .cb,.mbar .lb{padding:10px 12px;gap:8px;font-size:.88rem}
  .mbar .fl{width:24px;height:16px}
}

/* mobile top-bar sizing only — keep original BestCleaner design */
@media(max-width:600px){
  .mbar{
    background:var(--ink);
    padding:12px 20px;
    gap:24px;
    align-items:center;
    justify-content:center;
  }
  .mbar .cdrop,.mbar .lang{flex:0 0 auto;min-width:0}
  .mbar .cb,.mbar .lb{
    width:auto;
    min-height:44px;
    padding:9px 13px;
    gap:8px;
    border-radius:11px;
    font-size:.86rem;
    line-height:1;
    white-space:nowrap;
  }
  .mbar .fl{width:23px;height:16px}
  .mbar .cb .chev,.mbar .lb .chev{width:14px;height:14px;margin-left:3px}
}
@media(max-width:380px){
  .mbar{padding:10px 12px;gap:14px}
  .mbar .cb,.mbar .lb{padding:8px 10px;gap:6px;font-size:.78rem;min-height:42px}
  .mbar .fl{width:21px;height:14px}
}

/* Final mobile top-bar positioning: controls toward opposite edges */
@media(max-width:600px){
  .mbar{
    justify-content:space-between;
    padding-left:12px;
    padding-right:12px;
    gap:0;
  }
}
@media(max-width:380px){
  .mbar{
    justify-content:space-between;
    padding-left:8px;
    padding-right:8px;
    gap:0;
  }
}

/* Compact mobile contact dropdown only */
@media(max-width:600px){
  .mbar .cm{
    min-width:0;
    width:250px;
    padding:7px;
    border-radius:12px;
  }
  .mbar .cm a{
    gap:10px;
    padding:6px 7px;
    border-radius:10px;
    font-size:.84rem;
  }
  .mbar .cm .contact-ico{
    width:36px;
    height:36px;
  }
  .mbar .cm .contact-ico svg{
    width:18px;
    height:18px;
  }
}
@media(max-width:380px){
  .mbar .cm{width:232px;padding:6px}
  .mbar .cm a{gap:9px;padding:5px 6px;font-size:.79rem}
  .mbar .cm .contact-ico{width:34px;height:34px}
  .mbar .cm .contact-ico svg{width:17px;height:17px}
}

/* mobile top bar: contact icons instead of dropdown, no floating buttons on phones */
.cicons{display:none}
@media(max-width:600px){
.cicons{display:flex;align-items:center;gap:10px}
.ci{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;transition:transform .2s}
.ci:active{transform:scale(.92)}
.ci svg{width:24px;height:24px}
.ci.call{background:var(--aqua)}
.ci.wa{background:#25d366}
.ci.vb{background:#7360f2}
}
@media(max-width:380px){.cicons{gap:8px}.ci{width:42px;height:42px}.ci svg{width:22px;height:22px}}

.fb{background:#1877f2}

/* mobile contact icons: plain, small, one place only (top bar) */
@media(max-width:600px){
.cicons{gap:4px;margin-left:-2px}
.ci,.ci.call,.ci.fb,.ci.wa{width:40px;height:40px;background:none;border-radius:8px}
.ci svg{width:26px;height:26px}
.ci.call svg{fill:#0fb5ae}
.ci.fb svg{fill:#4c8dff}
.ci.wa svg{fill:#25d366}
.fab{display:none}
}
@media(max-width:380px){.ci,.ci.call,.ci.fb,.ci.wa{width:38px;height:38px}.ci svg{width:24px;height:24px}}

/* web: floating contact icons (call, Facebook, WhatsApp) back in the bottom-right corner */
@media(min-width:601px){
.fab{gap:10px;right:22px;bottom:22px}
.fab a,.fab a.wa,.fab a.fb,.fab a.call{width:46px;height:46px;background:#fff;box-shadow:0 8px 24px rgba(10,42,53,.28)}
.fab svg{width:26px;height:26px}
.fab .call svg{fill:#0fb5ae}
.fab .fb svg{fill:#1877f2}
.fab .wa svg{fill:#25d366}
}
/* top bar contacts start exactly above the logo */
.top .wrap{max-width:1240px}

/* hero photo collage */
.hero-photos{position:relative;width:100%;max-width:500px;margin-left:auto;aspect-ratio:1/.92}
.hero-photos::before{content:"";position:absolute;right:-5%;top:8%;width:60%;height:68%;border-radius:30px;background:linear-gradient(160deg,var(--sun),#ffdf7a);opacity:.92;transform:rotate(5deg)}
.hero-photos img{position:absolute;width:80%;height:auto;border-radius:20px;border:5px solid #fff;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.4)}
.hero-photos .p1{top:0;left:0;--r:-2deg;animation:floaty 7s ease-in-out infinite}
.hero-photos .p2{bottom:0;right:0;--r:2deg;animation:floaty 7s ease-in-out -3.5s infinite}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(var(--r))}50%{transform:translateY(-8px) rotate(var(--r))}}
@media(max-width:1100px){.hero-photos{margin:8px auto 0;max-width:460px}}
@media(max-width:600px){.hero-photos{max-width:360px}.hero-photos img{border-width:4px;border-radius:16px}}
@media(max-width:600px){.hero-photos::before{right:0;width:56%}}

/* Four service cards with dedicated imagery */
.services-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.service-photo-card{padding:0;overflow:hidden;display:flex;flex-direction:column}
.service-photo{width:100%;height:220px;object-fit:cover;display:block}
.service-card-body{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1}
.service-card-body .more{margin-top:auto;padding-top:14px}
.service-simple-ico{font-size:26px;font-weight:700;line-height:1}
@media(max-width:1050px){.services-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.services-four{grid-template-columns:1fr}.service-photo{height:230px}.service-card-body{padding:20px}}

/* hero headline: elegant serif + handwritten underline under the yellow word */
.hero h1{font-family:"Noto Serif Georgian","Noto Serif",Georgia,serif;font-weight:800;letter-spacing:0}
.hero h1 em{position:relative;display:inline-block}
.hero h1 em::after{content:"";position:absolute;left:-2%;right:-2%;bottom:-.16em;height:.3em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' preserveAspectRatio='none'%3E%3Cpath d='M3 13C30 3 52 22 82 11S132 3 160 12s30 2 37-6' fill='none' stroke='%23ffc933' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat}
/* stats block removed from the home page: normal spacing under the hero */
.hero{padding-bottom:80px}

/* phones: compact hero so the photos are visible on the first screen */
@media(max-width:600px){
.hero{padding:10px 0 36px}
.hero .wrap{gap:10px}
.hero h1{font-size:1.5rem;line-height:1.22}
.hero p{font-size:.9rem;line-height:1.5;margin:8px 0 12px}
.hero .btn{padding:10px 20px;font-size:.9rem}
.hero-photos{max-width:300px;margin:0 auto}
}
@media(max-width:380px){.hero-photos{max-width:250px}}
@media(min-width:601px){.hero h1{font-size:clamp(2.1rem,3.5vw,3.1rem);line-height:1.18}}
.nb{white-space:nowrap}

/* service composition: compact grouped lists (kitchen / bathroom / rooms ...) */
.groups{column-count:2;column-gap:18px;margin:4px 0 20px}
.grp{break-inside:avoid;background:#fff;border:1px solid var(--line);border-top:3px solid var(--aqua);border-radius:14px;padding:14px 18px 8px;margin-bottom:18px}
.grp h3{font-size:1rem;line-height:1.3;color:var(--deep);margin-bottom:4px}
.grp .check li{border:0;padding:5px 0 5px 28px;font-size:.93rem;line-height:1.5}
.grp .check li::before{top:8px;width:18px;height:18px;background-size:11px}
.paid{background:var(--foam);border:1px dashed #86cfc8;border-left:4px solid var(--sun);border-radius:14px;padding:14px 20px 12px}
.paid h3{font-size:1rem;line-height:1.3;margin-bottom:4px}
.paid li{position:relative;padding:5px 0 5px 28px;font-size:.93rem;line-height:1.5}
.paid li::before{content:"+";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;background:var(--sun);color:var(--ink);font-weight:800;font-size:.8rem;line-height:18px;text-align:center}
.paid small{display:block;margin-top:4px;color:#476068;font-size:.82rem}
.paid a{color:var(--deep);font-weight:700;text-decoration:underline}
@media(max-width:640px){.groups{column-count:1}}

.note-more{margin-top:2px;color:#476068;font-size:.92rem}
.note-more a{color:var(--deep);font-weight:700;text-decoration:underline}

/* three services left: three columns on desktop, single column below */
.services-four{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1050px) and (min-width:821px){.services-four{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-photo{height:190px}}
@media(max-width:820px){.services-four{grid-template-columns:1fr}}
