.ad-quote-page { --quote-ink:#151c2c; --quote-copy:#566176; background:#f7f5fb; color:var(--quote-ink); font-family:'Astley Body',sans-serif; }
.ad-quote-page * { box-sizing:border-box; }
.ad-quote-shell { width:min(1240px,calc(100% - 56px)); margin:0 auto; }
.ad-quote-hero { position:relative; overflow:hidden; padding:clamp(80px,8vw,120px) 0; background:radial-gradient(circle at 8% 5%,rgba(109,40,217,.1),transparent 34%),linear-gradient(145deg,#fbfaff,#f2eef9); }
.ad-quote-hero::after { position:absolute; top:80px; right:-240px; width:650px; height:650px; border:1px solid rgba(109,40,217,.08); border-radius:50%; content:''; pointer-events:none; }
.ad-quote-layout { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.78fr) minmax(590px,1.22fr); gap:clamp(58px,8vw,110px); align-items:start; }
.ad-quote-intro { position:sticky; top:42px; padding-top:20px; }
.ad-quote-kicker,.ad-quote-card__heading>span { display:block; margin-bottom:15px; color:#6d28d9; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.ad-quote-intro h1 { max-width:590px; margin:0 0 26px; color:var(--quote-ink); font-family:'Astley Display',sans-serif; font-size:clamp(44px,4.4vw,64px); line-height:1.04; letter-spacing:-.055em; }
.ad-quote-intro>p { max-width:560px; margin:0; color:var(--quote-copy); font-size:18px; line-height:1.7; }
.ad-quote-expect { margin-top:44px; border-top:1px solid rgba(79,57,113,.14); }
.ad-quote-expect>div { display:grid; grid-template-columns:34px 1fr; gap:16px; padding:20px 0; border-bottom:1px solid rgba(79,57,113,.14); }
.ad-quote-expect>div>span { display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border-radius:9px; background:#ede4f9; color:#6d28d9; font-size:12px; font-weight:800; }
.ad-quote-expect p { margin:0; color:#697287; font-size:14px; line-height:1.55; }
.ad-quote-expect strong { display:block; margin-bottom:3px; color:#252c3d; font-size:15px; }
.ad-quote-card { overflow:hidden; border:1px solid rgba(85,52,128,.14); border-radius:24px; background:#fff; box-shadow:0 30px 80px rgba(43,28,69,.11); }
.ad-quote-card__heading { padding:34px 38px 28px; border-bottom:1px solid #eee9f4; }
.ad-quote-card__heading>span { margin-bottom:8px; }
.ad-quote-card__heading h2 { margin:0 0 7px; color:var(--quote-ink); font-family:'Astley Display',sans-serif; font-size:31px; letter-spacing:-.035em; }
.ad-quote-card__heading p { margin:0; color:#7a8292; font-size:13px; }
.ad-quote-form { padding:34px 38px 38px; }
.ad-quote-form fieldset { min-width:0; margin:0 0 32px; padding:0; border:0; }
.ad-quote-form legend { width:100%; margin:0 0 17px; padding:0; color:var(--quote-ink); font-size:16px; font-weight:800; }
.ad-quote-form legend span,.ad-quote-form label>span:first-of-type { color:#6d28d9; }
.ad-quote-fields { display:grid; gap:18px; }
.ad-quote-fields--two { grid-template-columns:1fr 1fr; }
.ad-quote-form label { display:block; color:#353d50; font-size:13px; font-weight:700; line-height:1.45; }
.ad-quote-form :is(input[type='text'],input[type='email'],input[type='tel'],select,textarea) { width:100%; margin-top:8px; border:1px solid #d9d2e4; border-radius:10px; background:#fff; color:#20273a; font:500 15px/1.4 'Astley Body',sans-serif; outline:0; transition:border-color .18s ease,box-shadow .18s ease; }
.ad-quote-form :is(input[type='text'],input[type='email'],input[type='tel'],select) { height:49px; padding:0 14px; }
.ad-quote-form textarea { min-height:130px; padding:13px 14px; resize:vertical; }
.ad-quote-message small { display:block; margin-top:8px; color:#7b8495; font-size:11px; font-weight:500; line-height:1.5; }
.ad-quote-form :is(input,select,textarea):focus-visible { border-color:#6d28d9; box-shadow:0 0 0 4px rgba(109,40,217,.12); }
.ad-quote-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.ad-quote-choices label { position:relative; cursor:pointer; }
.ad-quote-choices input { position:absolute; width:1px; height:1px; opacity:0; }
.ad-quote-choices span { display:flex; align-items:center; min-height:48px; padding:9px 12px; border:1px solid #ddd5e8; border-radius:10px; background:#fff; color:#4a5365!important; font-size:12px; font-weight:700; transition:border-color .18s ease,background-color .18s ease,color .18s ease; }
.ad-quote-choices input:checked+span { border-color:#6d28d9; background:#f0e7fb; color:#5e20aa!important; }
.ad-quote-choices input:focus-visible+span { outline:3px solid rgba(109,40,217,.22); outline-offset:2px; }
.ad-quote-message { margin-bottom:18px; }
.ad-quote-consent { display:grid!important; grid-template-columns:20px 1fr; gap:10px; align-items:start; margin:0 0 22px; color:#626b7c!important; font-weight:500!important; }
.ad-quote-consent input { width:18px; height:18px; margin:2px 0 0; accent-color:#6d28d9; }
.ad-quote-consent a { color:#6526af!important; font-weight:700; }
.ad-quote-form button { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; min-height:54px; border:0; border-radius:12px; background:#6d28d9; box-shadow:0 12px 26px rgba(109,40,217,.22); color:#fff; font:800 15px/1 'Astley Body',sans-serif; cursor:pointer; transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease; }
.ad-quote-form button:hover { background:#5720aa; box-shadow:0 15px 30px rgba(87,32,170,.27); transform:translateY(-1px); }
.ad-quote-form button[aria-busy='true'] { cursor:wait; opacity:.82; transform:none; }
.ad-quote-form button:focus-visible { outline:3px solid rgba(109,40,217,.28); outline-offset:4px; }
.ad-quote-form__note { max-width:470px; margin:15px auto 0!important; color:#7b8495!important; font-size:11px!important; line-height:1.55!important; text-align:center; }
.ad-quote-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.ad-quote-error { margin:26px 38px 0; padding:13px 15px; border:1px solid #efb5b5; border-radius:10px; background:#fff2f2; color:#9c2929; font-size:13px; }
.ad-quote-success { padding:70px 48px; text-align:center; }
.ad-quote-success>span { display:inline-flex; align-items:center; justify-content:center; width:64px; height:64px; margin-bottom:23px; border-radius:50%; background:#e8f7ef; color:#168054; font-size:28px; font-weight:800; }
.ad-quote-success h2 { margin:0 0 16px; color:var(--quote-ink); font-family:'Astley Display',sans-serif; font-size:36px; line-height:1.15; }
.ad-quote-success p { max-width:500px; margin:0 auto 26px; color:var(--quote-copy); font-size:16px; line-height:1.7; }
.ad-quote-success a { display:inline-flex; padding:13px 18px; border-radius:10px; background:#6d28d9; color:#fff!important; font-weight:750; text-decoration:none!important; }
@media(max-width:980px){.ad-quote-layout{grid-template-columns:1fr;gap:48px}.ad-quote-intro{position:static;padding-top:0}.ad-quote-intro h1{max-width:760px}.ad-quote-intro>p{max-width:720px}.ad-quote-expect{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:0}.ad-quote-expect>div{display:block;padding:18px;border:1px solid rgba(79,57,113,.14);border-radius:13px;background:rgba(255,255,255,.55)}.ad-quote-expect>div>span{margin-bottom:12px}}
@media(max-width:640px){.ad-quote-shell{width:calc(100% - 30px)}.ad-quote-hero{padding:58px 0}.ad-quote-intro h1{font-size:42px}.ad-quote-intro>p{font-size:16px}.ad-quote-expect{grid-template-columns:1fr;gap:10px;margin-top:32px}.ad-quote-expect>div{display:grid;grid-template-columns:34px 1fr;padding:15px}.ad-quote-expect>div>span{margin-bottom:0}.ad-quote-card{border-radius:17px}.ad-quote-card__heading{padding:27px 22px 22px}.ad-quote-card__heading h2{font-size:27px}.ad-quote-form{padding:26px 22px 28px}.ad-quote-fields--two,.ad-quote-choices{grid-template-columns:1fr}.ad-quote-form fieldset{margin-bottom:28px}.ad-quote-choices{gap:8px}.ad-quote-choices span{min-height:46px}.ad-quote-error{margin:20px 22px 0}.ad-quote-success{padding:55px 25px}.ad-quote-success h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){.ad-quote-page *{transition:none!important}}
