:root{
  --bg:#f6fbf7;
  --bg-soft:#eef8f1;
  --panel:#ffffff;
  --panel-soft:#f9fdfb;
  --text:#15312a;
  --muted:#5f7a72;
  --line:#d7e8dd;
  --wa:#25D366;
  --wa-dark:#128C7E;
  --wa-deep:#0b5c52;
  --wa-soft:#dcf8c6;
  --blue:#34b7f1;
  --shadow:0 16px 44px rgba(18,140,126,.08);
  --shadow-lg:0 28px 90px rgba(18,140,126,.14);
  --radius:24px;
  --container:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html.cookies-open,html.cookies-open body{overflow:hidden!important}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(37,211,102,.10), transparent 30%),
    radial-gradient(circle at top right, rgba(52,183,241,.08), transparent 24%),
    linear-gradient(180deg,#fbfffc 0%,#f3faf5 100%);
  line-height:1.55;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(var(--container),calc(100% - 32px));margin:0 auto}
.topbar{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center}
.logo{width:190px;height:78px;display:flex;align-items:center;justify-content:center}
.logo img{width:100%;height:100%;object-fit:contain;background:transparent}
.menu{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.menu a{color:var(--muted);font-size:.96rem;font-weight:800}
.menu a:hover,.menu a.active{color:var(--wa-dark)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;font-weight:800;font-size:.95rem;border:1px solid transparent;transition:.2s ease}
.btn-primary{color:#fff;background:linear-gradient(135deg,var(--wa),var(--wa-dark));box-shadow:0 12px 30px rgba(37,211,102,.18)}
.btn-outline{color:var(--wa-dark);background:#fff;border-color:var(--line)}
.eyebrow{display:inline-flex;align-items:center;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--wa-dark);font-size:.84rem;font-weight:900;box-shadow:var(--shadow);margin-bottom:18px}
.hero{padding:36px 0 30px}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:center}
.hero-title{margin:0 0 16px;font-size:clamp(2.2rem,4vw,4.5rem);line-height:1.02;letter-spacing:-.05em;max-width:760px}
.hero-text{margin:0;max-width:720px;color:var(--muted);font-size:1.08rem}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}
.hero-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.hero-points span{padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.92rem}
.showcase-card,.feature-card,.info-card,.contact-card,.shot-card,.final-cta,.footer-box,.cookie-banner{background:linear-gradient(180deg,#ffffff 0%,#f9fdfb 100%);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}
.showcase-card,.feature-card,.info-card,.contact-card,.shot-card{padding:22px}
.showcase-card img,.shot-card img{width:100%;border-radius:18px;border:1px solid var(--line)}
.section{padding:46px 0}
.soft{background:linear-gradient(180deg,#f7fcf8 0%,#eef8f2 100%)}
.section-head{max-width:980px;margin:0 auto 18px auto}
.section-head h2{margin:0 0 10px;font-size:clamp(1.8rem,2.3vw,3rem);letter-spacing:-.04em}
.section-head p{margin:0;max-width:840px;color:var(--muted)}
.page-hero{padding:10px 0 8px}
.page-hero h1{margin:0 0 10px;font-size:clamp(2rem,3vw,3.5rem);text-align:left}
.page-hero .lead{margin:0;text-align:left;max-width:900px;color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.icon{width:52px;height:52px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e9fff0,#e8faf4);border:1px solid #d4eee0;margin-bottom:16px;font-size:1.2rem}
.feature-card h3,.info-card h3,.shot-card h3,.contact-card h3{margin:0 0 10px;line-height:1.2;text-align:left}
.feature-card p,.info-card p,.shot-card p,.contact-card p{margin:0;color:var(--muted);text-align:left}
.shot-label{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:var(--wa-soft);color:var(--wa-deep);font-size:.82rem;font-weight:800;margin-bottom:14px}
.list{display:grid;gap:14px;margin-top:16px}
.list-item{display:grid;grid-template-columns:12px minmax(0,1fr);gap:12px;align-items:start;padding:16px 18px;border:1px solid var(--line);border-radius:20px;background:#fff}
.dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--wa),var(--wa-dark));margin-top:6px}
.list-item strong,.list-item span{text-align:left}
.list-item span{color:var(--muted)}
.contact-wrap{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:22px}
.contact-form{display:grid;gap:16px}
.input,.textarea{width:100%;min-height:54px;border:none;outline:none;background:#fbfefc;border:1px solid var(--line);color:var(--text);border-radius:16px;padding:14px 16px;font:inherit}
.textarea{min-height:150px;resize:vertical}
.help{color:var(--muted);font-size:.88rem}
.final-cta{text-align:center;padding:34px}
.final-cta h2{margin:0 0 12px;font-size:clamp(2rem,3vw,3.3rem);letter-spacing:-.04em}
.final-cta p{margin:0 auto;max-width:760px;color:var(--muted)}
footer{padding:30px 0 36px;color:var(--muted)}
.footer-box{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.footer-brand{display:flex;align-items:center}
.logo-footer{width:170px;height:64px}
.logo-footer img{width:100%;height:100%;object-fit:contain;background:transparent}
.footer-links{display:flex;gap:16px;flex-wrap:wrap}
.footer-links a:hover{color:var(--wa-dark)}
.footer-copy{width:100%;text-align:center;font-size:.92rem;padding-top:6px}
.whats-float{position:fixed;right:18px;bottom:18px;z-index:150;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--wa),var(--wa-dark));color:#fff;box-shadow:0 18px 40px rgba(37,211,102,.24)}
.cookie-backdrop{position:fixed;inset:0;z-index:9998;background:rgba(9,30,26,.48);backdrop-filter:blur(6px);display:none!important}
.cookie-backdrop.active{display:block!important}
.cookie-banner{position:fixed!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:min(760px,calc(100% - 32px))!important;z-index:9999!important;padding:24px!important;display:none!important;box-shadow:var(--shadow-lg)!important}
.cookie-banner.active{display:block!important}
.cookie-inner{display:grid;grid-template-columns:1fr;gap:18px}
.cookie-title{margin:0 0 10px 0;font-size:1.35rem;font-weight:900;color:var(--text)}
.cookie-text{margin:0;color:var(--muted);font-size:1rem;line-height:1.55}
.cookie-actions{display:flex;gap:12px;flex-wrap:wrap}
.cookie-note{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
@media (max-width:980px){.hero-grid,.grid-4,.grid-3,.grid-2,.gallery-grid,.contact-wrap{grid-template-columns:1fr}}
@media (max-width:760px){.menu{display:none}.logo{width:145px;height:60px}.hero-actions{display:grid;grid-template-columns:1fr}.btn{width:100%}.cookie-actions{display:grid;grid-template-columns:1fr}}
