/* Visual reference: Bullano_generador_contrato_ux_corregido.html. Loaded only on the contract generator. */

/* =========================================================
   BULLANO · GENERADOR DE CONTRATO · REDISEÑO 2026
   Capa visual no destructiva: conserva IDs, data-* y scripts.
   ========================================================= */
:root{
  --b-ink:#101828;
  --b-muted:#667085;
  --b-subtle:#98a2b3;
  --b-line:rgba(16,24,40,.09);
  --b-blue:#0878f9;
  --b-blue-2:#0066e6;
  --b-blue-soft:#eef6ff;
  --b-surface:#ffffff;
  --b-canvas:#f5f7fb;
  --b-green:#1f9d63;
  --b-radius:18px;
  --b-radius-sm:12px;
  --b-shadow:0 18px 55px rgba(16,24,40,.09),0 2px 8px rgba(16,24,40,.04);
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--b-canvas);color:var(--b-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
.resource-page{background:var(--b-canvas)}
.resource-page__wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}

/* Header / launch state: present, but quiet. */
.seo-nav{background:rgba(255,255,255,.86)!important;backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--b-line)!important;box-shadow:none!important}
.public-launch-notice{background:#fff!important;border-bottom:1px solid var(--b-line)!important;color:var(--b-muted)!important}
.public-launch-notice summary{min-height:36px;font-size:12px!important}
.public-launch-notice summary strong{color:var(--b-ink)!important}

/* Compact product hero. */
.resource-page__hero{background:radial-gradient(1000px 420px at 18% -30%,#dceaff 0%,rgba(220,234,255,0) 65%),linear-gradient(180deg,#f9fbff 0%,#f5f7fb 100%)!important;padding:58px 0 28px!important;border:0!important}
.resource-page__hero .resource-page__wrap{max-width:900px;margin-left:max(20px,calc((100vw - 1120px)/2));margin-right:auto}
.resource-page__eyebrow{display:inline-flex;align-items:center;gap:7px;color:var(--b-blue)!important;font-weight:750!important;letter-spacing:.08em!important;text-transform:uppercase;font-size:11px!important;margin-bottom:14px!important}
.resource-page__hero h1{max-width:780px;margin:0!important;font-size:clamp(38px,5vw,62px)!important;line-height:.98!important;letter-spacing:-.055em!important;font-weight:760!important;color:var(--b-ink)!important}
.resource-page__hero p{max-width:700px;margin:20px 0 0!important;color:var(--b-muted)!important;font-size:17px!important;line-height:1.55!important}
.resource-page__hero-actions{display:flex!important;align-items:center!important;gap:14px!important;margin-top:26px!important;flex-wrap:wrap}
.resource-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 18px;border:0;border-radius:12px!important;background:linear-gradient(180deg,#1685ff 0%,#0572ee 100%)!important;color:#fff!important;font-weight:700!important;text-decoration:none;box-shadow:0 7px 18px rgba(8,120,249,.20)!important;transition:.18s ease}
.resource-button:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(8,120,249,.24)!important}
.resource-button--secondary{background:#fff!important;color:var(--b-ink)!important;border:1px solid var(--b-line)!important;box-shadow:0 1px 2px rgba(16,24,40,.04)!important}
.resource-page__back{color:var(--b-muted)!important;text-decoration:none!important;font-weight:650!important;font-size:14px!important}

/* Legal/review note becomes metadata, not a visual stop. */
.resource-review{background:transparent!important;border:0!important;padding:0!important}
.resource-review .resource-page__wrap{max-width:1120px;padding:12px 0 0!important;display:flex!important;gap:8px!important;align-items:center!important;color:var(--b-subtle)!important;font-size:11px!important;line-height:1.4!important}
.resource-review strong{color:var(--b-muted)!important;font-weight:700!important}

/* Intro becomes a compact trust strip. */
.resource-contract-intro--outside{width:min(1120px,calc(100% - 40px))!important;margin:18px auto 14px!important;padding:17px 20px!important;border:1px solid rgba(8,120,249,.10)!important;border-radius:16px!important;background:rgba(255,255,255,.80)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 1px 3px rgba(16,24,40,.035)!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;column-gap:24px!important;row-gap:5px!important;align-items:center!important}
.resource-contract-intro--outside>strong{font-size:17px!important;letter-spacing:-.02em!important;color:var(--b-ink)!important}
.resource-contract-intro--outside>p{margin:0!important;color:var(--b-muted)!important;font-size:13px!important;line-height:1.5!important;max-width:760px}
.resource-contract-intro__meta{grid-column:2;grid-row:1 / span 2;display:flex!important;gap:8px!important;align-items:center!important}
.resource-contract-intro__meta span{display:inline-flex!important;align-items:center!important;min-height:28px;padding:0 10px;border-radius:999px!important;background:var(--b-blue-soft)!important;color:#0b63c9!important;font-size:11px!important;font-weight:700!important;white-space:nowrap}
.resource-contract-intro--outside ol{display:none!important}

/* Main generator = the protagonist. */
.resource-tool{background:transparent!important;padding:0 0 84px!important}
.resource-tool>.resource-page__wrap{width:min(1120px,calc(100% - 40px))!important;margin:auto!important;background:rgba(255,255,255,.96)!important;border:1px solid rgba(16,24,40,.08)!important;border-radius:24px!important;box-shadow:var(--b-shadow)!important;overflow:visible!important;padding:0!important}
.resource-contract-modal-header{position:relative!important;padding:22px 28px 0!important;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%)!important;border-radius:24px 24px 0 0!important}
.resource-contract-modal-close{display:none!important}
.contract-redesign-kicker{font-size:12px;color:var(--b-muted);margin-bottom:14px}
.stage-progress{padding:0 0 20px!important;border-bottom:1px solid var(--b-line)!important;background:transparent!important;box-shadow:none!important}
.stage-progress-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
.stage-progress-top strong{font-size:18px!important;letter-spacing:-.025em!important;color:var(--b-ink)!important}
.stage-progress-top:after{content:"";display:block;width:116px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--b-blue) 0 var(--stage-progress),#e8edf4 var(--stage-progress) 100%)}
.stage-progress-list{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:7px!important;margin:0!important;padding:0!important;list-style:none!important}
.stage-step button{width:100%!important;min-width:0!important;min-height:54px!important;padding:7px 6px!important;border:1px solid transparent!important;border-radius:12px!important;background:#f6f8fb!important;color:#8993a4!important;display:flex!important;flex-direction:column!important;gap:4px!important;align-items:center!important;justify-content:center!important;font:inherit}
.stage-step.active button{background:var(--b-blue-soft)!important;color:#0968d5!important;border-color:rgba(8,120,249,.13)!important}
.stage-step.completed button{background:#f0faf5!important;color:var(--b-green)!important}
.stage-step-index{width:22px!important;height:22px!important;display:grid!important;place-items:center!important;border-radius:999px!important;background:rgba(255,255,255,.9)!important;font-size:10px!important;font-weight:800!important;box-shadow:0 1px 2px rgba(16,24,40,.06)}
.stage-step-label{font-size:10px!important;line-height:1.1!important;font-weight:700!important;white-space:normal!important;text-align:center!important}

/* Privacy / draft as a lightweight settings row. */
.resource-contract-draft{margin:22px 28px 0!important;padding:14px 16px!important;border:1px solid var(--b-line)!important;border-radius:14px!important;background:#f8fafc!important;display:grid!important;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr)!important;gap:18px!important;align-items:center!important;color:var(--b-muted)!important}
.resource-contract-draft label{display:flex!important;align-items:center!important;gap:10px!important;color:var(--b-ink)!important;font-size:13px!important;font-weight:700!important;margin:0!important}
.resource-contract-draft input[type="checkbox"]{width:18px!important;height:18px!important;accent-color:var(--b-blue)!important}
.resource-contract-draft p{margin:0!important;font-size:11px!important;line-height:1.5!important;color:var(--b-muted)!important}
.resource-contract-draft .resource-button{grid-column:1/-1;width:max-content;min-height:34px!important;font-size:12px!important}

/* Form: spacious two-column app layout. */
.resource-contract-form{padding:30px 28px 28px!important;margin:0!important;max-width:none!important}
.resource-contract-form fieldset:not([hidden]){border:0!important;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 18px!important}
.resource-contract-form fieldset[hidden],.resource-contract-form [hidden]{display:none!important}
.resource-contract-form legend{grid-column:1/-1!important;width:100%!important;padding:0 0 19px!important;margin:0!important;font-size:30px!important;line-height:1.08!important;letter-spacing:-.045em!important;font-weight:760!important;color:var(--b-ink)!important;border-bottom:0!important}
.resource-contract-section-title{grid-column:1/-1!important;margin:7px 0 -2px!important;padding-top:22px!important;border-top:1px solid var(--b-line)!important}
.resource-contract-section-title:first-of-type{margin-top:0!important;padding-top:0!important;border-top:0!important}
.resource-contract-section-title strong{display:block!important;margin:0 0 4px!important;font-size:16px!important;line-height:1.2!important;letter-spacing:-.018em!important;color:var(--b-ink)!important}
.resource-contract-section-title span{display:block!important;color:var(--b-muted)!important;font-size:12px!important;line-height:1.45!important}
.resource-contract-form label{display:block!important;min-width:0!important;margin:0!important;color:var(--b-ink)!important;font-size:12px!important;font-weight:650!important}
.resource-contract-field-label{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-bottom:7px!important;line-height:1.25!important}
.resource-contract-field-status{font-size:9px!important;line-height:1!important;padding:4px 6px!important;border-radius:999px!important;font-weight:750!important;letter-spacing:.01em!important;text-transform:none!important;white-space:nowrap!important}
.resource-contract-field-status--required{color:#8b5a00!important;background:#fff7df!important}
.resource-contract-field-status--optional{color:var(--b-muted)!important;background:#f2f4f7!important}
.resource-contract-field-status--calculated{color:#0d6b45!important;background:#edf9f3!important}
.resource-contract-form input:not([type="checkbox"]):not([type="radio"]),
.resource-contract-form select,
.resource-contract-form textarea{width:100%!important;box-sizing:border-box!important;border:1px solid #d9e0ea!important;background:#fff!important;color:var(--b-ink)!important;border-radius:12px!important;box-shadow:0 1px 2px rgba(16,24,40,.025)!important;outline:none!important;font:inherit!important;font-size:14px!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important}
.resource-contract-form input:not([type="checkbox"]):not([type="radio"]),.resource-contract-form select{height:48px!important;padding:0 13px!important}
.resource-contract-form textarea{min-height:86px!important;padding:12px 13px!important;resize:vertical!important}
.resource-contract-form input:focus,.resource-contract-form select:focus,.resource-contract-form textarea:focus{border-color:rgba(8,120,249,.65)!important;box-shadow:0 0 0 4px rgba(8,120,249,.09)!important}
.resource-contract-form input[readonly],.resource-contract-form input:disabled{background:#f6f8fb!important;color:#7c8798!important}
.resource-tool__full,.resource-contract-form details,.resource-contract-choice-card,.resource-contract-toggle-group,.resource-contract-reference-fields{grid-column:1/-1!important}
.resource-contract-reference-fields:not([hidden]){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 18px!important}
.resource-contract-reference-fields>.resource-contract-section-title,.resource-contract-reference-fields>.resource-tool__full{grid-column:1/-1!important}
.resource-contract-optional{border:1px solid var(--b-line)!important;border-radius:12px!important;background:#fbfcfe!important;padding:0!important;overflow:hidden!important}
.resource-contract-optional summary{cursor:pointer!important;padding:13px 14px!important;font-size:12px!important;font-weight:700!important;color:var(--b-ink)!important;list-style:none!important}
.resource-contract-optional summary::-webkit-details-marker{display:none}
.resource-contract-optional summary:after{content:"+";float:right;color:var(--b-blue);font-size:18px;line-height:.8}
.resource-contract-optional[open] summary:after{content:"−"}
.resource-contract-optional>p,.resource-contract-optional>label{margin:0 14px 14px!important}
.resource-contract-optional>p{font-size:11px!important;color:var(--b-muted)!important;line-height:1.45!important}

/* Choice cards and toggles for later steps. */
.resource-contract-choice-card{border:1px solid var(--b-line)!important;border-radius:16px!important;background:#fbfcfe!important;padding:18px!important}
.resource-contract-choice-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
.resource-contract-choice-option{padding:11px 12px!important;border:1px solid #dde3ec!important;border-radius:12px!important;background:#fff!important;display:flex!important;gap:8px!important;align-items:flex-start!important}
.resource-contract-toggle-group{padding:14px 16px!important;border:1px solid var(--b-line)!important;border-radius:13px!important;background:#f8fafc!important}
.resource-contract-toggle{display:flex!important;align-items:center!important;gap:10px!important}

/* Persistent action bar makes the next step obvious. */
.resource-contract-actions{position:sticky!important;bottom:12px!important;z-index:8!important;grid-column:1/-1!important;margin:32px -4px -4px!important;padding:12px!important;border:1px solid rgba(16,24,40,.08)!important;border-radius:16px!important;background:rgba(255,255,255,.88)!important;backdrop-filter:blur(18px) saturate(170%);-webkit-backdrop-filter:blur(18px) saturate(170%);box-shadow:0 10px 30px rgba(16,24,40,.08)!important;display:flex!important;justify-content:flex-end!important;gap:10px!important}
.resource-contract-actions .resource-button{min-width:142px!important}

/* Editorial content stays useful but no longer competes with the tool. */
.resource-article{background:#fff!important;border-top:1px solid var(--b-line)!important;padding:78px 0!important}
.resource-article>.resource-page__wrap{max-width:940px!important}
.resource-article> .resource-page__wrap > h2{font-size:42px!important;line-height:1.03!important;letter-spacing:-.045em!important;margin:8px 0 14px!important}
.resource-article p{color:var(--b-muted)!important;line-height:1.65!important}
.resource-article__section{padding:26px 0!important;border-top:1px solid var(--b-line)!important}
.resource-article__section h2,.resource-checklist h2,.resource-sources h2,.resource-faq h2{font-size:22px!important;letter-spacing:-.025em!important;color:var(--b-ink)!important}
.resource-example,.resource-checklist{border:1px solid var(--b-line)!important;border-radius:16px!important;background:#f8fafc!important;padding:20px!important}
.resource-faq details{border:1px solid var(--b-line)!important;border-radius:12px!important;background:#fff!important;margin:8px 0!important;overflow:hidden!important}
.public-faq-summary{padding:15px 16px!important;font-weight:700!important}
.resource-card{border:1px solid var(--b-line)!important;border-radius:16px!important;box-shadow:none!important;background:#fff!important;transition:.18s ease!important}
.resource-card:hover{transform:translateY(-2px);box-shadow:0 9px 25px rgba(16,24,40,.07)!important}

.resource-page__closing{background:linear-gradient(135deg,#0e4388 0%,#0d63c8 100%)!important;padding:62px 0!important}
.resource-page__closing h2{font-size:40px!important;letter-spacing:-.04em!important;color:#fff!important;margin-bottom:10px!important}
.resource-page__closing p{color:rgba(255,255,255,.78)!important;max-width:620px!important;font-size:16px!important;line-height:1.55!important}
.resource-page__closing .resource-button{background:#fff!important;color:#0d5fbd!important;box-shadow:none!important}
.resource-breadcrumbs--footer{background:#fff!important;border-top:1px solid var(--b-line)!important}
.public-footer{background:#fff!important}

@media (max-width:900px){
  .resource-page__hero{padding:42px 0 24px!important}
  .resource-page__hero .resource-page__wrap{margin-inline:auto!important}
  .resource-page__hero h1{font-size:44px!important}
  .resource-contract-intro--outside{grid-template-columns:1fr!important}
  .resource-contract-intro__meta{grid-column:1!important;grid-row:auto!important;margin-top:8px!important;flex-wrap:wrap!important}
  .stage-progress-list{display:flex!important;overflow-x:auto!important;padding-bottom:4px!important;scroll-snap-type:x proximity!important}
  .stage-step{flex:0 0 104px!important;scroll-snap-align:start!important}
  .resource-contract-draft{grid-template-columns:1fr!important}
}
@media (max-width:700px){
  .resource-page__wrap,.resource-contract-intro--outside,.resource-tool>.resource-page__wrap{width:min(100% - 24px,1120px)!important}
  .resource-page__hero{padding-top:34px!important}
  .resource-page__hero h1{font-size:38px!important;line-height:1.01!important}
  .resource-page__hero p{font-size:15px!important}
  .resource-page__hero-actions{align-items:stretch!important}
  .resource-page__hero-actions .resource-button{width:100%!important}
  .resource-page__back{width:100%;text-align:center;padding:7px 0}
  .resource-review .resource-page__wrap{align-items:flex-start!important;flex-direction:column!important;gap:2px!important}
  .resource-contract-intro--outside{padding:15px!important}
  .resource-contract-modal-header{padding:18px 16px 0!important}
  .stage-progress-top strong{font-size:16px!important}
  .stage-progress-top:after{width:84px!important}
  .resource-contract-draft{margin:16px 16px 0!important;padding:13px!important}
  .resource-contract-form{padding:24px 16px 18px!important}
  .resource-contract-form fieldset:not([hidden]),.resource-contract-reference-fields:not([hidden]){grid-template-columns:1fr!important;gap:17px!important}
  .resource-contract-form legend{font-size:27px!important}
  .resource-contract-section-title,.resource-tool__full,.resource-contract-form details,.resource-contract-choice-card,.resource-contract-toggle-group,.resource-contract-reference-fields,.resource-contract-reference-fields>.resource-contract-section-title,.resource-contract-reference-fields>.resource-tool__full{grid-column:1!important}
  .resource-contract-choice-grid{grid-template-columns:1fr 1fr!important}
  .resource-contract-actions{bottom:8px!important;justify-content:stretch!important}
  .resource-contract-actions .resource-button{flex:1!important;min-width:0!important}
  .resource-article{padding:56px 0!important}
  .resource-article> .resource-page__wrap > h2{font-size:34px!important}
  .resource-page__closing h2{font-size:34px!important}
}
@media (max-width:430px){
  .resource-page__hero h1{font-size:34px!important}
  .resource-contract-intro__meta span{font-size:10px!important}
  .resource-contract-choice-grid{grid-template-columns:1fr!important}
  .stage-step{flex-basis:92px!important}
  .stage-step-label{font-size:9px!important}
}

/* Completion-first: no promotional interruption between stages. */
.resource-contract-stage-promo{display:none!important}
.resource-contract-field-status--required{display:none!important}


/* =========================================================
   BULLANO · GENERADOR DE CONTRATO · CORRECCIÓN V2
   Más producto, menos landing/formulario administrativo.
   ========================================================= */
body{overflow:auto!important}
.resource-page{padding-bottom:0!important}

/* Hero: compact enough that the tool starts in the first viewport. */
.resource-page__hero{padding:30px 0 18px!important;background:radial-gradient(780px 270px at 18% -42%,#dceaff 0%,rgba(220,234,255,0) 67%),linear-gradient(180deg,#fafcff 0%,#f5f7fb 100%)!important}
.resource-page__hero .resource-page__wrap{max-width:1120px!important;margin-inline:auto!important}
.resource-page__eyebrow{margin-bottom:9px!important;font-size:10px!important}
.resource-page__hero h1{font-size:clamp(34px,4.1vw,50px)!important;line-height:1.01!important;letter-spacing:-.048em!important;max-width:760px!important}
.resource-page__hero p{margin-top:11px!important;font-size:15px!important;line-height:1.48!important;max-width:650px!important}
.contract-hero-trust{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:15px;color:#475467;font-size:12px;font-weight:650}
.contract-hero-trust>span{display:inline-flex;align-items:center;gap:5px}
.contract-trust-check{display:grid;place-items:center;width:17px;height:17px;border-radius:999px;background:#eaf8f1;color:#168454;font-size:10px;font-weight:900}
.contract-hero-legal{margin:9px 0 0!important;font-size:10.5px!important;color:#98a2b3!important}

/* Tool appears immediately; no redundant intro card. */
.resource-tool{padding:6px 0 78px!important}
.resource-tool>.resource-page__wrap{border-radius:22px!important;box-shadow:0 20px 60px rgba(16,24,40,.085),0 2px 8px rgba(16,24,40,.035)!important}
.resource-contract-modal-header{padding:19px 28px 0!important}
.contract-generator-meta{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:11px;color:#98a2b3;font-size:9.5px;font-weight:760;letter-spacing:.06em;text-transform:uppercase}
.contract-generator-meta span:last-child{letter-spacing:0;text-transform:none;font-weight:650;font-size:11px;color:#667085}

/* Progress: a real progress indicator, not 8 large cards. */
.stage-progress{padding:0 0 14px!important;border-bottom:1px solid var(--b-line)!important}
.stage-progress-top{display:block!important;margin-bottom:9px!important}
.stage-progress-top strong{font-size:17px!important;letter-spacing:-.025em!important}
.stage-progress-top:after{display:none!important}
.stage-progress:before{content:"";display:block;position:absolute}
.stage-progress-list{position:relative!important;display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:0!important;margin:12px 0 0!important;padding:8px 0 0!important;border-top:4px solid #e8edf4!important;overflow:visible!important}
.stage-progress-list:before{content:"";position:absolute;left:0;top:-4px;width:var(--stage-progress);height:4px;border-radius:999px;background:var(--b-blue);transition:width .25s ease}
.stage-step button{min-height:25px!important;padding:0 4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#98a2b3!important;display:block!important;text-align:center!important;box-shadow:none!important}
.stage-step-index{display:none!important}
.stage-step-label{font-size:9.5px!important;font-weight:650!important;white-space:nowrap!important;color:inherit!important}
.stage-step.active button{background:transparent!important;border:0!important;color:#0878f9!important}
.stage-step.completed button{background:transparent!important;color:#168454!important}

/* Draft save is just a setting, not a content block. */
.resource-contract-draft{margin:13px 28px 0!important;padding:10px 13px!important;min-height:42px!important;display:flex!important;align-items:center!important;gap:14px!important;border:1px solid #e6eaf0!important;border-radius:12px!important;background:#fafbfc!important}
.resource-contract-draft label{font-size:12px!important;flex:1 1 auto!important}
.resource-contract-draft input[type="checkbox"]{width:17px!important;height:17px!important}
.contract-draft-details{margin-left:auto;position:relative}
.contract-draft-details summary{cursor:pointer;list-style:none;color:#0878f9;font-size:11px;font-weight:700;white-space:nowrap}
.contract-draft-details summary::-webkit-details-marker{display:none}
.contract-draft-details[open] p{display:block!important;position:absolute;right:0;top:27px;width:min(370px,72vw);z-index:20;margin:0!important;padding:12px 13px!important;border:1px solid #e2e7ee;border-radius:12px;background:#fff;color:#667085!important;font-size:10.5px!important;line-height:1.5!important;box-shadow:0 12px 32px rgba(16,24,40,.12)}
.resource-contract-draft>p{display:none!important}
.resource-contract-draft .resource-button{margin-left:auto!important;min-height:34px!important;padding:0 10px!important;font-size:11px!important}

/* Form hierarchy. */
.resource-contract-form{padding:30px 28px 20px!important}
.resource-contract-form fieldset:not([hidden]){gap:18px!important}
.resource-contract-form legend{font-size:30px!important;line-height:1.08!important;letter-spacing:-.035em!important;margin-bottom:22px!important}
.resource-contract-section-title{margin:8px 0 0!important;padding:18px 0 2px!important;border-top:1px solid #edf0f4!important}
.resource-contract-section-title:first-of-type{border-top:0!important;padding-top:0!important}
.resource-contract-section-title strong{font-size:17px!important}
.resource-contract-section-title span{font-size:11.5px!important;margin-top:3px!important}
.resource-contract-field-status--required{display:none!important}
.resource-contract-field-status--optional{font-size:9px!important;background:#f2f4f7!important;color:#667085!important}
.contract-field-wide{grid-column:1/-1!important}
.resource-contract-form input:not([type="checkbox"]):not([type="radio"]),.resource-contract-form select{height:50px!important}
.resource-contract-form label{font-size:12px!important}

/* Bottom navigation: context left, actions right. */
.resource-contract-actions{justify-content:flex-end!important;align-items:center!important;margin-top:28px!important}
.contract-action-step{margin-right:auto;color:#98a2b3;font-size:11px;font-weight:650;padding-left:5px}
.resource-contract-actions [data-contract-next]{min-width:154px!important}
.resource-contract-actions [data-contract-prev]{min-width:104px!important}

/* No mid-flow marketing interruption. */
.resource-contract-stage-promo{display:none!important}

@media (max-width:900px){
  .resource-page__hero{padding:25px 0 16px!important}
  .resource-page__hero h1{font-size:42px!important}
  .stage-step-label{font-size:8.5px!important}
}
@media (max-width:700px){
  .resource-page__hero{padding:22px 0 13px!important}
  .resource-page__hero h1{font-size:34px!important}
  .resource-page__hero p{font-size:14px!important;margin-top:9px!important}
  .contract-hero-trust{margin-top:12px;gap:6px 12px;font-size:11px}
  .contract-hero-legal{font-size:10px!important;margin-top:7px!important}
  .resource-tool{padding-top:5px!important}
  .resource-contract-modal-header{padding:16px 16px 0!important}
  .contract-generator-meta{margin-bottom:9px}
  .contract-generator-meta span:last-child{font-size:10px}
  .stage-progress-top strong{font-size:16px!important}
  .stage-progress-list{display:none!important}
  .stage-progress{position:relative;padding-bottom:13px!important}
  .stage-progress:after{content:"";display:block;margin-top:10px;width:100%;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--b-blue) 0 var(--stage-progress),#e8edf4 var(--stage-progress) 100%)}
  .resource-contract-draft{margin:11px 16px 0!important;gap:9px!important}
  .resource-contract-draft label{font-size:11px!important}
  .contract-draft-details summary{font-size:10.5px}
  .resource-contract-form{padding:24px 16px 16px!important}
  .resource-contract-form legend{font-size:26px!important;margin-bottom:18px!important}
  .resource-contract-section-title{padding-top:15px!important}
  .contract-action-step{display:none!important}
  .resource-contract-actions{padding:9px!important;gap:8px!important}
  .resource-contract-actions [data-contract-next]{flex:1 1 64%!important}
  .resource-contract-actions [data-contract-prev]{flex:0 1 34%!important}
}
@media (max-width:430px){
  .contract-generator-meta span:first-child{display:none}
  .contract-generator-meta{justify-content:flex-end}
  .contract-hero-trust{display:grid;grid-template-columns:1fr 1fr}
  .contract-hero-trust>span:last-child{grid-column:1/-1}
  .resource-contract-draft{flex-wrap:wrap!important}
  .contract-draft-details{margin-left:0!important}
}


/* Site chrome intentionally removed on this focused tool page. */
html,body{scroll-padding-top:0!important}
body{padding-top:0!important}
main{margin-top:0!important;padding-top:0!important}
.resource-page__closing{margin-bottom:0!important}


/* Bullano · refinement pass */
.contract-utility-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 24px!important}
.contract-mini-brand{display:inline-flex;align-items:baseline;gap:7px;text-decoration:none!important;color:#15314f!important;font-size:18px;font-weight:780;letter-spacing:-.035em}
.contract-mini-brand span{font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#708197}
.contract-back-link{font-size:13px;font-weight:650;color:#5d6d80!important;text-decoration:none!important}
.contract-back-link:hover{color:#1769d2!important}
.resource-page__hero{padding-top:22px!important;padding-bottom:17px!important}
.contract-hero-trust{margin-top:15px!important}
.contract-hero-legal{margin-top:12px!important}
.contract-prelaunch{max-width:650px;margin-top:12px!important;border:0!important;background:transparent!important}
.contract-prelaunch summary{display:flex;align-items:center;gap:7px;list-style:none;cursor:pointer;width:max-content;max-width:100%;font-size:11px;font-weight:650;color:#718095}
.contract-prelaunch summary::-webkit-details-marker{display:none}
.contract-prelaunch-dot{width:6px;height:6px;border-radius:50%;background:#f0a72f;flex:0 0 auto}
.contract-prelaunch-more{color:#1769d2;font-weight:700;margin-left:3px}
.contract-prelaunch p{max-width:580px!important;margin:8px 0 0 13px!important;font-size:11px!important;line-height:1.5!important;color:#718095!important}
.contract-generator-topline{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 0 15px;border-bottom:1px solid #edf0f4}
.contract-generator-meta{padding:0!important;margin:0!important;border:0!important}
.resource-contract-draft{margin:0!important;padding:0!important;min-height:0!important;border:0!important;background:transparent!important;display:flex!important;align-items:center!important;gap:9px!important;flex:0 0 auto}
.resource-contract-draft label{font-size:12px!important;font-weight:650!important;white-space:nowrap}
.resource-contract-draft .contract-draft-details{position:relative;margin:0!important}
.resource-contract-draft .contract-draft-details summary{font-size:11px!important;color:#1769d2!important;white-space:nowrap}
.resource-contract-draft .contract-draft-details p{position:absolute;right:0;top:calc(100% + 9px);z-index:10;width:min(340px,72vw);padding:11px 12px!important;margin:0!important;background:#fff!important;border:1px solid #e5e9ef;border-radius:12px;box-shadow:0 12px 32px rgba(20,36,56,.12);font-size:11px!important;color:#66768a!important}
.resource-contract-draft .resource-button{display:none!important}
.resource-contract-modal-header{padding-bottom:14px!important}
.stage-progress{padding-top:15px!important}
.resource-article{padding-top:66px!important;padding-bottom:70px!important}
.resource-article>.resource-page__wrap{max-width:940px!important}
.resource-article__section{margin-top:30px!important}
.resource-checklist{margin-top:30px!important}
.resource-sources,.resource-faq,.resource-related{margin-top:42px!important}
.resource-related .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.resource-page__closing{padding:52px 0!important}
.resource-page__closing .resource-button{margin-top:8px!important}
@media(max-width:760px){
  .contract-utility-row{margin-bottom:18px!important;align-items:flex-start}
  .contract-mini-brand{font-size:17px}
  .contract-back-link{font-size:12px;text-align:right}
  .resource-page__hero{padding-top:16px!important}
  .contract-generator-topline{align-items:flex-start;flex-direction:column;gap:10px}
  .resource-contract-draft{width:100%!important;justify-content:space-between}
  .resource-related .resource-grid{grid-template-columns:1fr!important}
  .resource-article{padding-top:48px!important;padding-bottom:54px!important}
}


/* =========================================================
   BULLANO · GENERADOR DE CONTRATO · UX CORRECTION V3
   Deliberate choices, lighter payment flow and visual inventory.
   ========================================================= */
.contract-field-help{display:block;margin-top:7px;color:#98a2b3;font-size:11px;line-height:1.4;font-weight:500}
.contract-fixed-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.contract-fixed-value{min-height:48px;display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid #dfe5ec;border-radius:12px;background:#f8fafc;color:#344054}
.contract-fixed-value>span{width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:#eaf8f1;color:#15865a;font-size:11px;font-weight:900}
.contract-fixed-value strong{font-size:14px;font-weight:650}

.contract-subsection-title{grid-column:1/-1;margin:14px 0 -2px;padding:16px 0 2px;border-top:1px solid #edf0f4;display:flex;flex-direction:column;gap:4px}
.contract-subsection-title strong{font-size:14px;letter-spacing:-.015em;color:#24364b}
.contract-subsection-title span{font-size:11px;line-height:1.45;color:#8b98a8;max-width:680px}
.resource-contract-form fieldset>.contract-subsection-title:first-of-type{margin-top:0;border-top:0;padding-top:0}

/* Choice cards: the real select remains in the DOM for existing contract logic. */
.contract-choice-enhanced{grid-column:1/-1!important}
.contract-native-select-accessible{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;border:0!important;opacity:.001!important;clip-path:inset(50%)!important;overflow:hidden!important;white-space:nowrap!important}
.contract-choice-grid-ui{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.contract-choice-button{appearance:none;border:1px solid #dfe5ec;background:#fff;border-radius:12px;min-height:48px;padding:9px 12px;text-align:left;color:#344054;font:inherit;font-size:13px;font-weight:630;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.contract-choice-button:hover{border-color:#b9c9dc;background:#fbfdff}
.contract-choice-button[aria-checked="true"]{border-color:#1778ed;background:#eef6ff;color:#095fca;box-shadow:0 0 0 3px rgba(23,120,237,.08)}
.contract-choice-button:focus-visible{outline:3px solid rgba(23,120,237,.18);outline-offset:2px}

/* Inventory becomes a compact condition matrix instead of 16 native selects. */
.resource-contract-inventory{display:block!important}
.resource-contract-inventory>.resource-contract-inventory-help{margin:0 0 16px!important}
.resource-contract-inventory .inventory-rating-row{display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(510px,2.35fr);gap:18px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0f4;margin:0!important}
.resource-contract-inventory .inventory-rating-row>.resource-contract-field-label{font-size:13px!important;font-weight:650!important;margin:0!important;color:#344054}
.inventory-rating-ui{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}
.inventory-rating-btn{appearance:none;border:1px solid #e2e7ee;background:#fff;border-radius:9px;min-height:38px;padding:5px 4px;color:#667085;font:inherit;font-size:10px;font-weight:650;line-height:1.1;cursor:pointer;transition:.15s ease;text-align:center}
.inventory-rating-btn:hover{border-color:#b9c9dc;background:#f9fbfd}
.inventory-rating-btn[aria-checked="true"]{background:#eef6ff;border-color:#1778ed;color:#095fca;box-shadow:0 0 0 2px rgba(23,120,237,.07)}
.inventory-rating-btn:focus-visible{outline:3px solid rgba(23,120,237,.18);outline-offset:2px}
.inventory-rating-btn[data-value="0"]{color:#8b98a8;background:#fafbfc}
.inventory-rating-legend{display:grid;grid-template-columns:minmax(145px,1fr) minmax(510px,2.35fr);gap:18px;margin:0 0 4px;align-items:end}
.inventory-rating-legend>span:last-child{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;color:#98a2b3;font-size:9px;font-weight:700;text-align:center;text-transform:uppercase;letter-spacing:.02em}

/* Completed stages feel completed, not merely visited. */
.stage-step.completed .stage-step-label:before,.stage-step.complete .stage-step-label:before,.stage-step.done .stage-step-label:before{content:"✓";display:inline-grid;place-items:center;width:15px;height:15px;margin-right:4px;border-radius:999px;background:#eaf8f1;color:#168454;font-size:9px;font-weight:900;vertical-align:middle}

@media(max-width:820px){
  .resource-contract-inventory .inventory-rating-row{grid-template-columns:1fr;gap:8px;padding:12px 0}
  .inventory-rating-legend{display:none}
  .inventory-rating-ui{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .inventory-rating-btn{min-height:40px;font-size:10.5px}
  .contract-choice-grid-ui{grid-template-columns:1fr}
}

/* Integration: retain usable controls and visible keyboard focus. */
.contract-generator-page .resource-contract-intro{display:none!important}
.contract-generator-page .resource-contract-draft [data-contract-draft-clear]:not([hidden]){display:inline-flex!important}
.contract-generator-page .resource-contract-draft [hidden]{display:none!important}
.contract-generator-page .resource-contract-draft{flex-wrap:wrap}
.contract-generator-page .stage-step.complete button{color:#168454!important}
.contract-generator-page .resource-contract-field-status--required{display:inline!important;background:transparent!important;color:#667085!important;font-size:9px!important;padding:0!important}
.contract-generator-page .contract-native-select-accessible{height:1px!important;min-height:1px!important;width:1px!important}
.contract-generator-page .contract-hero-legal{color:#667085!important}
.contract-generator-page .contract-field-help{color:#667085}
.contract-generator-page .contract-generator-meta{color:#667085}
.contract-generator-page .stage-step-label{font-size:11px!important;white-space:normal!important}
.contract-generator-page .stage-step button{min-height:44px!important}
.contract-generator-page .contract-action-step{color:#667085}
.contract-generator-page .contract-choice-grid-ui[aria-invalid="true"],
.contract-generator-page .inventory-rating-ui[aria-invalid="true"]{outline:2px solid #b42318;outline-offset:3px;border-radius:12px}
.contract-generator-page .contract-choice-button:disabled,.contract-generator-page .inventory-rating-btn:disabled{opacity:.55;cursor:not-allowed}
.contract-generator-page .contract-choice-grid-ui,.contract-generator-page .inventory-rating-ui{grid-column:1/-1}
.contract-generator-page .resource-contract-inventory .inventory-rating-row{position:relative}
.contract-generator-page .contract-fixed-value{margin-top:7px}
.contract-generator-page .resource-contract-form .contract-fixed-native{width:1px!important;height:1px!important}
@media(max-width:900px) and (min-width:701px){.contract-generator-page .stage-step{min-width:0!important;flex:initial!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.contract-generator-page *{transition:none!important;scroll-behavior:auto!important}}

.inventory-rating-row>label{position:relative}.inventory-rating-row>label>.resource-contract-field-label{margin-bottom:0!important}

/* Replace legacy progress decoration with the single reference bar. */
.contract-generator-page .stage-progress{margin:0!important;border:0!important;border-bottom:1px solid var(--b-line)!important;border-radius:0!important}
.contract-generator-page .stage-progress::after{display:none!important}
.contract-generator-page .stage-progress-top{display:block!important}
.contract-generator-page .stage-step button:disabled{opacity:1;color:#667085!important}
@media(max-width:700px){.contract-generator-page .stage-progress::after{display:block!important}}

.contract-generator-page .stage-step.complete .stage-step-label::before{content:none}
.contract-generator-page .resource-contract-inventory-stage:not([hidden]){display:block!important;min-width:0}
.contract-generator-page .resource-contract-form fieldset.resource-contract-inventory:not([hidden]){display:block!important;border:0!important;padding:0!important;margin:0 0 30px!important;box-shadow:none!important}
.contract-generator-page .inventory-rating-row{display:grid!important;grid-template-columns:minmax(145px,1fr) minmax(0,2.35fr);gap:18px;align-items:center;min-width:0}
.contract-generator-page .inventory-rating-row>label{padding:0!important;border:0!important;background:transparent!important}
.contract-generator-page .inventory-rating-row .inventory-rating-ui{grid-column:auto;min-width:0}
.contract-generator-page .resource-contract-actions .resource-button{background:linear-gradient(180deg,#1685ff,#0572ee)!important;color:#fff!important}
.contract-generator-page .resource-contract-actions .resource-button--secondary{background:#fff!important;color:#101828!important}
@media(max-width:820px){.contract-generator-page .inventory-rating-row{grid-template-columns:1fr;gap:8px}}
/* Inline generator remains visible on mobile; the legacy version required a modal launcher. */
.contract-generator-page .resource-page--contract .resource-tool{display:block!important}
.contract-generator-page .resource-page__hero .resource-page__wrap{padding-top:0!important;padding-bottom:0!important}
@media(max-width:700px){
  .contract-generator-page .resource-contract-form input:not([type="checkbox"]):not([type="radio"]),.contract-generator-page .resource-contract-form select,.contract-generator-page .resource-contract-form textarea{font-size:16px!important}
  .contract-generator-page .resource-contract-actions{bottom:max(8px,env(safe-area-inset-bottom))!important}
}
.contract-generator-page .resource-contract-choice-option:has(input:checked){border-color:#1778ed!important;background:#eef6ff!important;color:#095fca!important;box-shadow:0 0 0 2px rgba(23,120,237,.08)}
.contract-generator-page .resource-contract-choice-option:has(input:focus-visible){outline:3px solid rgba(23,120,237,.35);outline-offset:2px}
.contract-generator-page .resource-contract-form [hidden]{display:none!important}
.contract-generator-page .resource-contract-preview-modal .resource-contract-download .resource-button--secondary{background:#fff!important;color:#101828!important;border-color:#dfe5ec!important}
.contract-generator-page .resource-contract-preview-modal__document{min-width:0;overflow-wrap:anywhere}
.contract-generator-page .resource-contract-preview-modal__document .bullano-contract table{table-layout:fixed}

/* Audit corrections: contrast, compact entry and readable mobile document tables. */
.contract-generator-page .inventory-rating-btn[data-value="0"]{color:#475467;background:#fafbfc}
.contract-generator-page .contract-return-review[hidden]{display:none!important}
@media(max-width:700px){
  .contract-generator-page .resource-page__hero{padding-top:12px!important;padding-bottom:10px!important}
  .contract-generator-page .contract-utility-row{margin-bottom:12px!important}
  .contract-generator-page .contract-prelaunch{margin-top:8px!important}
  .contract-generator-page .resource-contract-modal-header{padding-top:12px!important;padding-bottom:0!important}
  .contract-generator-page .stage-progress{padding-top:10px!important;padding-bottom:6px!important}
  .contract-generator-page .resource-contract-form{padding-top:16px!important}
  .contract-generator-page .resource-contract-form legend{margin-bottom:12px!important;padding-bottom:0!important}
  .contract-generator-page .resource-contract-actions [data-contract-prev],
  .contract-generator-page .resource-contract-actions [data-contract-next]{flex:1 1 0!important;min-width:0!important}
  .contract-generator-page .resource-contract-actions .contract-return-review{flex-basis:100%!important}
  .contract-generator-page .resource-contract-preview-modal__document .inventory-table--desktop{display:none}
  .contract-generator-page .resource-contract-preview-modal__document .inventory-table--mobile{display:table}
  .contract-generator-page .resource-contract-preview-modal__document .inventory-table th,
  .contract-generator-page .resource-contract-preview-modal__document .inventory-table td{overflow-wrap:normal;word-break:normal}
}
@media(min-width:701px){.contract-generator-page .resource-contract-preview-modal__document .inventory-table--mobile{display:none}}

/* Visual improvements selected from the supplied reference. */
/* Product hero object */
.contract-hero-visual{display:flex;justify-content:flex-end;padding:18px 10px 14px 0}
.contract-document-scene{position:relative;width:min(100%,390px);height:330px}
.contract-document-back{position:absolute;inset:22px 22px 12px 38px;border:1px solid rgba(0,0,0,.06);border-radius:24px;background:#fff;box-shadow:0 14px 38px rgba(25,35,50,.06)}
.contract-document-back--2{transform:rotate(4.2deg) translate(7px,4px);opacity:.48}
.contract-document-back--1{transform:rotate(2.1deg);opacity:.72}
.contract-document-card{position:absolute;inset:0 34px 25px 0;padding:27px 27px 24px;border:1px solid rgba(0,0,0,.07);border-radius:24px;background:rgba(255,255,255,.98);box-shadow:0 24px 70px rgba(25,35,50,.12)}
.contract-document-card__top{display:flex;align-items:center;gap:10px;color:#1d1d1f;font-size:15px;font-weight:700;letter-spacing:-.015em}
.contract-document-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eef6ff;color:var(--contract-accent)}
.contract-document-mark svg{width:18px;height:18px}
.contract-document-rule{height:1px;background:#ececf0;margin:20px 0 17px}
.contract-document-person{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid #f0f0f2;font-size:12px}
.contract-document-person span,.contract-document-grid span{color:#667085}
.contract-document-person strong,.contract-document-grid strong{color:#1d1d1f;font-weight:650}
.contract-document-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.contract-document-grid>div{display:flex;flex-direction:column;gap:4px;padding:13px;border-radius:13px;background:#f7f7f9;font-size:11px}
.contract-document-grid strong{font-size:12px}
.contract-document-status{display:inline-flex;align-items:center;gap:7px;margin-top:18px;padding:8px 11px;border-radius:999px;background:#eff9f3;color:#18784e;font-size:11px;font-weight:650}
.contract-document-status span{font-weight:800}
.contract-document-badge{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid rgba(0,0,0,.06);border-radius:14px;background:rgba(255,255,255,.92);box-shadow:0 10px 30px rgba(20,30,45,.09);color:#667085;font-size:11px;font-weight:650;backdrop-filter:blur(16px)}
.contract-document-badge span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#eef6ff;color:var(--contract-accent);font-size:12px;font-weight:800}


.contract-generator-page{--contract-accent:#0071e3;--contract-accent-hover:#0064c8;--contract-ink:#1d1d1f;--contract-muted:#596579}
.contract-generator-page .resource-button{background:var(--contract-accent)!important;color:#fff!important;box-shadow:none!important;transform:none!important;transition:background-color .16s ease,box-shadow .16s ease!important}
.contract-generator-page .resource-button:hover{background:var(--contract-accent-hover)!important;box-shadow:none!important;transform:none!important}
.contract-generator-page .resource-button:active{background:#0057b0!important}
.contract-generator-page .resource-button.resource-button--secondary{background:#fff!important;color:var(--contract-ink)!important;border:1px solid #d9dee6!important}
.contract-generator-page .resource-button.resource-button--secondary:hover{background:#f5f7fa!important}
.contract-generator-page .resource-button:focus-visible,.contract-generator-page summary:focus-visible,.contract-generator-page a:focus-visible{outline:3px solid #0071e3!important;outline-offset:3px!important}
.contract-generator-page .contract-hero-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:36px;align-items:center}
.contract-generator-page .resource-page__hero h1{font-size:clamp(36px,4vw,52px)!important;line-height:1.07!important;letter-spacing:-.035em!important}
.contract-generator-page .contract-hero-legal,.contract-generator-page .contract-draft-details summary,.contract-generator-page .contract-generator-meta,.contract-generator-page .contract-action-step{font-size:12px!important;color:var(--contract-muted)!important}
.contract-generator-page .contract-draft-details p{font-size:13px!important;line-height:1.55!important;color:var(--contract-muted)!important}
.contract-generator-page .contract-step-heading{padding:14px 0 18px}
.contract-generator-page .contract-step-heading__meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:9px;color:var(--contract-muted);font-size:12px}
.contract-generator-page .contract-step-heading__meta strong{font-weight:650}
.contract-generator-page .contract-step-heading h2{margin:0!important;font-size:30px!important;line-height:1.15!important;letter-spacing:-.03em!important;color:var(--contract-ink)!important}
.contract-generator-page .stage-progress{padding-top:0!important}
.contract-generator-page .stage-progress-list{border:0!important;padding-top:0!important;margin-top:0!important;position:relative}
.contract-generator-page .stage-progress-list::before{top:16px!important;left:0!important;height:2px!important;width:100%!important;background:linear-gradient(90deg,var(--contract-accent) var(--stage-progress),#dfe4eb var(--stage-progress))!important}
.contract-generator-page .stage-step button{position:relative;display:flex!important;flex-direction:column!important;align-items:center!important;gap:7px!important;min-width:44px!important;min-height:62px!important;padding:0 4px 7px!important}
.contract-generator-page .stage-step-index{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;border:3px solid #fff!important;background:#e9edf2!important;color:#475467!important;border-radius:50%!important;font-size:11px!important}
.contract-generator-page .stage-step.active .stage-step-index{background:var(--contract-accent)!important;color:#fff!important}
.contract-generator-page .stage-step.complete .stage-step-index{background:#e8f5ed!important;color:#176b47!important}
.contract-generator-page .stage-step-label{font-size:12px!important;line-height:1.3!important;color:inherit!important}
.contract-generator-page .stage-step button:focus-visible{outline:3px solid var(--contract-accent)!important;outline-offset:1px!important;border-radius:8px!important}
.contract-generator-page .stage-progress::after{display:none!important}
.contract-generator-page .resource-contract-form>fieldset>legend,.contract-generator-page .resource-contract-inventory-stage>fieldset:first-of-type>legend{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.contract-generator-page .resource-contract-section-title.contract-section-heading{display:grid!important;grid-template-columns:38px minmax(0,1fr);column-gap:12px;align-items:center;background:#f7f8fb!important;border:0!important;border-radius:14px!important;padding:15px 17px!important;margin-top:0!important}
.contract-generator-page .contract-section-heading .contract-section-icon{grid-column:1;grid-row:1/3;width:36px;height:36px;padding:8px;box-sizing:border-box;border-radius:10px;background:#eaf0f7}
.contract-generator-page .contract-section-heading strong,.contract-generator-page .contract-section-heading>span{grid-column:2}
.contract-generator-page .resource-contract-section-title>span{font-size:13px!important;line-height:1.5!important;color:var(--contract-muted)!important}
.contract-generator-page .resource-contract-field-status--optional,.contract-generator-page .resource-contract-field-status--required{font-size:11px!important}
.contract-generator-page .resource-contract-form input:not([type="checkbox"]):not([type="radio"]),.contract-generator-page .resource-contract-form select,.contract-generator-page .resource-contract-form textarea{box-shadow:none!important;border-color:#d6dce5!important}
.contract-generator-page .resource-contract-form input:focus,.contract-generator-page .resource-contract-form select:focus,.contract-generator-page .resource-contract-form textarea:focus{border-color:var(--contract-accent)!important;box-shadow:0 0 0 3px rgba(0,113,227,.16)!important}
.contract-generator-page .resource-lead-offer{border:1px solid #dce8f7;border-radius:18px;background:#f5f9ff;padding:22px;margin:18px 28px 28px}
@media(max-width:980px){.contract-generator-page .contract-hero-layout{display:block}.contract-generator-page .contract-hero-visual{display:none}}
@media(max-width:700px){
 .contract-generator-page .resource-page__hero h1{font-size:34px!important;line-height:1.08!important}
 .contract-generator-page .contract-step-heading{padding:10px 0 12px}
 .contract-generator-page .contract-step-heading h2{font-size:25px!important}
 .contract-generator-page .contract-step-heading__meta{font-size:12px;gap:8px}
 .contract-generator-page .stage-progress-list{display:flex!important;overflow-x:auto!important;gap:2px!important;scrollbar-width:thin}
 .contract-generator-page .stage-step{flex:0 0 auto!important;min-width:0!important}
 .contract-generator-page .stage-step button{min-height:50px!important;padding:0 6px 7px!important}
 .contract-generator-page .stage-step-label{display:block!important;font-size:10px!important;white-space:nowrap!important}
 .contract-generator-page .resource-contract-form{padding-top:16px!important}
 .contract-generator-page .resource-contract-section-title.contract-section-heading{padding:12px!important;column-gap:9px}
 .contract-generator-page .resource-lead-offer{margin:16px;padding:18px}
}
@media(max-width:700px){.contract-generator-page .contract-hero-trust{display:flex!important;gap:7px 16px!important;flex-wrap:wrap}}
.contract-generator-page .resource-contract-preview-modal .resource-lead-offer{margin:20px 0 0;padding:20px;background:#f5f9ff;border:1px solid #dce8f7;border-radius:16px}
.contract-generator-page .resource-contract-preview-modal .resource-lead-offer h3{margin:0 0 8px;color:#1d1d1f;font-size:20px;line-height:1.3}
.contract-generator-page .resource-contract-preview-modal .resource-lead-offer p{margin:0 0 14px;color:#596579;font-size:14px;line-height:1.55}
.contract-generator-page .stage-progress-top{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin:0!important;padding:4px 0 12px!important}
.contract-generator-page .stage-progress-top strong{font-size:13px!important;font-weight:650!important;letter-spacing:0!important;color:var(--contract-muted)!important}
.contract-generator-page .stage-progress-top::after{display:none!important}
.contract-generator-page .stage-progress-meter{display:block!important;width:100%;height:7px;margin:0 0 12px;border-radius:999px;overflow:hidden;background:#e8edf4}
.contract-generator-page .stage-progress-meter>span{display:block;width:8.333333%;height:100%;border-radius:inherit;background:var(--contract-accent);transition:width .2s ease}
.contract-generator-page .stage-progress-list::before{display:none!important}
.contract-generator-page .resource-contract-actions .resource-button:not(.resource-button--secondary),
.contract-generator-page .resource-contract-preview-modal .resource-button:not(.resource-button--secondary),
.contract-generator-page .resource-lead-offer .resource-button:not(.resource-button--secondary){background:var(--contract-accent)!important;color:#fff!important;box-shadow:none!important}
.contract-generator-page .resource-contract-actions .resource-button:not(.resource-button--secondary):hover,
.contract-generator-page .resource-contract-preview-modal .resource-button:not(.resource-button--secondary):hover,
.contract-generator-page .resource-lead-offer .resource-button:not(.resource-button--secondary):hover{background:var(--contract-accent-hover)!important}
.contract-generator-page .resource-contract-actions .resource-button:not(.resource-button--secondary):active,
.contract-generator-page .resource-contract-preview-modal .resource-button:not(.resource-button--secondary):active,
.contract-generator-page .resource-lead-offer .resource-button:not(.resource-button--secondary):active{background:#0057b0!important}

/* Twelve-step form: cards and filled controls matching the rent calculator. */
.contract-generator-page .resource-contract-form>.contract-stage-card:not([hidden]){border:1px solid rgba(0,0,0,.055)!important;border-radius:24px!important;background:#fff!important;padding:24px!important;box-shadow:0 1px 1px #00000004,0 7px 22px #00000006!important;gap:16px!important;min-width:0}
.contract-generator-page .contract-stage-card__header{display:flex;align-items:center;gap:13px;grid-column:1/-1;margin:0 0 4px}
.contract-generator-page .contract-stage-card__header h2{margin:0!important;font-size:19px!important;line-height:1.25!important;letter-spacing:-.02em;color:#1d1d1f}
.contract-generator-page .contract-stage-card__header p{margin:4px 0 0!important;font-size:13px!important;line-height:1.5!important;color:#596579!important}
.contract-generator-page .contract-stage-card__icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:#eef4ff;color:#0a6ee8}
.contract-generator-page .contract-stage-card__icon svg{width:22px;height:22px}
.contract-generator-page .contract-stage-card label:has(>input:not([type="checkbox"]):not([type="radio"])),
.contract-generator-page .contract-stage-card label:has(>select),
.contract-generator-page .contract-stage-card label:has(>textarea){padding:10px 12px!important;border:1px solid transparent!important;border-radius:15px!important;background:#f5f5f7!important;min-width:0}
.contract-generator-page .contract-stage-card label:focus-within{outline:2px solid #0071e3;outline-offset:2px}
.contract-generator-page .contract-stage-card label.resource-contract-field--invalid{outline:2px solid #b42318;outline-offset:2px}
.contract-generator-page .contract-stage-card .resource-contract-field-label{font-size:12px!important;line-height:1.35!important;color:#596579!important;margin-bottom:3px!important;flex-wrap:wrap}
.contract-generator-page .resource-contract-form .contract-stage-card input:not([type="checkbox"]):not([type="radio"]),
.contract-generator-page .resource-contract-form .contract-stage-card select,
.contract-generator-page .resource-contract-form .contract-stage-card textarea{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:3px 0!important;min-height:34px!important;height:auto!important;font-size:17px!important;line-height:1.5!important;color:#1d1d1f!important}
.contract-generator-page .resource-contract-form .contract-stage-card textarea{min-height:90px!important;font-size:16px!important}
.contract-generator-page .contract-stage-card .contract-choice-enhanced>label,
.contract-generator-page .contract-stage-card .inventory-rating-row>label{background:transparent!important;padding:0!important}
.contract-generator-page .contract-stage-card .contract-field-help{display:block!important;margin-top:6px;font-size:12px;line-height:1.5;color:#596579}
.contract-generator-page .contract-stage-card>.resource-contract-review-card{grid-column:1/-1}
.contract-generator-page .contract-stage-card .resource-contract-section-title[hidden]{display:none!important}
@media(max-width:700px){
 .contract-generator-page .resource-contract-form>.contract-stage-card:not([hidden]){padding:18px!important;border-radius:20px!important;grid-template-columns:1fr!important}
 .contract-generator-page .contract-stage-card__header h2{font-size:18px!important}
 .contract-generator-page .contract-stage-card .resource-contract-field-label{font-size:12px!important}
}
@media(prefers-reduced-motion:reduce){.contract-generator-page .stage-progress-meter>span{transition:none}}

/* Audit fixes: stable switches, readable mobile headers and summary. */
.contract-generator-page .resource-contract-modal-header,.contract-generator-page .stage-progress{scroll-margin-top:84px}
.contract-generator-page .resource-contract-form label.resource-contract-toggle{display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;align-items:center!important;gap:4px 12px!important;padding:12px 14px!important;position:relative!important}
.contract-generator-page .resource-contract-form label.resource-contract-toggle>span,.contract-generator-page .resource-contract-form label.resource-contract-toggle>small{grid-column:1;min-width:0;display:block;line-height:1.45}
.contract-generator-page .resource-contract-form label.resource-contract-toggle>small{font-size:12px;font-weight:400;color:#596579}
.contract-generator-page .resource-contract-form label.resource-contract-toggle::after{content:"";display:block;grid-column:2;grid-row:1/3;align-self:center;width:40px;height:22px;flex-shrink:0;border-radius:999px;background:#8999a8}
.contract-generator-page .resource-contract-form label.resource-contract-toggle::before{content:"";position:absolute;z-index:1;top:50%;right:35px;width:16px;height:16px;border-radius:50%;background:#fff;transform:translateY(-50%);transition:right .16s ease}
.contract-generator-page .resource-contract-toggle-group>input:checked+label.resource-contract-toggle::after{background:#0071e3}
.contract-generator-page .resource-contract-toggle-group>input:checked+label.resource-contract-toggle::before{right:17px;transform:translateY(-50%)}
.contract-generator-page .contract-review-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.contract-generator-page .contract-review-highlights>div{min-width:0;background:#fff;border:1px solid #dce4eb;border-radius:12px;padding:12px 14px}
.contract-generator-page .contract-review-highlights dt{font-size:12px;color:#596579;margin-bottom:4px}
.contract-generator-page .contract-review-highlights dd{margin:0;font-size:15px;font-weight:650;color:#1d1d1f;overflow-wrap:anywhere}
.contract-generator-page .contract-stage-card .contract-choice-enhanced:has(.contract-choice-grid-ui[aria-invalid="true"])>label{outline:0!important}
.contract-generator-page .resource-contract-preview-modal__close{min-width:44px!important;min-height:44px!important}
@media(max-width:700px){
 .contract-generator-page .resource-contract-choice-card__header{flex-direction:column;gap:10px}
 .contract-generator-page .resource-contract-choice-card__requirement{align-self:flex-start}
 .contract-generator-page .contract-choice-grid-ui{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .contract-generator-page .contract-choice-grid-ui .contract-choice-button{min-height:48px}
 .contract-generator-page .contract-choice-grid-ui .contract-choice-button:nth-child(n+4){grid-column:1/-1}
 .contract-generator-page .contract-choice-enhanced:has([name="adjustment_frequency"]) .contract-choice-button{grid-column:auto}
 .contract-generator-page .contract-review-highlights{grid-template-columns:1fr;gap:8px}
 .contract-generator-page .resource-contract-inventory .inventory-rating-row{padding:8px 0;gap:6px}
}
@media(prefers-reduced-motion:reduce){.contract-generator-page .resource-contract-form label.resource-contract-toggle::before{transition:none}}

@media(max-width:700px){.contract-generator-page .contract-choice-enhanced:has([name="index_name"]) .contract-choice-grid-ui{grid-template-columns:repeat(3,minmax(0,1fr))}}

.contract-generator-page .contract-optional-section{grid-column:1/-1;min-width:0}
.contract-generator-page .contract-optional-fields:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.contract-generator-page .contract-optional-fields>label:only-child{grid-column:1/-1}
@media(max-width:700px){.contract-generator-page .contract-optional-fields:not([hidden]){grid-template-columns:1fr}}
