/* =========================================================
   Laweta Ozimek — Nowoczesna strona (rozbudowana)
   Styl: przestrzeń, zaokrąglenia, pomarańcz, glassmorphism
   ========================================================= */

:root{
  --orange:#ff7a1a; --orange-d:#ec6605; --orange-dd:#cf5400;
  --orange-soft:#fff4ea; --peach:#fff8f2;
  --ink:#171a21; --ink-2:#23272f; --muted:#6b7280; --muted-2:#9aa1ad;
  --line:#ececf0; --line-2:#e2e3e8;
  --bg:#fbfbfc; --white:#ffffff;
  --green:#19a957;

  --fh:"Archivo",system-ui,sans-serif;
  --fb:"Barlow",system-ui,sans-serif;

  --r:16px; --r-lg:24px; --r-xl:32px;
  --shadow:0 30px 70px -34px rgba(23,26,33,.32);
  --shadow-s:0 16px 36px -22px rgba(23,26,33,.26);
  --shadow-xs:0 6px 18px -10px rgba(23,26,33,.22);

  /* glass */
  --glass-bg:rgba(255,255,255,.55);
  --glass-bg-strong:rgba(255,255,255,.72);
  --glass-border:rgba(255,255,255,.7);
  --glass-blur:saturate(180%) blur(18px);

  --wrap:1200px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{
  font-family:var(--fb);color:var(--ink);background:var(--bg);
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
ul{list-style:none}
h1,h2,h3,h4{font-family:var(--fh);font-weight:800;line-height:1.07;letter-spacing:-.02em}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:26px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}

/* decorative ambient blobs (for glass to refract) */
.ambient{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.ambient::before,.ambient::after{content:"";position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}
.ambient::before{width:520px;height:520px;background:radial-gradient(circle,#ffd9b8,transparent 70%);top:-160px;right:-120px}
.ambient::after{width:460px;height:460px;background:radial-gradient(circle,#ffe6cf,transparent 70%);top:680px;left:-160px}

/* =========================================================
   Buttons
   ========================================================= */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--fh);font-weight:700;font-size:1.04rem;
  padding:16px 28px;border-radius:999px;transition:.18s;white-space:nowrap;
}
.btn svg{width:20px;height:20px;flex:none}
.btn-call{background:var(--orange);color:#fff;box-shadow:0 16px 32px -12px rgba(255,122,26,.7)}
.btn-call:hover{background:var(--orange-d);transform:translateY(-2px);box-shadow:0 22px 40px -14px rgba(255,122,26,.8)}
.btn-wa{background:var(--green);color:#fff}
.btn-wa:hover{transform:translateY(-2px);filter:brightness(1.05)}
.btn-ghost{background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);color:var(--ink);border:1px solid var(--glass-border);box-shadow:var(--shadow-xs)}
.btn-ghost:hover{transform:translateY(-2px);border-color:var(--orange)}
.btn-block{width:100%}
.btn-lg{padding:18px 32px;font-size:1.14rem}

/* =========================================================
   Header — glass pill
   ========================================================= */
header{position:sticky;top:0;z-index:60;padding:16px 0}
header .in{
  max-width:var(--wrap);margin-inline:auto;
  padding:11px 12px 11px 22px;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  background:var(--glass-bg-strong);
  -webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:999px;
  box-shadow:var(--shadow-s);
}
.brand{display:flex;align-items:center;gap:11px}
.logo{width:44px;height:44px;flex:none}
.brand b{font-family:var(--fh);font-weight:900;font-size:1.06rem;line-height:1;text-transform:uppercase}
.brand b i{color:var(--orange);font-style:normal}
.brand small{display:block;font-size:.64rem;letter-spacing:.18em;color:var(--muted);font-weight:600;margin-top:3px;text-transform:uppercase}
nav.main{display:flex;align-items:center;gap:26px}
nav.main a{font-weight:600;font-size:.95rem;color:var(--muted);white-space:nowrap}
nav.main a:hover{color:var(--ink)}
.hcta{display:flex;align-items:center;gap:12px}
.hphone{text-align:right;line-height:1.05}
.hphone small{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}
.hphone b{font-family:var(--fh);font-size:1.22rem;color:var(--orange-d)}
.burger{display:none;flex-direction:column;gap:5px;padding:10px}
.burger span{width:24px;height:2.5px;background:var(--ink);border-radius:2px;transition:.25s}

@media(max-width:980px){
  nav.main{
    position:fixed;inset:0 0 0 auto;width:min(82vw,320px);
    background:var(--glass-bg-strong);-webkit-backdrop-filter:saturate(180%) blur(26px);backdrop-filter:saturate(180%) blur(26px);
    flex-direction:column;align-items:flex-start;gap:4px;padding:100px 26px 26px;
    transform:translateX(100%);transition:transform .3s ease;border-left:1px solid var(--glass-border);z-index:55;
  }
  nav.main.open{transform:translateX(0)}
  nav.main a{font-size:1.12rem;padding:12px 0;width:100%;border-bottom:1px solid var(--line)}
  .burger{display:flex;z-index:60}
  .burger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
  .burger.open span:nth-child(2){opacity:0}
  .burger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
  .hphone{display:none}
}

/* =========================================================
   Hero
   ========================================================= */
.hero{padding:34px 0 90px}
.hero .wrap{display:grid;grid-template-columns:1.02fr .98fr;gap:46px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:9px;background:var(--orange-soft);color:var(--orange-d);padding:9px 17px;border-radius:999px;font-weight:700;font-size:.86rem;margin-bottom:22px}
.pill .dot{width:8px;height:8px;border-radius:50%;background:var(--orange);animation:p 1.7s infinite}
@keyframes p{0%{box-shadow:0 0 0 0 rgba(255,122,26,.6)}70%{box-shadow:0 0 0 9px rgba(255,122,26,0)}}
.hero h1{font-size:clamp(2.6rem,5.4vw,4.2rem);margin-bottom:20px;text-wrap:balance}
.hero h1 .o{color:var(--orange)}
.hero p.lead{font-size:1.2rem;color:var(--muted);max-width:500px;margin-bottom:28px;text-wrap:pretty}
.acts{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:34px}
.acts .btn{font-size:1.12rem;padding:17px 30px}
.stats{display:flex;gap:14px;flex-wrap:wrap}
.stat{
  background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r);padding:14px 20px;box-shadow:var(--shadow-xs);
}
.stat b{font-family:var(--fh);font-weight:900;font-size:1.7rem;display:block;line-height:1}
.stat b .o{color:var(--orange)}
.stat small{color:var(--muted);font-size:.84rem;font-weight:600}

.hvis{position:relative}
.hvis .ph{border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow)}
.hvis .ph img{width:100%;height:100%;min-height:480px;object-fit:cover}
.float{
  position:absolute;
  background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:18px;padding:14px 18px;
  box-shadow:var(--shadow);display:flex;align-items:center;gap:12px;white-space:nowrap;
}
.float .fi{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:none}
.float .fi svg{width:21px;height:21px}
.float.a{top:24px;left:-22px}
.float.a .fi{background:rgba(25,169,87,.16);color:var(--green)}
.float.b{bottom:26px;right:-18px}
.float.b .fi{background:var(--orange-soft);color:var(--orange-d)}
.float b{font-family:var(--fh);font-weight:800;font-size:1rem;display:block;line-height:1.1}
.float small{color:var(--muted);font-size:.8rem}

@media(max-width:980px){
  .hero .wrap{grid-template-columns:1fr;gap:36px}
  .hvis .ph img{min-height:340px}
  .float.a{left:10px}.float.b{right:10px}
}

/* =========================================================
   Logos / trust ribbon
   ========================================================= */
.ribbon{padding:8px 0 40px}
.ribbon .inner{
  background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:24px 28px;
}
.rb{display:flex;align-items:center;gap:13px}
.rb svg{width:30px;height:30px;color:var(--orange);flex:none}
.rb b{font-family:var(--fh);font-weight:800;font-size:1rem;display:block;text-transform:uppercase;line-height:1.1}
.rb small{color:var(--muted);font-size:.82rem}
@media(max-width:760px){.ribbon .inner{grid-template-columns:1fr 1fr;gap:20px}}

/* =========================================================
   Section scaffolding
   ========================================================= */
.sec{padding:86px 0}
.sec.tight{padding:60px 0}
.head{max-width:660px;margin-bottom:48px}
.head.center{margin-inline:auto;text-align:center}
.ey{display:inline-flex;align-items:center;gap:8px;font-family:var(--fh);font-weight:800;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange-d);margin-bottom:14px}
.ey::before{content:"";width:22px;height:3px;background:var(--orange);border-radius:2px}
.head.center .ey::before{display:none}
.sec h2{font-size:clamp(2rem,4.2vw,3rem)}
.sec h2 .o{color:var(--orange)}
.head p{margin-top:15px;color:var(--muted);font-size:1.12rem}

/* =========================================================
   Services
   ========================================================= */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--white);border-radius:var(--r-lg);padding:30px;border:1px solid var(--line);transition:.22s}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}
.ic{width:56px;height:56px;border-radius:16px;background:var(--orange-soft);display:grid;place-items:center;margin-bottom:18px}
.ic svg{width:28px;height:28px;color:var(--orange-d)}
.card h3{font-size:1.25rem;margin-bottom:9px}
.card p{color:var(--muted);font-size:.98rem;margin-bottom:14px}
.card .more{display:inline-flex;align-items:center;gap:7px;font-family:var(--fh);font-weight:700;font-size:.9rem;color:var(--orange-d)}
.card .more svg{width:15px;height:15px;transition:transform .18s}
.card:hover .more svg{transform:translateX(3px)}
@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.grid{grid-template-columns:1fr}}

/* =========================================================
   Why us (split, glass feature card)
   ========================================================= */
.why{position:relative}
.why .wrap{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.why-vis{position:relative;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow);min-height:460px}
.why-vis img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.why-glass{
  position:absolute;left:22px;right:22px;bottom:22px;
  background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r);padding:20px 22px;box-shadow:var(--shadow);
  display:flex;align-items:center;gap:16px;
}
.why-glass .av{width:48px;height:48px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-items:center;font-family:var(--fh);font-weight:900;font-size:1.2rem;flex:none}
.why-glass .stars{color:var(--orange);letter-spacing:1px;font-size:.92rem}
.why-glass b{font-family:var(--fh);font-weight:800;display:block;font-size:.98rem}
.why-glass small{color:var(--muted);font-size:.84rem}
.benefits{display:grid;gap:18px;margin-top:26px}
.benefit{display:flex;gap:16px}
.benefit .bi{width:46px;height:46px;border-radius:13px;background:var(--orange-soft);color:var(--orange-d);display:grid;place-items:center;flex:none}
.benefit .bi svg{width:24px;height:24px}
.benefit h3{font-size:1.12rem;margin-bottom:3px}
.benefit p{color:var(--muted);font-size:.96rem}
@media(max-width:900px){.why .wrap{grid-template-columns:1fr;gap:34px}.why-vis{min-height:340px;order:-1}}

/* =========================================================
   How it works
   ========================================================= */
.how{background:linear-gradient(180deg,var(--peach),var(--bg));border-radius:var(--r-xl);margin-inline:14px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{position:relative;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:32px 28px}
.step .n{width:48px;height:48px;border-radius:14px;background:var(--ink);color:#fff;font-family:var(--fh);font-weight:900;font-size:1.3rem;display:grid;place-items:center;margin-bottom:18px}
.step:nth-child(2) .n{background:var(--orange)}
.step h3{font-size:1.22rem;margin-bottom:8px}
.step p{color:var(--muted);font-size:.97rem}
@media(max-width:820px){.steps{grid-template-columns:1fr}}

/* =========================================================
   Pricing
   ========================================================= */
.price-wrap{display:grid;grid-template-columns:1.25fr .85fr;gap:24px;align-items:start}
.price-list{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.price-list .ph{padding:22px 28px;background:var(--peach);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px;font-family:var(--fh);font-weight:800;font-size:1.12rem;text-transform:uppercase}
.price-list .ph svg{width:22px;height:22px;color:var(--orange-d)}
.prow{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 28px;border-bottom:1px solid var(--line)}
.prow:last-child{border-bottom:none}
.prow .l b{display:block;font-family:var(--fh);font-weight:700;font-size:1.04rem}
.prow .l small{color:var(--muted-2);font-size:.85rem}
.prow .v{font-family:var(--fh);font-weight:800;font-size:1.16rem;color:var(--orange-d);white-space:nowrap;text-align:right}
.prow .v small{display:block;color:var(--muted);font-size:.7rem;font-weight:600}
.price-cta{
  background:linear-gradient(150deg,var(--ink),var(--ink-2));color:#fff;
  border-radius:var(--r-lg);padding:34px 30px;position:relative;overflow:hidden;
}
.price-cta::before{content:"";position:absolute;width:240px;height:240px;background:var(--orange);filter:blur(110px);opacity:.45;top:-70px;right:-50px}
.price-cta .ey{color:#ffb37a;position:relative}
.price-cta .big{position:relative;font-family:var(--fh);font-weight:900;font-size:2.6rem;color:#fff;line-height:1;margin:6px 0 4px}
.price-cta .big .o{color:var(--orange)}
.price-cta p{position:relative;color:#b6bcc8;margin-bottom:22px}
.price-cta .note{position:relative;margin-top:18px;font-size:.84rem;color:#8b93a0;display:flex;gap:9px}
.price-cta .note svg{width:16px;height:16px;flex:none;margin-top:3px}
@media(max-width:820px){.price-wrap{grid-template-columns:1fr}}

/* =========================================================
   Coverage + map
   ========================================================= */
.cov-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:40px;align-items:center}
.cov-list{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 24px}
.cov-list span{background:var(--white);border:1px solid var(--line);padding:8px 15px;border-radius:999px;font-size:.92rem;font-weight:600}
.cov-list span.main{background:var(--orange);color:#fff;border-color:var(--orange)}
.cov-far{display:flex;align-items:center;gap:11px;font-weight:600;color:var(--muted)}
.cov-far svg{width:20px;height:20px;color:var(--orange)}
.map-frame{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}
.map-frame iframe{display:block;width:100%;height:420px;border:0}
.map-badge{
  position:absolute;top:18px;left:18px;
  background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:14px;padding:12px 16px;box-shadow:var(--shadow-s);
  display:flex;align-items:center;gap:11px;
}
.map-badge svg{width:24px;height:24px;color:var(--orange);flex:none}
.map-badge b{font-family:var(--fh);font-weight:800;font-size:.96rem;display:block;line-height:1.1}
.map-badge small{color:var(--muted);font-size:.8rem}
@media(max-width:820px){.cov-grid{grid-template-columns:1fr;gap:28px}}
.cov-sub{margin-top:52px;border-top:1px solid var(--line);padding-top:30px}
.cov-sub h3{font-size:1.08rem;margin-bottom:16px}
.cov-links{display:flex;flex-wrap:wrap;gap:7px}
.cov-links a{background:var(--white);border:1px solid var(--line);padding:5px 13px;border-radius:999px;font-size:.83rem;font-weight:600;color:var(--muted);transition:.15s}
.cov-links a:hover{background:var(--orange);border-color:var(--orange);color:#fff}

/* =========================================================
   Gallery
   ========================================================= */
.gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}
.gi{position:relative;overflow:hidden;border-radius:var(--r);cursor:pointer;background:var(--white)}
.gi img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.gi::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(23,26,33,.4),transparent 55%);opacity:0;transition:.3s}
.gi:hover img{transform:scale(1.07)}
.gi:hover::after{opacity:1}
.gi.tall{grid-row:span 2}
.gi.wide{grid-column:span 2}
@media(max-width:820px){.gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.gi.tall{grid-row:span 1}}

.lightbox{position:fixed;inset:0;z-index:100;background:rgba(15,17,22,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:30px}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;border-radius:12px;box-shadow:var(--shadow)}
.lb-btn{position:absolute;background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);color:var(--ink);display:grid;place-items:center;border-radius:50%}
.lb-close{top:22px;right:26px;width:46px;height:46px;font-size:1.5rem}
.lb-nav{top:50%;transform:translateY(-50%);width:52px;height:52px}
.lb-nav svg{width:26px;height:26px}
.lb-prev{left:18px}.lb-next{right:18px}
.lb-btn:hover{background:var(--orange);color:#fff;border-color:var(--orange)}

/* =========================================================
   Reviews
   ========================================================= */
.rev-top{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:40px}
.rev-score{
  display:flex;align-items:center;gap:18px;
  background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r-lg);padding:20px 28px;box-shadow:var(--shadow-xs);
}
.rev-score .num{font-family:var(--fh);font-weight:900;font-size:3.2rem;line-height:1;color:var(--orange)}
.rev-score .stars{color:var(--orange);font-size:1.15rem;letter-spacing:2px}
.rev-score small{color:var(--muted);font-size:.9rem;display:block;margin-top:3px}
.rev-google{display:flex;align-items:center;gap:9px;font-weight:600;color:var(--muted)}
.rev-google svg{width:22px;height:22px}
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rev{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;display:flex;flex-direction:column}
.rev .stars{color:var(--orange);letter-spacing:2px;margin-bottom:13px}
.rev p{font-size:1rem;margin-bottom:18px;text-wrap:pretty}
.rev .who{display:flex;align-items:center;gap:12px;margin-top:auto}
.rev .av{width:44px;height:44px;border-radius:50%;background:var(--orange-soft);color:var(--orange-d);display:grid;place-items:center;font-family:var(--fh);font-weight:800}
.rev .who b{font-size:.96rem;display:block}
.rev .who small{color:var(--muted-2);font-size:.82rem}
@media(max-width:900px){.rev-grid{grid-template-columns:1fr}}

/* =========================================================
   SEO content block
   ========================================================= */
.seo{background:var(--white);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.seo-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:50px}
.seo-grid h2{font-size:clamp(1.7rem,3.4vw,2.3rem);margin-bottom:18px}
.seo-grid h3{font-size:1.2rem;margin:28px 0 10px}
.seo-grid p{color:var(--muted);margin-bottom:14px;text-wrap:pretty}
.seo-grid strong{color:var(--ink);font-weight:700}
.seo-grid .links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.seo-grid .links a{background:var(--peach);border:1px solid var(--line);padding:6px 13px;border-radius:999px;font-size:.88rem;font-weight:600;color:var(--orange-d)}
.seo-grid .links a:hover{background:var(--orange);color:#fff;border-color:var(--orange)}
.seo-side{
  align-self:start;position:sticky;top:100px;
  background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r-lg);padding:28px;box-shadow:var(--shadow-xs);
}
.seo-side h3{font-size:1.15rem;margin-bottom:16px}
.seo-side ul{display:grid;gap:12px}
.seo-side li{display:flex;gap:11px;font-size:.96rem;color:var(--muted)}
.seo-side li svg{width:19px;height:19px;color:var(--green);flex:none;margin-top:3px}
.seo-side .cta{margin-top:22px}
@media(max-width:900px){.seo-grid{grid-template-columns:1fr;gap:32px}.seo-side{position:static}}

/* =========================================================
   FAQ
   ========================================================= */
.faq-list{max-width:860px;margin-inline:auto}
.faq-item{background:var(--white);border:1px solid var(--line);border-radius:var(--r);margin-bottom:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item.open{border-color:transparent;box-shadow:var(--shadow-s)}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;text-align:left;font-family:var(--fh);font-weight:700;font-size:1.12rem}
.faq-q:hover{color:var(--orange-d)}
.faq-ico{width:30px;height:30px;flex:none;border-radius:50%;background:var(--orange-soft);color:var(--orange-d);display:grid;place-items:center;font-size:1.3rem;transition:transform .25s;line-height:1}
.faq-item.open .faq-ico{transform:rotate(45deg);background:var(--orange);color:#fff}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a p{padding:0 24px 24px;color:var(--muted)}

/* =========================================================
   Contact
   ========================================================= */
.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:38px;align-items:start}
.big-call{
  display:flex;align-items:center;gap:18px;
  background:linear-gradient(150deg,var(--ink),var(--ink-2));color:#fff;
  border-radius:var(--r-lg);padding:24px 28px;margin-bottom:16px;position:relative;overflow:hidden;
}
.big-call::before{content:"";position:absolute;width:200px;height:200px;background:var(--orange);filter:blur(100px);opacity:.5;top:-60px;right:-40px}
.big-call .ic{position:relative;width:56px;height:56px;border-radius:15px;background:var(--orange);color:#fff;display:grid;place-items:center;flex:none}
.big-call .ic svg{width:28px;height:28px}
.big-call .tx{position:relative}
.big-call small{color:#b6bcc8;font-size:.84rem;text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.big-call b{font-family:var(--fh);font-weight:900;font-size:1.95rem;line-height:1.05;display:block}
.info-rows{display:grid;gap:2px;margin-top:10px}
.info-row{display:flex;gap:14px;padding:16px 4px;border-bottom:1px solid var(--line)}
.info-row svg{width:21px;height:21px;color:var(--orange-d);flex:none;margin-top:2px}
.info-row b{display:block;font-family:var(--fh);font-weight:700}
.info-row span{color:var(--muted);font-size:.96rem}

.form{
  background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:var(--r-lg);padding:32px 30px;box-shadow:var(--shadow-s);
}
.form h3{font-size:1.4rem;margin-bottom:6px}
.form>p{color:var(--muted);font-size:.95rem;margin-bottom:22px}
.field{margin-bottom:16px}
.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:7px}
.field label .req{color:var(--orange-d)}
.field input,.field textarea{width:100%;background:rgba(255,255,255,.7);border:1px solid var(--line-2);border-radius:12px;padding:14px 15px;color:var(--ink);font-family:inherit;font-size:1rem;transition:border-color .15s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--orange)}
.field textarea{resize:vertical;min-height:100px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-success{display:none;text-align:center;padding:26px 10px}
.form-success.show{display:block}
.form-success .ok{width:64px;height:64px;border-radius:50%;background:rgba(25,169,87,.14);color:var(--green);display:grid;place-items:center;margin:0 auto 18px}
.form-success .ok svg{width:32px;height:32px}
.form-success h3{margin-bottom:8px}
.form-success p{color:var(--muted)}
@media(max-width:820px){.contact-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}}

/* =========================================================
   Footer
   ========================================================= */
footer.site{background:var(--ink);color:#9aa1ad;padding:60px 0 0;margin-top:20px}
.fg{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:34px;padding-bottom:44px}
.fg .brand b{color:#fff}.fg .brand small{color:#6b7280}
.fg p{margin:16px 0;font-size:.95rem;max-width:290px}
.fsoc{display:flex;gap:10px}
.fsoc a{width:42px;height:42px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);display:grid;place-items:center;transition:.2s}
.fsoc a:hover{background:var(--orange);color:#fff}
.fsoc svg{width:20px;height:20px}
.fcol h4{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#6b7280;margin-bottom:16px}
.fcol ul{display:grid;gap:11px}
.fcol a,.fcol li{font-size:.95rem;color:#9aa1ad}
.fcol a:hover{color:var(--orange)}
.fcol li{display:flex;gap:10px}
.fcol li svg{width:17px;height:17px;color:var(--orange);flex:none;margin-top:3px}
.fbottom{border-top:1px solid rgba(255,255,255,.08);padding:22px 0;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;color:#6b7280;font-size:.85rem}
@media(max-width:880px){.fg{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fg{grid-template-columns:1fr}}

/* =========================================================
   Sticky mobile call bar — glass
   ========================================================= */
.callbar{
  position:fixed;left:12px;right:12px;bottom:12px;z-index:70;display:none;gap:10px;padding:10px;
  background:var(--glass-bg-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);
  border:1px solid var(--glass-border);border-radius:999px;box-shadow:var(--shadow);
}
.callbar a{flex:1;display:flex;align-items:center;justify-content:center;gap:9px;padding:13px;font-family:var(--fh);font-weight:700;border-radius:999px;font-size:1rem}
.callbar svg{width:19px;height:19px}
.callbar .c{background:var(--orange);color:#fff}
.callbar .w{background:var(--green);color:#fff}
@media(max-width:980px){.callbar{display:flex}body{padding-bottom:80px}}

/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.pill .dot{animation:none}}
