/* ===== FINAL UNIFIED SEGMENT SEO DESIGN SYSTEM ===== */
:root{
 --u-green:#00b86b;--u-green-dark:#009b59;--u-green-soft:#eafaf3;--u-line:#e5ebe9;
 --u-blue:#1698ed;--u-text:#202734;--u-muted:#5c6a7b;
 --u-font:"GTEestiProDisplay","GT Eesti Pro Display","GT Eesti Pro","Arial",sans-serif;
}
html,body,input,select,textarea,button{font-family:var(--u-font)!important}
body{color:var(--u-text)!important;font-weight:400!important;-webkit-font-smoothing:antialiased}
.wrap{max-width:1500px!important;margin:0 auto!important;padding:34px 20px 24px!important}
.app-shell,.shell{
 background:#fff!important;border:1.5px solid #19cf86!important;border-radius:28px!important;
 box-shadow:0 24px 70px rgba(31,54,44,.08)!important;
}
.service-nav,nav{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important}
.brand-link img,nav img{width:150px!important;max-height:46px!important;object-fit:contain!important;object-position:left center!important}
.back-site,.back{
 display:inline-flex!important;align-items:center!important;color:var(--u-green-dark)!important;background:#fff!important;
 border:1px solid #ccefe0!important;border-radius:10px!important;padding:9px 13px!important;
 text-decoration:none!important;font-size:14px!important;font-weight:600!important
}
.kicker{
 display:inline-flex!important;align-items:center!important;min-height:34px!important;padding:0 14px!important;
 border-radius:999px!important;background:var(--u-green-soft)!important;color:var(--u-green-dark)!important;
 font-size:13px!important;font-weight:800!important;text-transform:uppercase!important
}
h1{
 margin:16px 0 14px!important;font-size:clamp(38px,3.45vw,56px)!important;line-height:1!important;
 letter-spacing:-.025em!important;font-weight:300!important;color:var(--u-text)!important
}
h1 .accent,h1>span{display:block!important;margin-top:2px!important;color:var(--u-green)!important;font-size:.92em!important;line-height:1.02!important;font-weight:300!important}
.sub{max-width:780px!important;margin:16px 0 18px!important;color:var(--u-muted)!important;font-size:18px!important;line-height:1.48!important;font-weight:400!important}
.feature-grid,.features{margin-top:16px!important;gap:10px 28px!important}
.feature,.f{font-size:16px!important;line-height:1.25!important;font-weight:400!important}
.check,.ok{width:20px!important;height:20px!important;flex:0 0 20px!important;border-radius:50%!important;background:var(--u-green)!important;color:#fff!important}
input:not([type="checkbox"]):not([type="radio"]),select{height:54px!important;font-size:16px!important;font-weight:400!important;padding:0 15px!important}
textarea{font-size:16px!important;font-weight:400!important;line-height:1.45!important;padding:13px 15px!important}
input:not([type="checkbox"]):not([type="radio"]),select,textarea{border:1px solid #dce3e1!important;border-radius:12px!important;background:#fff!important;color:var(--u-text)!important;outline:none!important}
input:focus,select:focus,textarea:focus{border-color:var(--u-green)!important;box-shadow:0 0 0 3px rgba(0,184,107,.08)!important}
button{
 min-height:54px!important;border:0!important;border-radius:12px!important;padding:0 21px!important;
 background:var(--u-blue)!important;color:#fff!important;font-size:16px!important;font-weight:600!important;
 box-shadow:0 8px 20px rgba(22,152,237,.18)!important;cursor:pointer!important
}
button:hover{transform:translateY(-1px);filter:brightness(.97)}
.summary-card,.side{border:1px solid var(--u-line)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 18px 45px rgba(34,60,49,.07)!important;padding:26px 28px!important}
.summary-card h2,.side h2{margin:0 0 20px!important;color:var(--u-green)!important;font-size:28px!important;line-height:1.15!important;font-weight:400!important;letter-spacing:-.015em!important}
.summary-row,.scoreline{min-height:55px!important;border-radius:12px!important;background:#f7f8f8!important;font-size:14px!important}
.summary-row b,.scoreline b{font-size:17px!important;font-weight:500!important;color:var(--u-green)!important}
.section{margin-top:30px!important;padding:34px 38px!important;border:1px solid var(--u-line)!important;border-radius:20px!important;background:#fff!important;color:#152238!important}
.section>h2,.section h2{font-size:clamp(30px,2.25vw,40px)!important;line-height:1.12!important;font-weight:400!important;letter-spacing:-.018em!important;color:#152238!important}
.card,.stat,.sourcebox,.meta,.recommend{border-color:var(--u-line)!important;border-radius:14px!important}
.muted,.hint,.note{color:#657083!important;font-weight:400!important}

/* One consistent lead form: 3 fields + button on one row, consent below */
.lead-panel,.lead{
 margin-top:32px!important;padding:20px 22px!important;border:1px solid #ccefe0!important;border-radius:17px!important;
 background:linear-gradient(100deg,#effbf6,#fbfdfc)!important
}
.lead-panel h3,.lead h3{margin:0 0 5px!important;font-size:22px!important;line-height:1.2!important;font-weight:500!important;color:#152238!important}
.lead-panel p,.lead p{margin:0!important;font-size:13px!important;line-height:1.45!important;color:#657083!important}
.lead-grid,.leadgrid{
 display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto!important;
 gap:12px!important;align-items:center!important;margin-top:14px!important
}
.lead-grid input,.leadgrid input{min-width:0!important;width:100%!important}
.lead-actions{display:contents!important}
.lead-actions button,#leadSend,#leadSendBottom,#unlock{min-width:210px!important;margin:0!important;align-self:stretch!important}
.leadfoot{display:contents!important}
.leadfoot button{min-width:210px!important;grid-column:4!important;grid-row:1!important}
.privacy,.consent,.lead-consent,.consent-row{
 grid-column:1/-1!important;display:flex!important;align-items:center!important;gap:7px!important;
 margin-top:10px!important;font-size:11px!important;color:#657083!important
}
.privacy input,.consent input,.lead-consent input,.consent-row input{width:16px!important;height:16px!important;flex:0 0 16px!important}
.privacy a,.consent a{color:var(--u-green-dark)!important}

/* Priority colors kept consistent */
.pill.danger,.badge:not(.mid):not(.low){color:#d92d20!important;background:#fff0ef!important;border-color:#ffd1cd!important}
.pill.warn,.badge.mid{color:#a66400!important;background:#fff7df!important;border-color:#f6d888!important}
.pill.good,.badge.low{color:#078a55!important;background:#eafaf3!important;border-color:#bdebd5!important}

/* Compact first screen */
@media (min-width:1200px) and (max-height:900px){
 h1{font-size:clamp(38px,3.1vw,50px)!important}
 .sub{font-size:17px!important;line-height:1.42!important;margin:12px 0 14px!important}
 .feature-grid,.features{margin-top:12px!important;gap:8px 24px!important}
}
@media(max-width:1100px){
 .lead-grid,.leadgrid{grid-template-columns:1fr 1fr!important}
 .lead-actions button,#leadSend,#leadSendBottom,#unlock,.leadfoot button{min-width:0!important;width:100%!important;grid-column:auto!important}
}
@media(max-width:700px){
 .wrap{padding:10px!important}.app-shell,.shell{padding:22px 16px!important;border-radius:20px!important}
 h1{font-size:34px!important;line-height:1.05!important}.sub{font-size:17px!important}
 .section{padding:23px 20px!important}.section>h2,.section h2{font-size:30px!important}
 .feature-grid,.features,.lead-grid,.leadgrid{grid-template-columns:1fr!important}
}

/* Printing/report: no clipped first screen */
@media print{
 @page{margin:12mm 10mm 14mm}
 html,body{background:#fff!important}
 .wrap{max-width:none!important;margin:0!important;padding:0!important}
 .app-shell,.shell{border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;padding:14mm 8mm 8mm!important}
 .top-grid,.top{break-inside:avoid!important;page-break-inside:avoid!important}
 .section{break-inside:avoid!important;page-break-inside:avoid!important}
}



/* ===== FINAL LEAD FORM LAYOUT FIX ===== */
.lead-panel,
.lead{
  overflow:visible!important;
}

.lead-grid,
.leadgrid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 220px!important;
  gap:12px!important;
  align-items:stretch!important;
  width:100%!important;
  margin-top:14px!important;
}

.lead-grid > input,
.leadgrid > input{
  width:100%!important;
  min-width:0!important;
  height:54px!important;
  margin:0!important;
}

/* Auditor's separate action wrapper becomes part of same grid row */
.lead-panel .lead-actions{
  display:contents!important;
}
.lead-panel .lead-actions button,
.lead-panel #unlock,
.lead-panel #leadSend,
.lead-panel #leadSendBottom{
  grid-column:4!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  height:54px!important;
  min-height:54px!important;
  margin:0!important;
  align-self:stretch!important;
}

/* Text Analyzer: leadfoot is visually dissolved so button joins the first row */
.lead .leadfoot{
  display:contents!important;
}
.lead .leadfoot button{
  grid-column:4!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  height:54px!important;
  min-height:54px!important;
  margin:0!important;
}

/* Consent always below the 4-column row */
.lead-panel .privacy,
.lead .privacy,
.lead-panel .consent,
.lead .consent{
  grid-column:1 / -1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:10px 0 0!important;
  width:100%!important;
}

.lead-panel .privacy input,
.lead .privacy input,
.lead-panel .consent input,
.lead .consent input{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  flex:0 0 16px!important;
  margin:0!important;
}

/* Make the whole lead panel itself the grid context when wrappers are siblings */
.lead-panel{
  display:grid!important;
  grid-template-columns:1fr!important;
}
.lead-panel > h3,
.lead-panel > p{
  grid-column:1!important;
}
.lead-panel > .lead-grid{
  grid-column:1!important;
}

/* Text Analyzer lead section: explicit 4-col grid */
.lead{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 220px!important;
  column-gap:12px!important;
  row-gap:0!important;
}
.lead > h3,
.lead > p{
  grid-column:1 / -1!important;
}
.lead > .leadgrid{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:subgrid!important;
}
/* Fallback for browsers without subgrid */
@supports not (grid-template-columns: subgrid){
  .lead > .leadgrid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 220px!important;
  }
}
.lead > .privacy,
.lead .leadfoot .privacy{
  grid-column:1 / -1!important;
  grid-row:auto!important;
}

/* Desktop sizing guard */
@media (min-width:981px){
  .lead-grid,
  .leadgrid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 220px!important;
  }
}

/* Tablet: two columns */
@media (max-width:980px) and (min-width:641px){
  .lead-grid,
  .leadgrid,
  .lead{
    grid-template-columns:1fr 1fr!important;
  }
  .lead-panel .lead-actions button,
  .lead-panel #unlock,
  .lead-panel #leadSend,
  .lead-panel #leadSendBottom,
  .lead .leadfoot button{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
  }
  .lead-panel .privacy,
  .lead .privacy,
  .lead-panel .consent,
  .lead .consent{
    grid-column:1 / -1!important;
    grid-row:auto!important;
  }
}

/* Mobile: one column */
@media (max-width:640px){
  .lead-grid,
  .leadgrid,
  .lead{
    grid-template-columns:1fr!important;
  }
  .lead-panel .lead-actions button,
  .lead-panel #unlock,
  .lead-panel #leadSend,
  .lead-panel #leadSendBottom,
  .lead .leadfoot button{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
  }
  .lead-panel .privacy,
  .lead .privacy,
  .lead-panel .consent,
  .lead .consent{
    grid-column:1!important;
    grid-row:auto!important;
  }
}
