:root{
  --ink:#162015;
  --muted:#647064;
  --line:#e6e2d8;
  --paper:#fffdf7;
  --soft:#f5efe2;
  --gold:#c89439;
  --terra:#9d3f25;
  --dark:#1f2d20;
  --green:#344e35;
  --shadow:0 24px 70px rgba(31,45,32,.14);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}
a{color:inherit;text-decoration:none}.shell{width:min(1440px,calc(100% - 48px));margin:0 auto}.full-bleed{width:100%}.topbar{position:sticky;top:0;z-index:30;background:rgba(255,253,247,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(230,226,216,.85)}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand-mark{display:flex;align-items:center;gap:12px}.brand-icon{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--terra),var(--gold));display:grid;place-items:center;color:white;font-weight:800;box-shadow:0 12px 35px rgba(157,63,37,.25)}.brand-mark strong{display:block;font-size:16px}.brand-mark small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.desktop-nav{display:flex;gap:28px;color:#465047;font-weight:600}.desktop-nav a{transition:.2s}.desktop-nav a:hover{color:var(--terra)}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:13px 20px;font-weight:800;cursor:pointer;transition:.2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--terra),#c96532);color:white;box-shadow:0 14px 35px rgba(157,63,37,.25)}.btn-dark{background:var(--dark);color:white}.btn-soft{background:#fff;color:var(--green);border:1px solid var(--line);box-shadow:0 10px 30px rgba(31,45,32,.08)}
.hero{position:relative;overflow:hidden;min-height:700px;background:#172216;color:white}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(200,148,57,.42),transparent 32%),linear-gradient(120deg,rgba(23,34,22,.95),rgba(52,78,53,.84)),url('https://images.unsplash.com/photo-1595814433015-e6f5ce69614e?auto=format&fit=crop&w=1800&q=80');background-size:cover;background-position:center}.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .72fr;align-items:center;gap:56px;min-height:700px;padding:72px 0}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:900;color:var(--gold);margin:0 0 14px}.hero h1{font-size:clamp(42px,5.4vw,82px);line-height:.95;margin:0;letter-spacing:-.06em;max-width:920px}.lead{font-size:20px;line-height:1.7;color:rgba(255,255,255,.78);max-width:760px;margin:26px 0 0}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:46px;max-width:850px}.trust-row div{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:18px}.trust-row strong{display:block;color:white}.trust-row span{display:block;color:rgba(255,255,255,.68);font-size:13px;margin-top:5px}.hero-card{align-self:end;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.20);border-radius:34px;padding:18px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.roof-card-main{min-height:360px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(245,239,226,.92));color:var(--ink);padding:34px;display:flex;flex-direction:column;justify-content:end}.badge{align-self:flex-start;background:#efe0c3;border:1px solid #dac18c;color:#7b4a1d;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;margin-bottom:auto}.roof-card-main h3{font-size:30px;line-height:1.08;letter-spacing:-.04em;margin:0 0 12px}.roof-card-main p{color:var(--muted);line-height:1.6}.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.mini-stats div{background:rgba(0,0,0,.22);border-radius:18px;padding:16px;text-align:center}.mini-stats strong{display:block;font-size:26px}.mini-stats span{font-size:12px;color:rgba(255,255,255,.68)}
.section{padding:96px 0}.section-white{background:white}.section-head{max-width:860px}.section h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.055em;margin:0}.section-head p:not(.eyebrow),.muted{color:var(--muted);line-height:1.75}.brand-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:38px}.brand-chip{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:22px;min-height:118px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 12px 32px rgba(31,45,32,.06)}.brand-chip strong{font-size:20px}.brand-chip span{color:var(--muted);font-size:13px}.catalog-section{background:linear-gradient(180deg,#f8f2e7,#fffdf7)}.catalog-head{display:flex;justify-content:space-between;gap:28px;align-items:end}.catalog-tools{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.catalog-tools input,.catalog-tools select,.admin-form input,.admin-form select,.admin-form textarea{height:48px;border:1px solid var(--line);background:white;border-radius:16px;padding:0 14px;font:inherit;color:var(--ink);outline:none}.catalog-tools input{min-width:280px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}.product-card{background:white;border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 16px 50px rgba(31,45,32,.08);display:flex;flex-direction:column}.product-img{height:220px;background:linear-gradient(135deg,#d7c5a1,#8f563f);position:relative;overflow:hidden}.product-img img{width:100%;height:100%;object-fit:cover;display:block}.product-img:after{content:"";position:absolute;inset:auto 0 0;height:50%;background:linear-gradient(transparent,rgba(0,0,0,.35))}.product-body{padding:22px;display:flex;flex-direction:column;gap:12px;flex:1}.product-meta{display:flex;gap:8px;flex-wrap:wrap}.pill{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;background:#f1e5cf;color:#7d4b20;border-radius:999px;padding:7px 10px}.product-card h3{font-size:22px;line-height:1.15;margin:0;letter-spacing:-.035em}.product-card p{color:var(--muted);line-height:1.6;margin:0}.spec-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}.spec-row div{background:#faf6ed;border:1px solid #efe5d4;border-radius:16px;padding:10px}.spec-row small{display:block;color:var(--muted);font-size:11px}.spec-row strong{display:block;font-size:13px;margin-top:3px}.product-actions{display:flex;gap:8px;margin-top:8px}.product-actions .btn{width:100%;padding:11px 12px;font-size:13px}.split-section{background:#1e2d20;color:white}.split-grid{display:grid;grid-template-columns:.8fr 1.1fr;gap:60px;align-items:start}.split-section .muted{color:rgba(255,255,255,.68)}.guide-list{display:grid;gap:14px}.guide-list article{display:grid;grid-template-columns:68px 1fr;gap:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:24px}.guide-list span{width:48px;height:48px;border-radius:16px;background:rgba(200,148,57,.24);display:grid;place-items:center;color:#f0ca7b;font-weight:900}.guide-list h3{margin:0 0 8px;font-size:22px}.guide-list p{margin:0;color:rgba(255,255,255,.68);line-height:1.6}.contact-section{background:white}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.map-card{border:1px solid var(--line);border-radius:32px;overflow:hidden;min-height:420px;box-shadow:var(--shadow);background:#eee}.map-card iframe{width:100%;height:420px;border:0}.footer{background:#142015;color:white;padding:38px 0}.footer-grid{display:flex;justify-content:space-between;gap:24px}.footer p{color:rgba(255,255,255,.65)}.footer a{display:inline-block;margin-left:18px;color:rgba(255,255,255,.8)}.floating-wa{position:fixed;right:22px;bottom:22px;z-index:20}.floating-wa a{display:block;background:#25d366;color:white;border-radius:999px;padding:15px 20px;font-weight:900;box-shadow:0 18px 40px rgba(37,211,102,.34)}.modal{position:fixed;inset:0;background:rgba(20,32,21,.68);z-index:60;display:none;align-items:center;justify-content:center;padding:24px}.modal.open{display:flex}.modal-panel{background:white;border-radius:32px;max-width:920px;width:100%;max-height:88vh;overflow:auto;position:relative;box-shadow:0 40px 120px rgba(0,0,0,.28)}.modal-close{position:absolute;right:18px;top:18px;width:42px;height:42px;border:0;border-radius:50%;background:#f4efe5;font-size:26px;cursor:pointer}.modal-product{display:grid;grid-template-columns:1fr 1.1fr}.modal-product .product-img{height:auto;min-height:460px}.modal-info{padding:42px}.modal-info h2{font-size:42px;line-height:1;margin:0 0 14px;letter-spacing:-.05em}.modal-info p{line-height:1.7;color:var(--muted)}.modal-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}
.admin-body{display:grid;grid-template-columns:280px 1fr;min-height:100vh;background:#f6f1e8}.admin-sidebar{position:sticky;top:0;height:100vh;background:#172216;color:white;padding:24px;display:flex;flex-direction:column;gap:34px}.admin-brand .brand-icon{box-shadow:none}.admin-sidebar small{color:rgba(255,255,255,.62)}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav a{padding:14px 16px;border-radius:16px;color:rgba(255,255,255,.72);font-weight:700}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{background:rgba(255,255,255,.10);color:white}.admin-main{padding:32px;display:grid;gap:28px}.admin-hero,.admin-card{background:white;border:1px solid var(--line);border-radius:32px;padding:32px;box-shadow:0 16px 50px rgba(31,45,32,.07)}.admin-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}.admin-hero h1{font-size:42px;line-height:1.02;letter-spacing:-.05em;margin:0 0 12px}.admin-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.admin-stat-grid div{background:#f7f1e6;border:1px solid #efe2cc;border-radius:22px;padding:20px}.admin-stat-grid strong{display:block;font-size:34px}.admin-stat-grid span{color:var(--muted);font-size:13px}.admin-card-head{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px}.admin-card h2{margin:0;font-size:28px;letter-spacing:-.04em}.admin-card p{margin:6px 0 0;color:var(--muted)}.admin-form{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.admin-form label{display:grid;gap:8px;font-size:13px;font-weight:800;color:#435044}.admin-form textarea{height:auto;padding:14px;resize:vertical}.switch-line{display:flex!important;grid-auto-flow:column;align-items:center;justify-content:start}.switch-line input{height:auto}.admin-table-wrap{overflow:auto;margin-top:24px;border:1px solid var(--line);border-radius:22px}.admin-table{width:100%;border-collapse:collapse;background:white}.admin-table th,.admin-table td{padding:15px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#fbf7ee}.admin-table tr:last-child td{border-bottom:0}.table-actions{display:flex;gap:8px}.small-btn{border:1px solid var(--line);background:white;border-radius:12px;padding:8px 10px;font-weight:800;cursor:pointer}.small-btn.danger{color:#a73a27}
@media(max-width:1100px){.hero-grid,.split-grid,.contact-grid,.admin-hero{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(2,1fr)}.brand-strip{grid-template-columns:repeat(3,1fr)}.hero-card{align-self:auto}.admin-body{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}.admin-sidebar nav{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.shell{width:min(100% - 28px,1440px)}.nav-wrap{height:auto;padding:16px 0;align-items:flex-start}.desktop-nav{display:none}.hero{min-height:auto}.hero-grid{padding:58px 0;min-height:auto}.trust-row,.mini-stats,.form-grid,.admin-stat-grid,.modal-product{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr}.brand-strip{grid-template-columns:1fr}.catalog-head{display:grid}.catalog-tools{justify-content:stretch}.catalog-tools input,.catalog-tools select{width:100%;min-width:0}.product-img{height:245px}.footer-grid{display:grid}.footer a{margin:0 14px 0 0}.admin-main{padding:16px}.admin-sidebar nav{grid-template-columns:1fr}.hero h1{font-size:44px}.lead{font-size:17px}.section{padding:64px 0}.modal-info{padding:28px}.modal-product .product-img{min-height:280px}.topbar .btn-dark{display:none}}


.calculator-section{background:linear-gradient(135deg,#fffdf7 0%,#f4ead8 48%,#ead6b5 100%)}
.calculator-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}
.calculator-copy h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.055em;margin:0 0 18px}
.calc-note{margin-top:22px;background:white;border:1px solid var(--line);border-radius:22px;padding:18px;color:var(--muted);line-height:1.65;box-shadow:0 14px 40px rgba(31,45,32,.06)}
.calc-note strong{color:var(--ink)}
.calculator-card{background:#172216;color:white;border-radius:34px;padding:28px;box-shadow:0 26px 80px rgba(31,45,32,.22);display:grid;gap:16px}
.calculator-card label{display:grid;gap:8px;font-size:13px;font-weight:900;color:rgba(255,255,255,.82)}
.calculator-card input,.calculator-card select{height:52px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.96);border-radius:16px;padding:0 14px;font:inherit;color:var(--ink);outline:none;width:100%}
.calc-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc-result{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:4px}
.calc-result span,.calc-result div{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:16px;color:rgba(255,255,255,.74)}
.calc-result span{grid-column:1/-1}
.calc-result small{display:block;color:rgba(255,255,255,.58);font-size:11px;margin-bottom:5px}
.calc-result strong{display:block;color:white;font-size:20px;line-height:1.18}
.calc-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.calc-actions .btn{flex:1;text-align:center;justify-content:center}
@media(max-width:1100px){.calculator-grid{grid-template-columns:1fr}}
@media(max-width:760px){.calc-form-grid,.calc-result{grid-template-columns:1fr}.calculator-card{padding:20px;border-radius:26px}}


.admin-body:not(.admin-authenticated) .admin-sidebar,
.admin-body:not(.admin-authenticated) .admin-main{display:none}
.admin-body.admin-authenticated .admin-login-screen{display:none}
.admin-main [data-admin-page][hidden]{display:none!important}
.admin-sidebar nav a.active{background:rgba(255,255,255,.14);color:white}
.admin-login-screen{min-height:100vh;width:100vw;display:grid;place-items:center;padding:32px;background:
  radial-gradient(circle at 20% 12%,rgba(200,148,57,.24),transparent 30%),
  radial-gradient(circle at 82% 18%,rgba(157,63,37,.22),transparent 28%),
  linear-gradient(135deg,#fffdf7 0%,#f4ead8 52%,#ead6b5 100%)}
.admin-login-card{width:min(100%,520px);background:white;border:1px solid var(--line);border-radius:34px;padding:34px;box-shadow:0 28px 90px rgba(31,45,32,.18);display:grid;gap:24px}
.login-brand{justify-content:flex-start}
.admin-login-card h1{font-size:clamp(32px,4vw,48px);line-height:1.02;letter-spacing:-.055em;margin:0 0 12px}
.admin-login-form{display:grid;gap:14px}
.admin-login-form label{display:grid;gap:8px;font-size:13px;font-weight:900;color:#435044}
.admin-login-form input{height:54px;border:1px solid var(--line);border-radius:16px;padding:0 14px;font:inherit;outline:none;background:#fffdf7}
.admin-login-form input:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(200,148,57,.14)}
.login-error{margin:0;color:#a73a27;background:#fff1ed;border:1px solid #ffd2c6;border-radius:14px;padding:12px;font-weight:800}
.login-demo-note{background:#f7f1e6;border:1px solid #efe2cc;border-radius:18px;padding:14px;color:var(--muted);font-size:13px}
.login-demo-note strong{color:var(--ink)}
.admin-logout{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:white;border-radius:16px;padding:14px 16px;font:inherit;font-weight:800;text-align:left;cursor:pointer}
.admin-logout:hover{background:rgba(255,255,255,.14)}
@media(max-width:760px){.admin-login-screen{padding:18px}.admin-login-card{padding:24px;border-radius:26px}}


.contact-grid-detailed{grid-template-columns:.9fr 1.1fr;align-items:center}
.contact-copy h2{max-width:720px}
.contact-lead{max-width:720px;margin-top:22px}
.contact-info-list{display:grid;gap:12px;margin-top:28px;max-width:760px}
.contact-info-list article{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;background:#fffdf7;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 12px 34px rgba(31,45,32,.06)}
.contact-info-list article span{width:42px;height:42px;border-radius:14px;background:#f1e5cf;color:#7d4b20;display:grid;place-items:center;font-weight:900;font-size:14px}
.contact-info-list h3{margin:0 0 6px;font-size:18px;letter-spacing:-.025em}
.contact-info-list p{margin:0;color:var(--muted);line-height:1.6}
.contact-map-card{min-height:500px}
.contact-map-card iframe{height:500px}
@media(max-width:1100px){.contact-grid-detailed{grid-template-columns:1fr}.contact-map-card,.contact-map-card iframe{min-height:380px;height:380px}}
@media(max-width:760px){.contact-info-list article{grid-template-columns:1fr}.contact-info-list article span{width:40px;height:40px}.contact-map-card,.contact-map-card iframe{min-height:320px;height:320px}}


.map-fallback-card{height:500px;display:grid;align-content:center;justify-items:start;gap:14px;padding:42px;background:
  radial-gradient(circle at 84% 16%,rgba(200,148,57,.18),transparent 32%),
  linear-gradient(135deg,#17331f,#101d13);color:white}
.map-fallback-card[hidden]{display:none}
.map-fallback-card h3{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.045em;margin:0;max-width:520px}
.map-fallback-card p{color:rgba(255,255,255,.74);line-height:1.65;max-width:560px;margin:0}
.map-fallback-card .btn{margin-top:8px}
@media(max-width:1100px){.map-fallback-card{height:380px}}
@media(max-width:760px){.map-fallback-card{height:320px;padding:26px}}

/* Force public contact map to show iframe when address exists */
.contact-map-card iframe:not([hidden]){display:block;width:100%;height:500px;border:0}
.map-fallback-card[hidden]{display:none!important}


/* Batch 1 - Public website lebih menjual */
.catalog-tools{max-width:760px}
.catalog-tools select{min-width:165px}
.catalog-benefit-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:-16px;margin-bottom:28px}
.catalog-benefit-row div{background:#fffdf7;border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:0 12px 34px rgba(31,45,32,.05)}
.catalog-benefit-row strong{display:block;font-size:16px;margin-bottom:5px;color:var(--ink)}
.catalog-benefit-row span{display:block;color:var(--muted);line-height:1.55;font-size:14px}
.product-card-rich{position:relative}
.product-badge{position:absolute;top:14px;left:14px;background:rgba(20,32,21,.88);color:white;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;z-index:2;box-shadow:0 12px 28px rgba(0,0,0,.16)}
.mini-use-case{background:#fbf6eb;border:1px solid #efe2cc;border-radius:16px;padding:12px;color:#5d684f;line-height:1.55;font-size:13px;margin:12px 0}
.color-tags{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}
.color-tags span{background:#f4ead8;border:1px solid #ead9bd;color:#6c4a20;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}
.modal-product-rich .modal-info{display:grid;gap:16px}
.modal-product-rich .modal-info p{margin:0}
.rich-highlight{background:linear-gradient(135deg,#fff8e8,#f4ead8);border:1px solid #ead9bd;border-radius:22px;padding:18px}
.rich-highlight small{display:block;color:#8a6b36;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:11px}
.rich-highlight strong{display:block;color:var(--ink);line-height:1.55}
.modal-specs-rich{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0}
.modal-specs-rich div{background:#faf6ed;border:1px solid #efe5d4;border-radius:16px;padding:13px}
.modal-specs-rich small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.modal-specs-rich strong{display:block;color:var(--ink);line-height:1.35}
.consult-box{background:#172216;color:white;border-radius:22px;padding:20px}
.consult-box h3{margin:0 0 10px;font-size:18px}
.consult-box ul{margin:0;padding-left:18px;color:rgba(255,255,255,.78);line-height:1.7}
.related-products{border:1px solid #ead9bd;background:#fffaf0;border-radius:20px;padding:16px;display:grid;gap:14px}
.related-products-head small{display:block;color:#8a6b36;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:11px}
.related-products-head strong{display:block;color:var(--ink);font-size:17px}
.related-products-grid{display:grid;gap:10px}
.related-product-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;align-items:center;background:white;border:1px solid #efe5d4;border-radius:16px;padding:10px}
.related-product-card img{width:82px;height:72px;object-fit:cover;border-radius:12px;background:#f4ead8}
.related-product-card div{min-width:0;display:grid;gap:5px}
.related-product-card span{color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.related-product-card strong{color:var(--ink);font-size:14px;line-height:1.3}
.related-product-card button{justify-self:start;border:0;background:#172216;color:white;border-radius:999px;padding:7px 11px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
@media(max-width:1100px){.catalog-benefit-row{grid-template-columns:1fr}.catalog-tools{max-width:none}}
@media(max-width:760px){.catalog-tools{display:grid;grid-template-columns:1fr;width:100%}.catalog-tools input,.catalog-tools select{width:100%;min-width:0}.modal-specs-rich{grid-template-columns:1fr}.related-product-card{grid-template-columns:70px minmax(0,1fr)}.related-product-card img{width:70px;height:64px}}

/* Catalog polish - clean professional layout */
#catalog{
  background:
    radial-gradient(circle at 12% 8%, rgba(200,148,57,.13), transparent 30%),
    linear-gradient(180deg,#f8f1e6 0%,#f4ead8 100%);
  position:relative;
  overflow:hidden;
}

#catalog .section-head{
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(520px, .85fr);
  gap:42px;
  align-items:end;
  margin-bottom:34px;
}

#catalog .section-head h2{
  max-width:760px;
  font-size:clamp(46px,5.2vw,82px);
  line-height:.98;
  letter-spacing:-.065em;
  margin-bottom:0;
}

#catalog .catalog-tools{
  width:100%;
  max-width:none;
  display:grid;
  grid-template-columns:1.15fr .75fr .85fr;
  gap:12px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(31,45,32,.10);
  border-radius:28px;
  padding:14px;
  box-shadow:0 20px 60px rgba(31,45,32,.08);
  backdrop-filter:blur(14px);
}

#catalog .catalog-tools input,
#catalog .catalog-tools select{
  width:100%;
  min-width:0;
  height:54px;
  border-radius:16px;
  background:#fffdf8;
  border:1px solid #e4d8c5;
  font-size:15px;
}

#catalog .catalog-tools input{
  grid-column:span 1;
}

#catalog .catalog-tools select:nth-of-type(3),
#catalog .catalog-tools select:nth-of-type(4),
#catalog .catalog-tools select:nth-of-type(5){
  grid-column:span 1;
}

.catalog-benefit-row{
  margin-top:0!important;
  margin-bottom:38px!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.catalog-benefit-row div{
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:22px 22px 20px;
  border-radius:26px;
  background:rgba(255,253,248,.86);
  border:1px solid rgba(31,45,32,.10);
  box-shadow:0 18px 54px rgba(31,45,32,.07);
}

.catalog-benefit-row div::after{
  content:"";
  position:absolute;
  width:90px;
  height:90px;
  right:-35px;
  top:-35px;
  border-radius:999px;
  background:rgba(200,148,57,.14);
}

.catalog-benefit-row strong{
  font-size:18px;
  letter-spacing:-.02em;
  margin-bottom:8px;
}

.catalog-benefit-row span{
  font-size:14px;
  line-height:1.6;
}

.product-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}

.product-card{
  border-radius:30px;
  overflow:hidden;
  background:#fffdf8;
  border:1px solid rgba(31,45,32,.10);
  box-shadow:0 18px 54px rgba(31,45,32,.08);
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.product-card:hover{
  transform:translateY(-5px);
  border-color:rgba(200,148,57,.45);
  box-shadow:0 26px 72px rgba(31,45,32,.13);
}

.product-card .product-img{
  height:250px;
  background:
    linear-gradient(135deg,#9d3f25,#213a22);
  position:relative;
}

.product-card .product-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.product-card .product-body{
  padding:22px;
}

.product-card h3{
  min-height:54px;
  font-size:21px;
  line-height:1.18;
  letter-spacing:-.035em;
  margin:12px 0 10px;
}

.product-card p{
  min-height:64px;
  font-size:14px;
  line-height:1.55;
  color:var(--muted);
}

.product-meta{
  gap:8px;
  flex-wrap:wrap;
}

.product-meta .pill{
  background:#f2e5cc;
  color:#61431d;
  border-color:#ead8b7;
}

.product-badge{
  top:16px;
  left:16px;
  background:rgba(18,35,20,.92);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 12px 28px rgba(0,0,0,.18);
}

.mini-use-case{
  min-height:78px;
  border-radius:18px;
  background:#f8f0e2;
  border:1px solid #eadcc5;
}

.spec-row{
  gap:10px;
}

.spec-row > div{
  border-radius:18px;
  background:#fbf6ed;
  border:1px solid #eee1cd;
}

.product-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:16px;
}

.product-actions .btn{
  min-height:46px;
  justify-content:center;
  padding:12px 14px;
}

.empty-state{
  grid-column:1/-1;
  background:#fffdf8;
  border:1px solid #eadcc5;
  border-radius:28px;
  padding:34px;
  text-align:center;
  color:var(--muted);
  box-shadow:0 18px 54px rgba(31,45,32,.07);
}

@media(max-width:1280px){
  #catalog .section-head{
    grid-template-columns:1fr;
    align-items:start;
  }

  #catalog .catalog-tools{
    grid-template-columns:repeat(3,1fr);
  }

  .product-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:980px){
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .catalog-benefit-row{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  #catalog .section-head{
    gap:24px;
  }

  #catalog .section-head h2{
    font-size:clamp(42px,13vw,64px);
  }

  #catalog .catalog-tools{
    grid-template-columns:1fr;
    border-radius:24px;
    padding:12px;
  }

  .product-grid{
    grid-template-columns:1fr;
  }

  .product-card .product-img{
    height:230px;
  }

  .product-card h3,
  .product-card p,
  .mini-use-case{
    min-height:auto;
  }
}

/* Catalog carousel compact polish */
.catalog-strip-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:14px;
}

.catalog-strip-head div{
  display:flex;
  align-items:baseline;
  gap:12px;
  color:var(--ink);
}

.catalog-strip-head strong{
  font-size:20px;
  letter-spacing:-.03em;
}

.catalog-strip-head span{
  color:var(--muted);
  font-size:14px;
}

#catalog .product-grid{
  display:flex!important;
  grid-template-columns:none!important;
  gap:18px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-left:max(24px, calc((100vw - 1440px) / 2 + 24px));
  padding-top:6px;
  padding-bottom:28px;
  padding-right:max(24px, calc((100vw - 1440px) / 2 + 24px));
  scrollbar-width:thin;
}

#catalog .product-grid::-webkit-scrollbar{
  height:10px;
}

#catalog .product-grid::-webkit-scrollbar-track{
  background:rgba(31,45,32,.08);
  border-radius:999px;
}

#catalog .product-grid::-webkit-scrollbar-thumb{
  background:rgba(157,63,37,.45);
  border-radius:999px;
}

#catalog .product-card{
  flex:0 0 292px;
  max-width:292px;
  scroll-snap-align:start;
  border-radius:24px;
}

#catalog .product-card .product-img{
  height:165px;
}

#catalog .product-card .product-body{
  padding:15px;
}

#catalog .product-card h3{
  min-height:44px;
  font-size:17px;
  line-height:1.22;
  margin:9px 0 8px;
}

#catalog .product-card p{
  min-height:44px;
  max-height:44px;
  font-size:12.5px;
  line-height:1.45;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

#catalog .mini-use-case{
  min-height:48px;
  max-height:48px;
  padding:9px 10px;
  font-size:11.5px;
  line-height:1.35;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

#catalog .product-meta .pill{
  font-size:9.5px;
  padding:5px 7px;
}

#catalog .color-tags{
  gap:5px;
  margin:8px 0;
  min-height:24px;
  max-height:24px;
  overflow:hidden;
}

#catalog .color-tags span{
  font-size:9.5px;
  padding:4px 7px;
}

#catalog .spec-row{
  grid-template-columns:1fr 1fr;
  gap:7px;
}

#catalog .spec-row > div{
  padding:8px;
  border-radius:12px;
}

#catalog .spec-row small{
  font-size:9px;
}

#catalog .spec-row strong{
  font-size:10.5px;
  line-height:1.25;
}

#catalog .product-actions{
  gap:8px;
  margin-top:11px;
}

#catalog .product-actions .btn{
  min-height:38px;
  padding:9px 10px;
  font-size:11.5px;
  border-radius:999px;
}

#catalog .product-badge{
  top:10px;
  left:10px;
  padding:6px 9px;
  font-size:9.5px;
}

@media(max-width:760px){
  .catalog-strip-head div{
    display:grid;
    gap:4px;
  }

  #catalog .product-grid{
    padding-left:20px;
    padding-right:20px;
    margin-left:-20px;
    margin-right:-20px;
  }

  #catalog .product-card{
    flex-basis:270px;
    max-width:270px;
  }
}

/* Catalog header clean layout override */
#catalog{
  padding-top:96px;
}

#catalog .section-head{
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) minmax(460px, 620px)!important;
  gap:56px!important;
  align-items:center!important;
  margin-bottom:30px!important;
}

#catalog .section-head > div:first-child{
  max-width:760px;
}

#catalog .section-head .eyebrow{
  margin-bottom:18px;
}

#catalog .section-head h2{
  max-width:760px!important;
  margin:0!important;
  font-size:clamp(48px, 5vw, 76px)!important;
  line-height:1!important;
  letter-spacing:-.065em!important;
}

#catalog .catalog-tools{
  align-self:center!important;
  width:100%!important;
  max-width:620px!important;
  justify-self:end!important;
  display:grid!important;
  grid-template-columns:1.2fr .9fr .9fr!important;
  gap:12px!important;
  padding:16px!important;
  border-radius:30px!important;
  background:rgba(255,253,248,.88)!important;
  border:1px solid rgba(95,67,31,.14)!important;
  box-shadow:0 24px 70px rgba(31,45,32,.10)!important;
  backdrop-filter:blur(14px);
}

#catalog .catalog-tools input,
#catalog .catalog-tools select{
  height:54px!important;
  border-radius:17px!important;
  background:#fffdf8!important;
  border:1px solid #e6d8bf!important;
  box-shadow:none!important;
}

#catalog .catalog-tools input:focus,
#catalog .catalog-tools select:focus{
  border-color:#c89439!important;
  box-shadow:0 0 0 4px rgba(200,148,57,.14)!important;
  outline:none!important;
}

#catalog .catalog-benefit-row{
  clear:both!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:18px!important;
  margin-bottom:40px!important;
}

#catalog .catalog-benefit-row div{
  min-height:104px!important;
  border-radius:26px!important;
  padding:22px 24px!important;
  background:rgba(255,253,248,.92)!important;
  border:1px solid rgba(95,67,31,.12)!important;
  box-shadow:0 18px 52px rgba(31,45,32,.07)!important;
}

#catalog .catalog-benefit-row strong{
  font-size:18px!important;
  line-height:1.2!important;
}

#catalog .catalog-benefit-row span{
  font-size:14px!important;
  line-height:1.55!important;
}

#catalog .catalog-strip-head{
  margin-top:2px!important;
  margin-bottom:20px!important;
  padding-top:0!important;
}

#catalog .catalog-strip-head div{
  display:flex!important;
  gap:12px!important;
  align-items:baseline!important;
}

#catalog .catalog-strip-head strong{
  font-size:22px!important;
}

#catalog .catalog-strip-head span{
  font-size:15px!important;
}

#catalog .product-grid{
  padding-top:8px!important;
}

@media(max-width:1280px){
  #catalog .section-head{
    grid-template-columns:1fr!important;
    gap:30px!important;
    align-items:start!important;
  }

  #catalog .catalog-tools{
    justify-self:stretch!important;
    max-width:none!important;
    grid-template-columns:repeat(3,1fr)!important;
  }

  #catalog .catalog-benefit-row{
    margin-top:8px!important;
  }
}

@media(max-width:900px){
  #catalog{
    padding-top:72px;
  }

  #catalog .catalog-benefit-row{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  #catalog .section-head{
    gap:24px!important;
  }

  #catalog .section-head h2{
    font-size:clamp(42px, 13vw, 62px)!important;
  }

  #catalog .catalog-tools{
    grid-template-columns:1fr!important;
    padding:12px!important;
    border-radius:24px!important;
  }

  #catalog .catalog-benefit-row div{
    min-height:auto!important;
  }

  #catalog .catalog-strip-head div{
    display:grid!important;
    gap:4px!important;
  }
}


/* Calculator Basic + Advanced tabs */
.calculator-tabs-section{
  background:
    radial-gradient(circle at 12% 12%,rgba(200,148,57,.16),transparent 32%),
    radial-gradient(circle at 88% 18%,rgba(157,63,37,.12),transparent 30%),
    linear-gradient(135deg,#fffdf7 0%,#f4ead8 50%,#ead6b5 100%);
}

.calculator-tabs-layout{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(520px,1.05fr);
  gap:54px;
  align-items:center;
}

.calculator-tabs-card{
  border-radius:36px;
  padding:30px;
}

.calc-tabs-header{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-start;
  margin-bottom:4px;
}

.calc-tabs-header h3{
  margin:4px 0 0;
  font-size:30px;
  line-height:1.05;
  letter-spacing:-.045em;
}

.calc-main-tabs,
.calc-advanced-method{
  display:grid;
  gap:10px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  padding:8px;
  border-radius:20px;
}

.calc-main-tabs{
  grid-template-columns:1fr 1fr;
}

.calc-advanced-method{
  grid-template-columns:1fr 1fr;
}

.calc-main-tabs button,
.calc-advanced-method button{
  border:0;
  border-radius:15px;
  min-height:44px;
  padding:10px 12px;
  font:inherit;
  font-size:13px;
  font-weight:900;
  color:rgba(255,255,255,.72);
  background:transparent;
  cursor:pointer;
}

.calc-main-tabs button.active,
.calc-advanced-method button.active{
  background:white;
  color:var(--ink);
  box-shadow:0 12px 34px rgba(0,0,0,.14);
}

.calc-tab-panel[hidden],
.calc-panel[hidden]{
  display:none!important;
}

.calc-panel-note{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;
  padding:15px;
  display:grid;
  gap:5px;
}

.calc-panel-note strong{
  color:white;
  font-size:16px;
}

.calc-panel-note span{
  color:rgba(255,255,255,.68);
  font-size:13px;
  line-height:1.5;
}

.calc-mode-explain{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:24px;
}

.calc-mode-explain article{
  background:rgba(255,253,248,.78);
  border:1px solid rgba(31,45,32,.10);
  border-radius:20px;
  padding:18px;
  box-shadow:0 14px 40px rgba(31,45,32,.06);
}

.calc-mode-explain strong{
  display:block;
  color:#a65a2b;
  margin-bottom:8px;
  font-size:18px;
}

.calc-mode-explain span{
  display:block;
  color:var(--muted);
  line-height:1.45;
  font-size:13px;
}

.calc-tabs-result{
  grid-template-columns:repeat(3,1fr);
}

.calc-tabs-result strong{
  font-size:18px;
}

@media(max-width:1180px){
  .calculator-tabs-layout{
    grid-template-columns:1fr;
  }
}

@media(max-width:760px){
  .calculator-tabs-card{
    padding:20px;
    border-radius:28px;
  }

  .calc-main-tabs,
  .calc-advanced-method,
  .calc-mode-explain,
  .calc-tabs-result{
    grid-template-columns:1fr;
  }

  .calc-tabs-header h3{
    font-size:24px;
  }
}

/* Quotation section final polish */
#quotation.quotation-section,
section#quotation{
  background:
    radial-gradient(circle at 12% 12%, rgba(200,148,57,.16), transparent 30%),
    radial-gradient(circle at 90% 10%, rgba(157,63,37,.16), transparent 32%),
    linear-gradient(135deg,#172216 0%,#223826 100%)!important;
  color:#fff!important;
  padding-top:96px!important;
  padding-bottom:96px!important;
  overflow:hidden!important;
}

#quotation .quotation-layout{
  display:grid!important;
  grid-template-columns:minmax(0,.92fr) minmax(520px,1fr)!important;
  gap:56px!important;
  align-items:center!important;
}

#quotation .quotation-copy{
  max-width:760px!important;
}

#quotation .quotation-copy .eyebrow,
#quotation .quote-card-head .eyebrow{
  color:#f0b44b!important;
}

#quotation .quotation-copy h2{
  color:#fff!important;
  font-size:clamp(42px,5vw,76px)!important;
  line-height:1!important;
  letter-spacing:-.065em!important;
  margin:0 0 22px!important;
}

#quotation .quotation-copy .muted,
#quotation .quotation-copy p{
  color:rgba(255,255,255,.74)!important;
  font-size:17px!important;
  line-height:1.75!important;
  max-width:720px!important;
}

#quotation .quotation-steps{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:32px!important;
}

#quotation .quotation-steps div{
  display:grid!important;
  gap:8px!important;
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:22px!important;
  padding:18px!important;
  box-shadow:0 18px 50px rgba(0,0,0,.13)!important;
}

#quotation .quotation-steps strong{
  display:block!important;
  color:#f0b44b!important;
  font-size:20px!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
}

#quotation .quotation-steps span{
  display:block!important;
  color:rgba(255,255,255,.76)!important;
  font-size:14px!important;
  line-height:1.45!important;
}

#quotation .quotation-card,
#quotation form#quotationForm{
  display:grid!important;
  gap:16px!important;
  background:#fffdf8!important;
  color:#142015!important;
  border:1px solid rgba(255,255,255,.28)!important;
  border-radius:34px!important;
  padding:30px!important;
  box-shadow:0 34px 100px rgba(0,0,0,.28)!important;
}

#quotation .quote-card-head{
  margin-bottom:4px!important;
}

#quotation .quote-card-head h3{
  color:#142015!important;
  margin:4px 0 0!important;
  font-size:32px!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}

#quotation .quote-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}

#quotation label{
  display:grid!important;
  gap:8px!important;
  color:#344233!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
}

#quotation input,
#quotation select,
#quotation textarea{
  width:100%!important;
  min-width:0!important;
  border:1px solid #e3d6bf!important;
  background:#fff!important;
  color:#142015!important;
  border-radius:16px!important;
  padding:0 14px!important;
  font:inherit!important;
  font-size:15px!important;
  outline:none!important;
  box-shadow:none!important;
}

#quotation input,
#quotation select{
  height:54px!important;
}

#quotation textarea{
  min-height:120px!important;
  padding-top:14px!important;
  resize:vertical!important;
  line-height:1.55!important;
}

#quotation input[type="file"]{
  height:auto!important;
  padding:13px!important;
  background:#fffaf0!important;
}

#quotation input:focus,
#quotation select:focus,
#quotation textarea:focus{
  border-color:#c89439!important;
  box-shadow:0 0 0 4px rgba(200,148,57,.15)!important;
}

#quotation small{
  color:#66715e!important;
  font-size:12px!important;
  line-height:1.45!important;
}

#quotation .quote-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin-top:8px!important;
}

#quotation .quote-actions .btn{
  width:100%!important;
  min-height:52px!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:999px!important;
}

#quotation .quote-feedback{
  margin:0!important;
  border-radius:16px!important;
  padding:14px!important;
  background:#eef8ed!important;
  color:#244b2d!important;
  border:1px solid #cfe8d1!important;
  font-weight:800!important;
  line-height:1.5!important;
}

@media(max-width:1180px){
  #quotation .quotation-layout{
    grid-template-columns:1fr!important;
    gap:36px!important;
  }

  #quotation .quotation-copy{
    max-width:none!important;
  }
}

@media(max-width:760px){
  #quotation.quotation-section,
  section#quotation{
    padding-top:72px!important;
    padding-bottom:72px!important;
  }

  #quotation .quotation-copy h2{
    font-size:clamp(40px,12vw,60px)!important;
  }

  #quotation .quotation-steps,
  #quotation .quote-form-grid,
  #quotation .quote-actions{
    grid-template-columns:1fr!important;
  }

  #quotation .quotation-card,
  #quotation form#quotationForm{
    padding:22px!important;
    border-radius:26px!important;
  }

  #quotation .quote-card-head h3{
    font-size:26px!important;
  }
}

/* Quote + guide connected polish */
#quotation{
  position:relative!important;
  padding-top:110px!important;
  padding-bottom:120px!important;
  background:
    radial-gradient(circle at 14% 18%, rgba(200,148,57,.20), transparent 30%),
    radial-gradient(circle at 88% 10%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(135deg,#112417 0%,#19321f 52%,#213821 100%)!important;
}

#quotation::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:80px;
  background:linear-gradient(180deg,rgba(17,36,23,0),#172d1d);
  pointer-events:none;
}

#quotation .quotation-layout{
  width:min(100% - 64px, 1320px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(420px,.92fr) minmax(560px,1.05fr)!important;
  gap:72px!important;
  align-items:center!important;
}

#quotation .quotation-copy{
  max-width:620px!important;
}

#quotation .quotation-copy .eyebrow{
  color:#f0b44b!important;
  letter-spacing:.18em!important;
  margin-bottom:18px!important;
}

#quotation .quotation-copy h2{
  font-size:clamp(48px,5.6vw,82px)!important;
  line-height:.96!important;
  letter-spacing:-.07em!important;
  margin:0 0 24px!important;
  color:#fff!important;
  text-wrap:balance;
}

#quotation .quotation-copy .muted{
  max-width:620px!important;
  font-size:17px!important;
  line-height:1.75!important;
  color:rgba(255,255,255,.76)!important;
}

#quotation .quotation-steps{
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:14px!important;
  margin-top:34px!important;
}

#quotation .quotation-steps div{
  min-height:104px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.15)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.16)!important;
}

#quotation .quotation-steps strong{
  display:inline-grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  border-radius:14px!important;
  background:rgba(240,180,75,.16)!important;
  color:#f7c873!important;
  font-size:14px!important;
  margin-bottom:12px!important;
}

#quotation .quotation-steps span{
  display:block!important;
  color:rgba(255,255,255,.78)!important;
  font-size:13px!important;
  line-height:1.45!important;
}

#quotation .quotation-card{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:640px!important;
  justify-self:end!important;
  padding:34px!important;
  border-radius:36px!important;
  background:#fffdf8!important;
  border:1px solid rgba(255,255,255,.38)!important;
  box-shadow:
    0 34px 100px rgba(0,0,0,.32),
    0 0 0 10px rgba(255,255,255,.05)!important;
}

#quotation .quote-card-head{
  padding-bottom:8px!important;
  border-bottom:1px solid #efe3cf!important;
  margin-bottom:6px!important;
}

#quotation .quote-card-head h3{
  font-size:32px!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}

#quotation .quote-form-grid{
  gap:16px!important;
}

#quotation label{
  font-size:13px!important;
  color:#30412f!important;
}

#quotation input,
#quotation select,
#quotation textarea{
  border-radius:17px!important;
  border-color:#e5d7bd!important;
  background:#fffefb!important;
}

#quotation input,
#quotation select{
  height:56px!important;
}

#quotation textarea{
  min-height:124px!important;
}

#quotation .quote-actions{
  margin-top:10px!important;
}

#quotation .quote-actions .btn{
  min-height:54px!important;
  font-size:15px!important;
}

/* Guide section after quotation */
#guide.split-section,
section#guide{
  position:relative!important;
  padding-top:100px!important;
  padding-bottom:110px!important;
  background:
    radial-gradient(circle at 85% 18%, rgba(200,148,57,.13), transparent 32%),
    linear-gradient(180deg,#172d1d 0%,#18301f 100%)!important;
  color:white!important;
}

#guide .shell{
  width:min(100% - 64px, 1320px)!important;
  margin:0 auto!important;
}

#guide .split-grid{
  display:grid!important;
  grid-template-columns:minmax(380px,.85fr) minmax(520px,1fr)!important;
  gap:72px!important;
  align-items:center!important;
}

#guide .eyebrow{
  color:#f0b44b!important;
  letter-spacing:.18em!important;
}

#guide h2{
  color:white!important;
  font-size:clamp(42px,4.8vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.065em!important;
  margin:0 0 22px!important;
  text-wrap:balance;
}

#guide .muted,
#guide p{
  color:rgba(255,255,255,.74)!important;
  font-size:16px!important;
  line-height:1.75!important;
}

#guide .guide-list{
  display:grid!important;
  gap:18px!important;
}

#guide .guide-item{
  display:grid!important;
  grid-template-columns:72px 1fr!important;
  gap:20px!important;
  align-items:center!important;
  padding:24px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.15)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.14)!important;
}

#guide .guide-item > span,
#guide .guide-number{
  width:50px!important;
  height:50px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:18px!important;
  background:rgba(240,180,75,.17)!important;
  color:#f7c873!important;
  font-size:15px!important;
  font-weight:900!important;
}

#guide .guide-item h3{
  color:white!important;
  margin:0 0 7px!important;
  font-size:22px!important;
  letter-spacing:-.03em!important;
}

#guide .guide-item p{
  margin:0!important;
  font-size:15px!important;
  line-height:1.6!important;
  color:rgba(255,255,255,.72)!important;
}

@media(max-width:1180px){
  #quotation .quotation-layout,
  #guide .split-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }

  #quotation .quotation-copy,
  #quotation .quotation-card{
    max-width:none!important;
    justify-self:stretch!important;
  }
}

@media(max-width:760px){
  #quotation,
  #guide.split-section,
  section#guide{
    padding-top:72px!important;
    padding-bottom:78px!important;
  }

  #quotation .quotation-layout,
  #guide .shell{
    width:min(100% - 36px, 1320px)!important;
  }

  #quotation .quotation-copy h2,
  #guide h2{
    font-size:clamp(40px,12vw,58px)!important;
  }

  #quotation .quotation-steps,
  #guide .split-grid{
    grid-template-columns:1fr!important;
  }

  #quotation .quotation-card{
    padding:22px!important;
    border-radius:28px!important;
  }

  #guide .guide-item{
    grid-template-columns:1fr!important;
    padding:20px!important;
  }
}


/* Batch 4 - Trust layer gallery testimonial FAQ */
.inspiration-section{
  position:relative;
  background:
    radial-gradient(circle at 12% 12%,rgba(200,148,57,.14),transparent 30%),
    linear-gradient(180deg,#fffdf7 0%,#f5ead8 100%);
  overflow:hidden;
}

.inspiration-head{
  align-items:end;
  margin-bottom:34px;
}

.inspiration-head h2{
  max-width:760px;
  font-size:clamp(42px,5vw,76px);
  line-height:1;
  letter-spacing:-.065em;
  margin:0;
}

.inspiration-head .muted{
  max-width:560px;
  font-size:17px;
  line-height:1.7;
}

.inspiration-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  gap:20px;
  margin-bottom:28px;
}

.inspiration-card{
  background:#fffdf8;
  border:1px solid rgba(31,45,32,.10);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 22px 70px rgba(31,45,32,.08);
}

.inspiration-card.large{
  display:grid;
  grid-template-columns:1fr;
}

.inspiration-image{
  min-height:260px;
  background-size:cover;
  background-position:center;
}

.inspiration-card.large .inspiration-image{
  min-height:340px;
}

.inspiration-card div:last-child{
  padding:24px;
}

.inspiration-card span{
  display:inline-flex;
  margin-bottom:12px;
  background:#f2e5cc;
  color:#61431d;
  border:1px solid #ead8b7;
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.inspiration-card h3{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.12;
  letter-spacing:-.04em;
}

.inspiration-card p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
}

.trust-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:22px;
  align-items:start;
}

.testimonial-panel,
.faq-panel{
  background:#172216;
  color:white;
  border-radius:34px;
  padding:30px;
  box-shadow:0 26px 80px rgba(31,45,32,.18);
}

.testimonial-panel .eyebrow,
.faq-panel .eyebrow{
  color:#f0b44b;
}

.panel-head h3{
  margin:5px 0 0;
  color:white;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-.05em;
}

.testimonial-list{
  display:grid;
  gap:14px;
  margin-top:24px;
}

.testimonial-list article{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  padding:18px;
}

.testimonial-list p{
  margin:0 0 12px;
  color:rgba(255,255,255,.78);
  line-height:1.6;
}

.testimonial-list strong{
  display:block;
  color:white;
  margin-bottom:4px;
}

.testimonial-list span{
  color:rgba(255,255,255,.58);
  font-size:13px;
}

.faq-list{
  display:grid;
  gap:12px;
  margin-top:24px;
}

.faq-list details{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.13);
  border-radius:20px;
  padding:0;
  overflow:hidden;
}

.faq-list summary{
  cursor:pointer;
  list-style:none;
  padding:18px 20px;
  font-weight:900;
  color:white;
}

.faq-list summary::-webkit-details-marker{
  display:none;
}

.faq-list summary::after{
  content:"+";
  float:right;
  color:#f0b44b;
  font-size:20px;
  line-height:1;
}

.faq-list details[open] summary::after{
  content:"–";
}

.faq-list p{
  margin:0;
  padding:0 20px 18px;
  color:rgba(255,255,255,.74);
  line-height:1.65;
}

.faq-wa{
  width:100%;
  justify-content:center;
  margin-top:18px;
}

@media(max-width:1180px){
  .inspiration-grid,
  .trust-grid{
    grid-template-columns:1fr;
  }

  .inspiration-card.large .inspiration-image,
  .inspiration-image{
    min-height:280px;
  }
}

@media(max-width:760px){
  .inspiration-head h2{
    font-size:clamp(40px,12vw,58px);
  }

  .testimonial-panel,
  .faq-panel{
    padding:22px;
    border-radius:26px;
  }

  .panel-head h3{
    font-size:28px;
  }

  .inspiration-card div:last-child{
    padding:20px;
  }
}


/* Batch 5 - Product comparison */
.product-actions-compare{
  grid-template-columns:1fr 1fr 1fr!important;
}

.compare-card-btn.active{
  background:#172216!important;
  color:white!important;
  border-color:#172216!important;
}

.compare-tray{
  position:fixed;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  z-index:80;
  width:min(calc(100% - 36px),760px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  background:rgba(23,34,22,.94);
  color:white;
  border:1px solid rgba(255,255,255,.14);
  border-radius:26px;
  padding:16px;
  box-shadow:0 28px 90px rgba(0,0,0,.30);
  backdrop-filter:blur(16px);
}

.compare-tray[hidden]{
  display:none!important;
}

.compare-tray strong{
  display:block;
  font-size:17px;
  margin-bottom:3px;
}

.compare-tray span{
  color:rgba(255,255,255,.68);
  font-size:13px;
}

.compare-tray-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.compare-tray .btn{
  min-height:44px;
  padding:11px 16px;
}

.compare-modal{
  position:fixed;
  inset:0;
  z-index:100;
  display:none;
  padding:32px;
}

.compare-modal.open{
  display:grid;
  place-items:center;
}

.compare-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,18,10,.72);
  backdrop-filter:blur(8px);
}

.compare-modal-card{
  position:relative;
  width:min(100%,1120px);
  max-height:88vh;
  overflow:auto;
  background:#fffdf8;
  color:var(--ink);
  border-radius:34px;
  padding:30px;
  box-shadow:0 34px 120px rgba(0,0,0,.38);
}

.compare-close{
  position:absolute;
  right:20px;
  top:20px;
}

.compare-modal-head{
  max-width:760px;
  margin-bottom:24px;
}

.compare-modal-head h2{
  font-size:clamp(34px,4vw,56px);
  line-height:1;
  letter-spacing:-.06em;
  margin:4px 0 12px;
}

.compare-modal-head p{
  color:var(--muted);
  line-height:1.65;
  margin:0;
}

.compare-table-wrap{
  overflow:auto;
  border:1px solid #eadcc5;
  border-radius:24px;
  background:white;
}

.compare-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
}

.compare-table th,
.compare-table td{
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid #efe4d1;
  border-right:1px solid #efe4d1;
  padding:16px;
  line-height:1.55;
}

.compare-table th{
  background:#f6ead6;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#694719;
}

.compare-table td:first-child{
  width:190px;
  font-weight:900;
  color:#243323;
  background:#fff8eb;
}

.compare-table td span{
  color:var(--muted);
}

.compare-modal-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
}

@media(max-width:760px){
  .product-actions-compare{
    grid-template-columns:1fr!important;
  }

  .compare-tray{
    align-items:stretch;
    display:grid;
    border-radius:22px;
    bottom:16px;
  }

  .compare-tray-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
  }

  .compare-modal{
    padding:16px;
  }

  .compare-modal-card{
    padding:22px;
    border-radius:26px;
  }

  .compare-modal-actions{
    display:grid;
  }
}

/* Rescue mode: disable compare feature */
.compare-tray,
.compare-modal,
.compare-card-btn,
[data-compare]{
  display:none!important;
}
.product-actions-compare{
  grid-template-columns:1fr 1fr!important;
}


/* Admin dashboard polish */
.admin-overview-polish{
  display:grid;
  gap:22px;
}

.admin-hero-card{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-end;
  background:
    radial-gradient(circle at 82% 12%,rgba(200,148,57,.18),transparent 32%),
    linear-gradient(135deg,#172216,#243a26);
  color:white;
  border-radius:34px;
  padding:34px;
  box-shadow:0 24px 80px rgba(31,45,32,.18);
}

.admin-hero-card h1{
  max-width:780px;
  margin:6px 0 12px;
  font-size:clamp(34px,4vw,58px);
  line-height:1;
  letter-spacing:-.06em;
}

.admin-hero-card p{
  max-width:760px;
  color:rgba(255,255,255,.72);
  line-height:1.65;
  margin:0;
}

.admin-hero-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  flex-shrink:0;
}

.admin-metric-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

.admin-metric-grid article,
.admin-panel-card{
  background:#fffdf8;
  border:1px solid rgba(31,45,32,.10);
  border-radius:28px;
  padding:22px;
  box-shadow:0 18px 54px rgba(31,45,32,.07);
}

.admin-metric-grid article span{
  color:var(--muted);
  font-size:13px;
  font-weight:900;
}

.admin-metric-grid article strong{
  display:block;
  margin:8px 0 6px;
  font-size:42px;
  line-height:1;
  letter-spacing:-.05em;
  color:#172216;
}

.admin-metric-grid article small{
  color:var(--muted);
  line-height:1.45;
}

.admin-dashboard-grid{
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:18px;
}

.admin-panel-head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  margin-bottom:18px;
}

.admin-panel-head h2{
  margin:4px 0 0;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.045em;
}

.admin-quick-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.admin-quick-actions a{
  display:flex;
  align-items:center;
  min-height:56px;
  padding:14px;
  border-radius:18px;
  background:#f8f0e2;
  border:1px solid #eadcc5;
  color:#172216;
  text-decoration:none;
  font-weight:900;
}

.admin-quick-actions a:hover{
  background:#f2e2c6;
}

.admin-setting-summary{
  display:grid;
  gap:12px;
}

.admin-setting-summary div{
  background:#fbf6ed;
  border:1px solid #eadcc5;
  border-radius:18px;
  padding:15px;
}

.admin-setting-summary span{
  display:block;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  margin-bottom:5px;
}

.admin-setting-summary strong{
  display:block;
  color:#172216;
  line-height:1.45;
}

.admin-latest-leads{
  display:grid;
  gap:10px;
}

.admin-latest-leads article{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  background:#fbf6ed;
  border:1px solid #eadcc5;
  border-radius:18px;
  padding:15px;
}

.admin-latest-leads strong,
.admin-latest-leads span,
.admin-latest-leads small{
  display:block;
}

.admin-latest-leads span,
.admin-latest-leads small{
  color:var(--muted);
  line-height:1.45;
}

.admin-latest-leads em{
  font-style:normal;
  background:#f2e5cc;
  color:#67491d;
  border-radius:999px;
  padding:7px 10px;
  font-weight:900;
  font-size:12px;
  white-space:nowrap;
}

@media(max-width:1100px){
  .admin-hero-card,
  .admin-panel-head,
  .admin-latest-leads article{
    display:grid;
  }

  .admin-metric-grid,
  .admin-dashboard-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){
  .admin-metric-grid,
  .admin-dashboard-grid,
  .admin-quick-actions{
    grid-template-columns:1fr;
  }

  .admin-hero-card{
    padding:24px;
    border-radius:26px;
  }
}


/* Admin product page polish */
#products.admin-section,
.admin-section#products{
  display:grid;
  gap:22px;
}

#products .admin-card{
  overflow:hidden;
}

#products .admin-card-head{
  background:
    radial-gradient(circle at 92% 20%,rgba(200,148,57,.16),transparent 32%),
    linear-gradient(135deg,#fffdf8,#f7eddc);
  margin:-22px -22px 22px;
  padding:26px;
  border-bottom:1px solid #eadcc5;
}

#products .admin-card-head h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.055em;
}

.admin-product-help{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:20px;
}

.admin-product-help article{
  background:#172216;
  color:white;
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 46px rgba(31,45,32,.13);
}

.admin-product-help strong{
  display:block;
  font-size:16px;
  margin-bottom:7px;
}

.admin-product-help span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.5;
}

#productForm{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  background:#fffdf8!important;
  border:1px solid #eadcc5!important;
  border-radius:28px!important;
  padding:24px!important;
  box-shadow:0 18px 54px rgba(31,45,32,.06)!important;
}

#productForm label{
  display:grid!important;
  gap:8px!important;
  font-size:13px!important;
  font-weight:900!important;
  color:#334532!important;
}

#productForm label small{
  display:block;
  margin-top:2px;
  color:#7a806f;
  font-size:11px;
  font-weight:700;
  line-height:1.4;
}

#productForm input,
#productForm select,
#productForm textarea{
  width:100%!important;
  min-width:0!important;
  border:1px solid #e2d5bd!important;
  background:white!important;
  color:#142015!important;
  border-radius:16px!important;
  padding:0 14px!important;
  font:inherit!important;
  outline:none!important;
  box-shadow:none!important;
}

#productForm input,
#productForm select{
  height:52px!important;
}

#productForm textarea{
  min-height:124px!important;
  padding-top:14px!important;
  resize:vertical!important;
  line-height:1.55!important;
}

#productForm input:focus,
#productForm select:focus,
#productForm textarea:focus{
  border-color:#c89439!important;
  box-shadow:0 0 0 4px rgba(200,148,57,.14)!important;
}

#productForm label:has(textarea),
#productForm label:has(input[name="description"]),
#productForm label:has(input[name="image"]),
#productForm label:has(input[name="imageUrl"]){
  grid-column:1 / -1;
}

#productForm label:has(input[type="checkbox"]){
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-height:52px;
  background:#fbf6ed;
  border:1px solid #eadcc5;
  border-radius:16px;
  padding:0 14px;
}

#productForm input[type="checkbox"]{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  padding:0!important;
}

#productForm button[type="submit"],
#productForm #cancelEditProduct{
  min-height:52px!important;
  border-radius:999px!important;
  justify-content:center!important;
  align-self:end!important;
}

#productForm button[type="submit"]{
  grid-column:auto!important;
}

#products .table-wrap{
  margin-top:22px;
  border:1px solid #eadcc5;
  border-radius:26px;
  overflow:hidden;
  background:#fffdf8;
  box-shadow:0 18px 54px rgba(31,45,32,.06);
}

#products table{
  width:100%;
  border-collapse:collapse;
}

#products thead th{
  background:#f5e8d2;
  color:#65461d;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:16px;
  border-bottom:1px solid #e5d4b8;
}

#products tbody td{
  padding:16px;
  vertical-align:top;
  border-bottom:1px solid #efe4d1;
  color:#243323;
}

#products tbody tr:hover{
  background:#fff9ee;
}

#products tbody td strong{
  font-size:15px;
  letter-spacing:-.02em;
}

#products tbody td small{
  color:var(--muted);
  line-height:1.5;
}

#products .table-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

#products .small-btn{
  min-height:36px;
  border-radius:999px;
  padding:8px 12px;
  border:1px solid #e0d2bb;
  background:#fffdf8;
  color:#172216;
  font-weight:900;
  cursor:pointer;
  text-decoration:none;
}

#products .small-btn:hover{
  background:#f4e6ce;
}

#products .small-btn.danger{
  color:#9d3f25;
  border-color:#f0c9be;
  background:#fff4ef;
}

#products .pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:999px;
  padding:6px 10px;
  background:#eef8ed;
  color:#276239;
  font-size:12px;
  font-weight:900;
}

@media(max-width:1100px){
  .admin-product-help{
    grid-template-columns:1fr;
  }

  #productForm{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  #products .admin-card-head{
    margin:-18px -18px 18px;
    padding:22px;
  }

  #productForm{
    padding:18px!important;
    border-radius:22px!important;
  }

  #products .table-wrap{
    overflow-x:auto;
  }

  #products table{
    min-width:820px;
  }
}


/* Admin settings page polish */
#settings.admin-section,
.admin-section#settings{
  display:grid;
  gap:22px;
}

#settings .admin-card{
  overflow:hidden;
}

#settings .admin-card-head{
  background:
    radial-gradient(circle at 92% 18%,rgba(200,148,57,.16),transparent 32%),
    linear-gradient(135deg,#fffdf8,#f7eddc);
  margin:-22px -22px 22px;
  padding:26px;
  border-bottom:1px solid #eadcc5;
}

#settings .admin-card-head h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.055em;
}

.settings-help-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-bottom:20px;
}

.settings-help-grid article{
  background:#172216;
  color:white;
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 46px rgba(31,45,32,.13);
}

.settings-help-grid strong{
  display:block;
  font-size:16px;
  margin-bottom:7px;
}

.settings-help-grid span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.5;
}

#settingsForm{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  background:#fffdf8!important;
  border:1px solid #eadcc5!important;
  border-radius:28px!important;
  padding:24px!important;
  box-shadow:0 18px 54px rgba(31,45,32,.06)!important;
}

#settingsForm label{
  display:grid!important;
  gap:8px!important;
  font-size:13px!important;
  font-weight:900!important;
  color:#334532!important;
}

#settingsForm input,
#settingsForm select,
#settingsForm textarea{
  width:100%!important;
  min-width:0!important;
  border:1px solid #e2d5bd!important;
  background:white!important;
  color:#142015!important;
  border-radius:16px!important;
  padding:0 14px!important;
  font:inherit!important;
  outline:none!important;
  box-shadow:none!important;
}

#settingsForm input,
#settingsForm select{
  height:52px!important;
}

#settingsForm textarea{
  min-height:120px!important;
  padding-top:14px!important;
  resize:vertical!important;
  line-height:1.55!important;
}

#settingsForm input:focus,
#settingsForm select:focus,
#settingsForm textarea:focus{
  border-color:#c89439!important;
  box-shadow:0 0 0 4px rgba(200,148,57,.14)!important;
}

#settingsForm label:has(textarea),
#settingsForm label:has(input[name="address"]),
#settingsForm label:has(input[name="mapEmbed"]),
#settingsForm label:has(input[name="contactHeadline"]){
  grid-column:1 / -1;
}

#settingsForm button[type="submit"]{
  min-height:52px!important;
  border-radius:999px!important;
  justify-content:center!important;
  grid-column:1 / -1!important;
  margin-top:6px!important;
}

#resetDemo{
  min-height:48px!important;
  border-radius:999px!important;
  margin-top:14px!important;
  background:#fff4ef!important;
  color:#9d3f25!important;
  border:1px solid #f0c9be!important;
}

#resetDemo:hover{
  background:#ffe8df!important;
}

@media(max-width:1100px){
  .settings-help-grid{
    grid-template-columns:1fr;
  }

  #settingsForm{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:760px){
  #settings .admin-card-head{
    margin:-18px -18px 18px;
    padding:22px;
  }

  #settingsForm{
    padding:18px!important;
    border-radius:22px!important;
  }
}


/* Admin leads page polish */
#quote-leads.admin-section,
.admin-section#quote-leads{
  display:grid;
  gap:22px;
}

#quote-leads .admin-card{
  overflow:hidden;
}

#quote-leads .admin-card-head{
  background:
    radial-gradient(circle at 92% 18%,rgba(200,148,57,.16),transparent 32%),
    linear-gradient(135deg,#fffdf8,#f7eddc);
  margin:-22px -22px 22px;
  padding:26px;
  border-bottom:1px solid #eadcc5;
}

#quote-leads .admin-card-head h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.055em;
}

.lead-admin-toolbar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  margin:18px 0;
}

.lead-admin-toolbar input,
.lead-admin-toolbar select{
  min-height:44px;
  border:1px solid var(--line);
  background:white;
  border-radius:999px;
  padding:0 14px;
  font:inherit;
  color:var(--ink);
  outline:none;
}

.lead-admin-toolbar input{
  flex:1 1 320px;
}

.lead-admin-toolbar select{
  flex:0 0 190px;
}

.lead-admin-toolbar .btn{
  min-height:44px;
  border-radius:999px;
}

.danger-soft{
  background:#fff4ef!important;
  color:#9d3f25!important;
  border:1px solid #f0c9be!important;
}

.lead-help-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:20px 0;
}

.lead-help-grid article{
  background:#172216;
  color:white;
  border-radius:22px;
  padding:18px;
  box-shadow:0 16px 46px rgba(31,45,32,.13);
}

.lead-help-grid strong{
  display:block;
  font-size:16px;
  margin-bottom:7px;
}

.lead-help-grid span{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:13px;
  line-height:1.5;
}

#quote-leads .lead-stats,
#quote-leads .admin-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:18px;
}

#quote-leads .lead-stats div,
#quote-leads .admin-stats div{
  background:#fffdf8;
  border:1px solid #eadcc5;
  border-radius:22px;
  padding:18px;
  box-shadow:0 14px 40px rgba(31,45,32,.06);
}

#quote-leads .lead-stats strong,
#quote-leads .admin-stats strong{
  display:block;
  font-size:34px;
  line-height:1;
  letter-spacing:-.05em;
  color:#172216;
  margin-bottom:6px;
}

#quote-leads .lead-stats span,
#quote-leads .admin-stats span{
  color:var(--muted);
  font-size:13px;
  font-weight:900;
}

#quote-leads .table-wrap{
  border:1px solid #eadcc5;
  border-radius:26px;
  overflow:hidden;
  background:#fffdf8;
  box-shadow:0 18px 54px rgba(31,45,32,.06);
}

#quote-leads table{
  width:100%;
  border-collapse:collapse;
}

#quote-leads thead th{
  background:#f5e8d2;
  color:#65461d;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
  padding:16px;
  border-bottom:1px solid #e5d4b8;
}

#quote-leads tbody td{
  padding:16px;
  vertical-align:top;
  border-bottom:1px solid #efe4d1;
  color:#243323;
}

#quote-leads tbody tr:hover{
  background:#fff9ee;
}

#quote-leads tbody td strong{
  font-size:15px;
  letter-spacing:-.02em;
}

#quote-leads tbody td small{
  color:var(--muted);
  line-height:1.5;
}

#quote-leads .table-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

#quote-leads .small-btn{
  min-height:36px;
  border-radius:999px;
  padding:8px 12px;
  border:1px solid #e0d2bb;
  background:#fffdf8;
  color:#172216;
  font-weight:900;
  cursor:pointer;
  text-decoration:none;
}

#quote-leads .small-btn:hover{
  background:#f4e6ce;
}

#quote-leads .small-btn.danger{
  color:#9d3f25;
  border-color:#f0c9be;
  background:#fff4ef;
}

#quote-leads .pill{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:999px;
  padding:6px 10px;
  background:#eef8ed;
  color:#276239;
  font-size:12px;
  font-weight:900;
}

@media(max-width:1100px){
  .lead-help-grid,
  #quote-leads .lead-stats,
  #quote-leads .admin-stats{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:760px){
  #quote-leads .admin-card-head{
    margin:-18px -18px 18px;
    padding:22px;
  }

  .lead-help-grid,
  #quote-leads .lead-stats,
  #quote-leads .admin-stats{
    grid-template-columns:1fr;
  }

  .lead-admin-toolbar input,
  .lead-admin-toolbar select{
    flex:1 1 100%;
    width:100%;
  }

  #quote-leads .table-wrap{
    overflow-x:auto;
  }

  #quote-leads table{
    min-width:980px;
  }
}

/* Lead detail modal API */
.lead-detail-modal{
  position:fixed;
  inset:0;
  z-index:120;
  display:none;
  padding:28px;
}

.lead-detail-modal.open{
  display:grid;
  place-items:center;
}

.lead-detail-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,18,10,.72);
  backdrop-filter:blur(8px);
}

.lead-detail-card{
  position:relative;
  width:min(100%,980px);
  max-height:90vh;
  overflow:auto;
  background:#fffdf8;
  color:#142015;
  border-radius:34px;
  padding:30px;
  box-shadow:0 34px 120px rgba(0,0,0,.38);
}

.lead-detail-close{
  position:absolute;
  right:20px;
  top:20px;
}

.lead-detail-head{
  max-width:760px;
  margin-bottom:18px;
}

.lead-detail-head h2{
  margin:4px 0 10px;
  font-size:clamp(32px,4vw,54px);
  line-height:1;
  letter-spacing:-.06em;
}

.lead-detail-head p{
  color:var(--muted);
  line-height:1.6;
  margin:0;
}

.lead-detail-status-row{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  margin:18px 0;
}

.lead-detail-badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  border-radius:999px;
  padding:8px 13px;
  background:#f2e5cc;
  color:#67491d;
  font-weight:900;
}

.lead-detail-badge.is-contacted{
  background:#eef4ff;
  color:#284c8f;
}

.lead-detail-badge.is-won{
  background:#eef8ed;
  color:#276239;
}

.lead-detail-badge.is-lost{
  background:#fff1ed;
  color:#9d3f25;
}

.lead-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}

.lead-detail-grid div{
  background:#fbf6ed;
  border:1px solid #eadcc5;
  border-radius:18px;
  padding:15px;
}

.lead-detail-grid span{
  display:block;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  margin-bottom:6px;
}

.lead-detail-grid strong{
  display:block;
  color:#172216;
  line-height:1.45;
}

.lead-detail-message{
  background:#172216;
  color:white;
  border-radius:24px;
  padding:20px;
  margin:18px 0;
}

.lead-detail-message h3{
  margin:0 0 12px;
  color:white;
  font-size:20px;
}

.lead-detail-message pre{
  margin:0;
  white-space:pre-wrap;
  color:rgba(255,255,255,.78);
  line-height:1.65;
  font:inherit;
}

.lead-detail-followup{
  display:grid;
  gap:14px;
  background:#fff8eb;
  border:1px solid #eadcc5;
  border-radius:24px;
  padding:20px;
}

.lead-detail-followup label{
  display:grid;
  gap:8px;
  font-weight:900;
  color:#334532;
  font-size:13px;
}

.lead-detail-followup select,
.lead-detail-followup textarea{
  width:100%;
  border:1px solid #e2d5bd;
  background:white;
  color:#142015;
  border-radius:16px;
  padding:0 14px;
  font:inherit;
  outline:none;
}

.lead-detail-followup select{
  height:52px;
}

.lead-detail-followup textarea{
  min-height:112px;
  padding-top:14px;
  resize:vertical;
  line-height:1.55;
}

.lead-detail-actions{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:10px;
}

.lead-latest-clickable{
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease;
}

.lead-latest-clickable:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 34px rgba(31,45,32,.10);
}

@media(max-width:760px){
  .lead-detail-modal{
    padding:16px;
  }

  .lead-detail-card{
    padding:22px;
    border-radius:26px;
  }

  .lead-detail-status-row,
  .lead-detail-grid,
  .lead-detail-actions{
    display:grid;
    grid-template-columns:1fr;
  }
}

/* Lead modal click fix helpers */
.lead-detail-modal.open{
  display:grid!important;
  pointer-events:auto!important;
}
.lead-detail-modal{
  pointer-events:none;
}
.lead-detail-modal.open .lead-detail-backdrop,
.lead-detail-modal.open .lead-detail-card{
  pointer-events:auto!important;
}
tr[data-lead-row],
[data-open-lead-detail]{
  cursor:pointer;
}

/* Final standalone lead modal */
.final-lead-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  padding:28px;
}

.final-lead-modal.open{
  display:grid!important;
  place-items:center;
}

.final-lead-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,18,10,.72);
  backdrop-filter:blur(8px);
}

.final-lead-card{
  position:relative;
  width:min(100%,980px);
  max-height:90vh;
  overflow:auto;
  background:#fffdf8;
  color:#142015;
  border-radius:34px;
  padding:30px;
  box-shadow:0 34px 120px rgba(0,0,0,.38);
}

.final-lead-close{
  position:absolute;
  right:20px;
  top:20px;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid #eadcc5;
  background:white;
  color:#142015;
  font-size:26px;
  cursor:pointer;
}

.final-lead-head{
  max-width:760px;
  margin-bottom:18px;
}

.final-lead-head h2{
  margin:4px 0 10px;
  font-size:clamp(32px,4vw,54px);
  line-height:1;
  letter-spacing:-.06em;
}

.final-lead-head p{
  color:var(--muted);
  line-height:1.6;
  margin:0;
}

.final-lead-top-actions{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  margin:18px 0;
}

.final-lead-status{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  border-radius:999px;
  padding:8px 13px;
  background:#f2e5cc;
  color:#67491d;
  font-weight:900;
}

.final-lead-status.is-contacted{
  background:#eef4ff;
  color:#284c8f;
}

.final-lead-status.is-won{
  background:#eef8ed;
  color:#276239;
}

.final-lead-status.is-lost{
  background:#fff1ed;
  color:#9d3f25;
}

.final-lead-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}

.final-lead-grid div{
  background:#fbf6ed;
  border:1px solid #eadcc5;
  border-radius:18px;
  padding:15px;
}

.final-lead-grid span{
  display:block;
  color:var(--muted);
  font-size:12px;
  font-weight:900;
  margin-bottom:6px;
}

.final-lead-grid strong{
  display:block;
  color:#172216;
  line-height:1.45;
}

.final-lead-message{
  background:#172216;
  color:white;
  border-radius:24px;
  padding:20px;
  margin:18px 0;
}

.final-lead-message h3{
  margin:0 0 12px;
  color:white;
}

.final-lead-message pre{
  margin:0;
  white-space:pre-wrap;
  color:rgba(255,255,255,.78);
  line-height:1.65;
  font:inherit;
}

.final-lead-followup{
  display:grid;
  gap:14px;
  background:#fff8eb;
  border:1px solid #eadcc5;
  border-radius:24px;
  padding:20px;
}

.final-lead-followup label{
  display:grid;
  gap:8px;
  font-weight:900;
  color:#334532;
  font-size:13px;
}

.final-lead-followup select,
.final-lead-followup textarea{
  width:100%;
  border:1px solid #e2d5bd;
  background:white;
  color:#142015;
  border-radius:16px;
  padding:0 14px;
  font:inherit;
}

.final-lead-followup select{
  height:52px;
}

.final-lead-followup textarea{
  min-height:112px;
  padding-top:14px;
  resize:vertical;
}

.final-lead-actions{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:10px;
}

#dashLatestLeads [data-open-lead-detail],
tr[data-lead-row],
[data-open-lead-detail]{
  cursor:pointer!important;
}

@media(max-width:760px){
  .final-lead-modal{
    padding:16px;
  }

  .final-lead-card{
    padding:22px;
    border-radius:26px;
  }

  .final-lead-top-actions,
  .final-lead-grid,
  .final-lead-actions{
    display:grid;
    grid-template-columns:1fr;
  }
}
