/* Shared conversion components: readable controls and a single interaction language. */
.amp-panel [hidden], .amp-wizard [hidden], .amp-form [hidden] { display:none !important; }
.amp-panel, .amp-wizard, .amp-form { color:var(--theme-text); font-family:var(--sans); }
.amp-panel .amp-intro, .amp-followup > p { font-size:16px; line-height:1.5; color:var(--theme-text-soft); }
.amp-panel h2 { font-size:clamp(30px,3vw,40px); line-height:1.1; }
.amp-field { display:flex; flex-direction:column; gap:7px; font-size:14px; font-weight:700; line-height:1.45; min-width:0; }
.amp-field input, .amp-field select, .amp-field textarea { width:100%; min-width:0; box-sizing:border-box; font:400 16px/1.5 var(--sans); color:var(--theme-text); background:var(--theme-surface); border:1px solid var(--theme-border); border-radius:12px; padding:11px 13px; min-height:48px; }
.amp-field textarea { resize:vertical; }
.amp-form { display:grid; gap:14px; margin-top:16px; }
.amp-form .amp-honey, .amp-honey { position:absolute; width:1px; height:1px; padding:0; opacity:0; pointer-events:none; }
.amp-primary { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border:1px solid transparent; border-radius:12px; background:var(--theme-text); color:#fff; font:700 15px/1.4 var(--sans); cursor:pointer; text-decoration:none; transition:transform 140ms ease-out; }
.amp-primary:active:not(:disabled) { transform:scale(.97); }
.amp-primary:disabled { opacity:.65; cursor:default; }
.amp-note, .amp-form .amp-note, .amp-status, .amp-progress, .amp-skip, .amp-details { font-size:14px; line-height:1.5; }
.amp-note { margin:0; color:var(--theme-text-soft); }
.amp-note a, .amp-skip { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.amp-status { margin:0; overflow-wrap:anywhere; }
.amp-status.is-error { color:#942f29; }
.amp-status.is-success { font-weight:700; }
.amp-details summary { min-height:44px; padding-block:10px; cursor:pointer; font-weight:700; }
.amp-details summary span { font-weight:400; }
.amp-panel :is(input,select,textarea,button,a,summary):focus-visible, .amp-wizard :is(input,select,textarea,button,a):focus-visible, .amp-form :is(input,textarea,button,a,summary):focus-visible { outline:3px solid #b29138; outline-offset:3px; }
.amp-panel { max-width:600px; overflow-y:auto; overscroll-behavior:contain; }
.amp-panel .lead-qualifier-kicker { font-size:14px; padding-right:38px; }
.amp-panel .lead-qualifier-close { min-width:44px; min-height:44px; }
.amp-panel-entry { margin-top:24px; }
.amp-followup { border-top:1px solid var(--theme-border); margin-top:24px; padding-top:20px; }
.amp-followup h3 { font:700 24px/1.2 var(--sans); }
.quick-contact { align-items:start; grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr); gap:36px; }
.quick-contact-copy { padding-top:8px; }
.quick-contact .quick-contact-title { font-size:clamp(26px,2.3vw,32px); }
.amp-progress { margin:0 0 14px; color:var(--theme-text-soft); font-weight:700; }
.amp-progress span { color:var(--theme-text); }
.amp-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.amp-field-grid > :only-child { grid-column:1/-1; }
.amp-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:16px; }
.amp-actions .amp-primary { margin-left:auto; }
.amp-back { font:700 15px/1.5 var(--sans); min-height:44px; border:0; padding:8px 0; color:var(--theme-text); background:transparent; cursor:pointer; }
.amp-back:disabled { cursor:default; opacity:.5; }
.amp-skip { display:inline-block; margin-top:12px; padding-block:8px; }
.amp-review h3 { margin:0 0 10px; font:700 24px/1.2 var(--sans); }
.amp-estimate { margin:0 0 12px; font-size:16px; line-height:1.5; }
.amp-summary { margin:0; }
.amp-summary > div { display:flex; justify-content:space-between; gap:16px; border-bottom:1px solid var(--theme-border); padding:7px 0; font-size:14px; line-height:1.45; }
.amp-summary dt { color:var(--theme-text-soft); }
.amp-summary dd { margin:0; font-weight:700; text-align:right; }
.amp-scope { font-size:16px; line-height:1.5; }
.calc-result .amp-form { color:white; }
.calc-result .amp-note { color:#dce9e8; }
.calc-result .amp-primary { background:var(--theme-highlight); color:var(--theme-text); }
.calc-result .amp-status.is-error { color:#ffd1ca; }
.contact-conversation-card { display:flex; flex-direction:column; justify-content:center; gap:20px; }
.contact-conversation-card h3 { margin:0; font:700 28px/1.2 var(--sans); }
.contact-conversation-card p { font-size:16px; line-height:1.5; }
.contact-conversation-card .amp-primary { align-self:start; background:var(--theme-highlight,#ead06d); color:var(--theme-text); }
.calc-edit:disabled { opacity:.55; cursor:default; }
.contact-quick-form label { font-size:14px; }
.contact-quick-form :is(input,select,textarea) { font-size:16px; }
.contact-quick-form .contact-submit { font-size:15px; }
.contact-quick-form .contact-form-note { font-size:14px; }
@media(max-width:850px) { .quick-contact { grid-template-columns:1fr; gap:20px; } }
@media(max-width:460px) { .amp-field-grid { grid-template-columns:1fr; } .amp-panel { padding:24px 20px; } .amp-summary > div { flex-direction:column; gap:2px; } .amp-summary dd { text-align:left; } }
@media(prefers-reduced-motion:reduce) { .amp-primary { transition:none; } .amp-primary:active:not(:disabled) { transform:none; } }
