:root{
  --bg:#f6f3ec;
  --bg-soft:#fbfaf7;
  --card:#ffffff;
  --line:#e5ddd0;
  --line-strong:#d7ccb9;
  --text:#1f2e2d;
  --muted:#667270;
  --brand:#0f6662;
  --brand-2:#1b8b86;
  --brand-soft:#dcefeb;
  --accent:#a56b2d;
  --accent-soft:#f5e8d7;
  --danger:#b42318;
  --success:#0f766e;
  --shadow:0 18px 40px rgba(28, 39, 38, .10);
  --radius:24px;
  --radius-sm:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#f7f4ee 0%,#f2efe7 100%);color:var(--text);line-height:1.45}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.wrap{width:min(1240px,calc(100% - 32px));margin:0 auto}
.topbar{background:#143331;color:#fff;font-size:14px}
.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding:10px 0;align-items:center;flex-wrap:wrap}
.topbar .mini{opacity:.84}
.header{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.88);backdrop-filter:blur(10px);border-bottom:1px solid rgba(229,221,208,.7)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:16px}
.brand{display:flex;align-items:center;gap:14px}
.brand-badge{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand-2));display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px;box-shadow:0 10px 25px rgba(15,102,98,.26)}
.brand h1{font-size:19px;margin:0 0 4px}
.brand p{margin:0;color:var(--muted);font-size:13px}
.header-cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pill{padding:10px 14px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);font-size:14px;color:var(--muted)}
.btn,.submit-btn,.ghost-btn{appearance:none;border:none;border-radius:16px;padding:14px 18px;font-weight:700;cursor:pointer;transition:.2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn,.submit-btn{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;box-shadow:0 14px 30px rgba(15,102,98,.28)}
.btn:hover,.submit-btn:hover{transform:translateY(-1px);box-shadow:0 18px 35px rgba(15,102,98,.32)}
.ghost-btn{background:#fff;border:1px solid var(--line);color:var(--text)}
.hero{padding:34px 0 24px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:stretch}
.hero-copy{background:linear-gradient(180deg,#ffffff 0%,#fbf9f5 100%);border:1px solid var(--line);border-radius:32px;padding:36px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.hero-copy:after{content:"";position:absolute;right:-100px;top:-120px;width:280px;height:280px;background:radial-gradient(circle,var(--brand-soft),transparent 60%)}
.kicker{display:inline-flex;align-items:center;gap:10px;background:#eef7f5;color:var(--brand);padding:10px 14px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.hero h2{font-size:clamp(34px,4vw,56px);line-height:1.04;margin:18px 0 14px;max-width:11ch}
.hero p{font-size:18px;color:var(--muted);max-width:60ch;margin:0}
.hero-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0 0;padding:0;list-style:none}
.hero-list li{background:#fff;border:1px solid var(--line);padding:14px 16px;border-radius:18px;font-weight:600;color:#344140}
.hero-media{border-radius:32px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;display:flex;flex-direction:column}
.hero-media img{height:100%;min-height:420px;object-fit:cover}
.cards-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:16px}
.idea-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}
.idea-card img{height:230px;object-fit:cover;background:#f3f0ea}
.idea-card .copy{padding:18px 18px 20px}
.idea-card h3{margin:0 0 8px;font-size:20px}
.idea-card p{margin:0;color:var(--muted)}
.main{padding:28px 0 56px}
.flash,.errors{border-radius:20px;padding:16px 18px;margin-bottom:20px}
.flash{background:#ecfdf8;border:1px solid #bde6db;color:#115e59}
.errors{background:#fff5f5;border:1px solid #fecaca;color:#991b1b}
.errors ul{margin:0;padding-left:18px}
.mode-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.mode-selector{display:flex;gap:12px;flex-wrap:wrap}
.mode-option{flex:1 1 280px;display:flex;cursor:pointer}
.mode-option input{display:none}
.mode-option span{display:block;background:#fff;border:1px solid var(--line);border-radius:22px;padding:18px 18px 16px;box-shadow:var(--shadow);transition:.2s ease;width:100%}
.mode-option b{display:block;font-size:16px;margin-bottom:5px}
.mode-option span span{all:unset;display:block;color:var(--muted);font-size:14px;line-height:1.4}
.mode-option input:checked + span{border-color:rgba(15,102,98,.55);box-shadow:0 16px 36px rgba(15,102,98,.16);background:linear-gradient(180deg,#fff 0%,#f5fbfa 100%)}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.left-column{display:grid;gap:18px}
.panel{background:linear-gradient(180deg,#ffffff 0%,#fcfbf8 100%);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:22px}
.section-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px}
.section-badge{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--brand-soft),#fff);display:grid;place-items:center;font-size:18px}
.section-head h3{margin:0 0 4px;font-size:22px}
.section-head p{margin:0;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.full{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;color:#334140}
input,select,textarea{width:100%;background:#fff;border:1px solid var(--line-strong);border-radius:16px;padding:14px 14px;font:inherit;color:var(--text);transition:border-color .2s,box-shadow .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(15,102,98,.55);box-shadow:0 0 0 4px rgba(15,102,98,.10)}
input::placeholder,textarea::placeholder{color:#8a9592}
textarea{min-height:120px;resize:vertical}
.help{color:var(--muted);font-weight:500;font-size:12px}
.file-drop{border:1.5px dashed #b8cfc9;background:#f8fcfb;border-radius:20px;padding:18px}
.file-drop input[type=file]{border:none;padding:0;background:transparent}
.file-drop strong{display:block;margin-bottom:6px}
.checklist{display:grid;gap:12px}
.checkline{display:flex;flex-direction:row;align-items:flex-start;gap:12px;background:#fff;border:1px solid var(--line);padding:14px 14px;border-radius:18px;font-weight:600}
.checkline input{width:18px;height:18px;margin-top:2px}
.small-note{padding:14px 16px;border-radius:18px;background:#f9f6ef;border:1px solid #eadfcf;color:#6f5a41;margin-bottom:16px}
.sidebar{position:sticky;top:92px;display:grid;gap:18px}
.summary-card,.gallery-card,.trust-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}
.summary-card .inner,.trust-card .inner{padding:22px}
.summary-card .tag{display:inline-flex;background:#edf7f6;color:var(--brand);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.summary-card h3{margin:12px 0 4px;font-size:20px}
.price{font-size:42px;font-weight:900;line-height:1;color:var(--brand);margin:12px 0 8px}
.per-thousand{font-size:15px;color:var(--muted);margin-bottom:12px}
.summary-card p,.trust-card p{margin:0;color:var(--muted)}
.summary-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}
.summary-list li{display:flex;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px dashed var(--line)}
.summary-list li span:last-child{font-weight:700;color:#364847;text-align:right}
.gallery-card img{height:220px;object-fit:cover;width:100%}
.gallery-card .inner{padding:18px}
.gallery-card h4{margin:0 0 6px;font-size:18px}
.gallery-card p{margin:0;color:var(--muted)}
.trust-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.trust-list li{display:flex;gap:10px;align-items:flex-start;color:#374846}
.dot{width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,var(--brand),var(--brand-2));margin-top:7px;flex:0 0 auto}
.actions-bar{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.footer{padding:24px 0 60px;color:var(--muted)}
.footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:14px;border-top:1px solid var(--line);padding-top:24px}
.hidden{display:none !important}
.anchor-target{scroll-margin-top:120px}
@media (max-width:1120px){
  .hero-grid,.layout{grid-template-columns:1fr}
  .sidebar{position:static}
}
@media (max-width:820px){
  .cards-strip,.hero-list,.grid,.grid-3{grid-template-columns:1fr}
  .hero-copy{padding:24px}
  .panel{padding:18px}
  .header .wrap{padding:12px 0}
  .price{font-size:36px}
}
