:root{
  --navy:#061f52;--navy2:#0a2e72;--red:#b70f1b;--red2:#d21b25;
  --gold:#a96908;--ink:#0c1b37;--muted:#5f6c83;--soft:#f4f7fb;
  --line:#dce4ef;--white:#fff;--green:#0b7a4b;--shadow:0 18px 50px rgba(4,28,73,.12);
}
*{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:#fff;line-height:1.6}
img{max-width:100%;display:block}a{text-decoration:none;color:inherit}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:var(--navy);color:#fff;font-size:14px}.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.language-toggle{border:0;background:transparent;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid rgba(6,31,82,.08)}
.nav-wrap{min-height:92px;display:flex;align-items:center;gap:28px}.brand{display:block;width:330px;max-width:48vw}.brand img{width:100%}
.nav{margin-left:auto;display:flex;align-items:center;gap:22px;font-weight:700}.nav a:not(.btn):hover{color:var(--red)}
.menu-btn{display:none;margin-left:auto;font-size:27px;background:none;border:0;color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:10px;font-weight:800;transition:.2s;border:2px solid transparent;cursor:pointer;text-align:center}
.btn:hover{transform:translateY(-1px)}.btn-small{padding:10px 16px;background:var(--navy);color:#fff}.btn-primary{background:var(--red);color:#fff;box-shadow:0 10px 24px rgba(183,15,27,.2)}
.btn-primary:hover{background:#9c0b15}.btn-secondary{border-color:var(--navy);color:var(--navy);background:#fff}.btn-light{background:#fff;color:var(--navy)}.btn-full{width:100%}
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f7f9fc 0%,#fff 52%,#eef3fa 100%);padding:74px 0 66px}
.hero:after{content:"";position:absolute;right:-160px;top:-180px;width:520px;height:520px;border-radius:50%;border:70px solid rgba(6,31,82,.045)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;gap:56px;align-items:center}
.eyebrow{font-weight:900;color:var(--navy);font-size:13px;letter-spacing:.14em;margin-bottom:12px}.eyebrow.red{color:var(--red)}
h1,h2,h3{font-family:Montserrat,Inter,sans-serif;color:var(--navy);line-height:1.12;margin-top:0}
h1{font-size:clamp(42px,5vw,70px);letter-spacing:-.035em;margin-bottom:22px}h2{font-size:clamp(30px,3.5vw,46px);letter-spacing:-.025em;margin-bottom:16px}h3{font-size:21px;margin-bottom:10px}
.hero-sub{font-size:20px;color:var(--muted);max-width:760px}.hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}
.trust-row{display:flex;flex-wrap:wrap;gap:16px 26px;margin-top:26px;color:var(--navy);font-weight:700;font-size:14px}
.hero-card{background:#fff;padding:32px;border:1px solid var(--line);border-top:6px solid var(--red);border-radius:18px;box-shadow:var(--shadow)}
.card-price{font-size:52px;line-height:1;color:var(--red);font-family:Montserrat;font-weight:900;margin:6px 0 10px}.card-price small{font-size:16px;color:var(--muted);font-weight:700}
.hero-card p{color:var(--muted)}.micro{font-size:12px;text-align:center;margin:12px 0 0}
.disclaimer-band{background:var(--navy);color:#fff;padding:20px 0}.disclaimer-grid{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center}
.disclaimer-grid strong{background:var(--red);padding:10px 14px;border-radius:7px;white-space:nowrap}.disclaimer-grid span{font-size:14px;opacity:.92}
.section{padding:88px 0}.section-soft{background:var(--soft)}.section-heading{max-width:800px;margin-bottom:42px}.section-heading p{font-size:18px;color:var(--muted)}
.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.price-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:0 8px 22px rgba(4,28,73,.05);position:relative;overflow:hidden}
.price-card.featured{border:2px solid var(--red);box-shadow:0 18px 40px rgba(183,15,27,.12)}
.ribbon{position:absolute;right:-42px;top:19px;background:var(--red);color:#fff;padding:7px 48px;transform:rotate(35deg);font-size:11px;font-weight:900;letter-spacing:.08em}
.price{font-size:42px;line-height:1;color:var(--red);font-family:Montserrat;font-weight:900;margin:14px 0 5px}.price small{font-size:14px;color:var(--muted);font-weight:700}
.price-card p{color:var(--muted);font-size:15px}.included{list-style:none;padding:0;margin:18px 0 0}.included li{padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.included li::before{content:"✓";color:var(--green);font-weight:900;margin-right:9px}
.free-badge{display:inline-flex;align-items:center;gap:8px;background:#ecf8f2;color:var(--green);padding:8px 11px;border-radius:999px;font-weight:900;font-size:12px;margin:12px 0 0}
.photo-panel{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin-top:28px;background:linear-gradient(100deg,var(--navy),#0a347e);color:#fff;padding:34px;border-radius:18px}
.photo-panel h3,.photo-panel .eyebrow{color:#fff}.photo-panel p{margin:0;opacity:.9}.photo-price{font-family:Montserrat;font-size:38px;font-weight:900;white-space:nowrap}
.addons{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.addon{background:#fff;border:1px solid var(--line);border-radius:14px;padding:21px}.addon strong{display:block;color:var(--navy);font-size:18px}.addon span{display:block;color:var(--red);font-weight:900;margin-top:5px}
.cta-strip{background:linear-gradient(105deg,var(--red),#8f0912);color:#fff;padding:46px 0}.cta-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-strip h2{color:#fff;font-size:34px;margin-bottom:8px}.cta-strip p{margin:0;opacity:.9}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step{background:#fff;border-radius:16px;padding:26px;border:1px solid var(--line)}
.step>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--red);color:#fff;font-weight:900;margin-bottom:18px}.step p{color:var(--muted);font-size:15px;margin-bottom:0}
.landing-grid{display:grid;grid-template-columns:1fr 360px;gap:50px}.side-card{position:sticky;top:120px;background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:24px;height:max-content}
.service-list{display:grid;gap:12px}.service-list div{border:1px solid var(--line);border-radius:11px;padding:14px 16px;background:#fff}.service-list b{color:var(--navy)}
.faq-wrap{max-width:860px}details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:12px}summary{cursor:pointer;color:var(--navy);font-weight:800}details p{color:var(--muted);margin-bottom:3px}
.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:70px;align-items:start}.contact-copy>p{color:var(--muted);font-size:17px}.contact-points{display:grid;gap:8px;margin:28px 0}
.contact-points>*{display:grid;grid-template-columns:90px 1fr;border-bottom:1px solid var(--line);padding:10px 0}.contact-points b{color:var(--navy)}.legal-note{font-size:12px!important}
.lead-form{background:var(--soft);padding:30px;border-radius:18px;border:1px solid var(--line);display:grid;gap:15px}.lead-form label{display:grid;gap:7px;color:var(--navy);font-weight:800;font-size:14px}
input,select,textarea{width:100%;border:1px solid #c8d2df;border-radius:9px;padding:13px 14px;font:inherit;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:3px solid rgba(6,31,82,.12);border-color:var(--navy)}
.form-message{font-size:13px;text-align:center}
footer{background:#051735;color:#fff;padding:46px 0 100px}.footer-grid{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start}.footer-logo{background:#fff;border-radius:10px;padding:8px}.footer-copy p{opacity:.8;font-size:13px}.footer-disclaimer{font-weight:800;letter-spacing:.03em}
.mobile-cta{display:none}
.subhero{padding:64px 0;background:linear-gradient(135deg,#f7f9fc,#eef3fa)}.subhero .container{max-width:920px}.subhero h1{font-size:clamp(38px,4.5vw,60px)}.subhero p{font-size:19px;color:var(--muted);max-width:740px}
.callout{background:#fff7f7;border-left:5px solid var(--red);padding:18px 20px;border-radius:10px;margin:24px 0}
@media(max-width:920px){.nav{display:none;position:absolute;top:92px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.nav.open{display:flex}.menu-btn{display:block}
.hero-grid,.contact-grid,.landing-grid{grid-template-columns:1fr}.price-grid,.addons{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.brand{width:280px}.side-card{position:static}}
@media(max-width:650px){.container{width:min(100% - 28px,1160px)}.topbar-inner{min-height:42px}.site-header .nav-wrap{min-height:74px}.brand{width:220px;max-width:72vw}.nav{top:74px}
.hero{padding:50px 0}h1{font-size:42px}.hero-sub{font-size:18px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.disclaimer-grid{grid-template-columns:1fr;gap:12px}.disclaimer-grid strong{width:max-content}
.section{padding:62px 0}.price-grid,.addons,.steps{grid-template-columns:1fr}.photo-panel{grid-template-columns:1fr}.cta-inner{display:grid}.cta-strip h2{font-size:29px}.footer-grid{grid-template-columns:1fr}.footer-logo{width:240px}
.mobile-cta{position:fixed;display:grid;grid-template-columns:1fr 1fr;left:0;right:0;bottom:0;z-index:60;box-shadow:0 -8px 24px rgba(0,0,0,.12)}.mobile-cta a{padding:14px;text-align:center;color:#fff;font-weight:900;background:var(--navy)}.mobile-cta a:last-child{background:var(--red)}}

/* ===== Checkout pages ===== */
.checkout-page{background:#f6f8fb;min-height:100vh}
.checkout-hero{background:#fff;border-bottom:1px solid var(--line);padding:34px 0 26px}
.checkout-hero-grid{display:flex;justify-content:space-between;gap:30px;align-items:end}
.checkout-hero h1{font-size:42px;line-height:1.05;color:var(--navy);margin:6px 0 10px}
.checkout-hero p{color:var(--muted);margin:0;max-width:760px}
.checkout-shell{padding:34px 0 60px}
.checkout-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:24px;align-items:start}
.checkout-panel,.summary-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}
.summary-panel{position:sticky;top:120px}
.checkout-section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.checkout-section-title h2{font-size:22px;margin:0;color:var(--navy)}
.customer-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.customer-fields label,.payment-options label,.checkout-panel label{font-size:13px;font-weight:800;color:var(--navy)}
.customer-fields input,.customer-fields select,.checkout-panel textarea,.checkout-panel input[type="number"]{width:100%;margin-top:5px;padding:11px;border:1px solid #bdc8d7;border-radius:7px;font:inherit;background:#fff}
.service-list{display:grid;gap:9px}
.service-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:13px;background:#fff}
.service-row:hover{border-color:#aebbd0}
.service-row input[type="checkbox"]{width:19px;height:19px}
.service-name{font-weight:850;color:var(--navy)}
.service-desc{font-size:12px;color:var(--muted);margin-top:2px}
.service-price{font-weight:900;color:var(--red);white-space:nowrap}
.service-extra{grid-column:2/-1;display:none;background:#f7f9fc;padding:10px;border-radius:7px;margin-top:3px}
.service-row.active .service-extra{display:block}
.service-extra input{max-width:140px}
.separate-pay{background:#fff9ed;border-color:#ead39a}
.separate-pay .service-price{color:#7d5b00}
.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pay-card{border:1px solid var(--line);border-radius:9px;padding:14px;cursor:pointer;display:block}
.pay-card:has(input:checked){border:2px solid var(--navy);background:#f3f6fb}
.pay-card input{margin-right:7px}
.staff-fields{display:none;margin-top:12px;padding:12px;background:#f7f9fc;border-radius:8px}
.staff-fields.show{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.summary-items{display:grid;gap:7px;margin:15px 0}
.summary-line{display:flex;justify-content:space-between;gap:12px;font-size:13px}
.summary-line span:first-child{color:#44536b}
.summary-total{display:flex;justify-content:space-between;border-top:2px solid var(--navy);padding-top:13px;margin-top:12px;font-size:22px;font-weight:900;color:var(--navy)}
.summary-separate{margin-top:12px;padding:10px;background:#fff7df;border:1px solid #ead39a;border-radius:7px;font-size:12px}
.checkout-actions{display:grid;gap:9px;margin-top:16px}
.checkout-actions button{border:0;width:100%}
.checkout-note{font-size:11px;color:#68758a;margin-top:12px}
.order-result{display:none;margin-top:15px;padding:14px;background:#eef7f2;border:1px solid #c8e2d4;border-radius:8px;font-size:13px}
.order-result.show{display:block}
.gov-note{background:#eef3fb;border-left:5px solid var(--navy);padding:13px 15px;border-radius:7px;font-size:12px;margin-bottom:18px}
.checkout-mode{display:flex;gap:8px;flex-wrap:wrap}.mode-btn{border:1px solid var(--line);background:#fff;padding:8px 11px;border-radius:7px;font-weight:800;color:var(--navy);cursor:pointer}.mode-btn.active{background:var(--navy);color:#fff}
@media(max-width:900px){.checkout-grid{grid-template-columns:1fr}.summary-panel{position:static}.customer-fields{grid-template-columns:1fr}.payment-options{grid-template-columns:1fr}}

.interpretation-deposit{border:2px solid var(--purple);background:#faf8ff}

/* ===== Quantity controls ===== */
.qty-control{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  margin-left:10px;
}
.qty-btn{
  width:28px;
  height:28px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--navy);
  border-radius:6px;
  font-weight:900;
  cursor:pointer;
  line-height:1;
}
.qty-btn:hover{background:#eef3fb}
.qty-input{
  width:48px !important;
  margin:0 !important;
  padding:6px 4px !important;
  text-align:center;
  border:1px solid #bdc8d7;
  border-radius:6px;
  font-weight:800;
  color:var(--navy);
}
.service-row .qty-control{grid-column:3}
.service-row .service-price{grid-column:4}
.service-row{
  grid-template-columns:auto 1fr auto auto;
}
.service-extra{
  grid-column:2/-1;
}
@media(max-width:700px){
  .service-row{
    grid-template-columns:auto 1fr auto;
  }
  .service-row .qty-control{grid-column:2/3;justify-content:flex-start;margin:6px 0 0}
  .service-row .service-price{grid-column:3;grid-row:1}
}

.choice-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.choice-card{border:1px solid var(--line);border-radius:9px;padding:13px;background:#fff}.choice-card:has(input:checked){border:2px solid var(--navy);background:#f3f6fb}.choice-title{font-weight:900;color:var(--navy)}.choice-price{font-weight:900;color:var(--red)}.choice-help{font-size:11px;color:var(--muted)}.shipping-options{display:none;margin-top:10px}.shipping-options.show{display:grid}.turnaround-note{background:#fff9ed;border-left:5px solid var(--gold);padding:12px;border-radius:7px;font-size:12px;margin-top:12px}@media(max-width:800px){.choice-cards{grid-template-columns:1fr}}
.decision-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.decision-card{border:1px solid var(--line);border-radius:10px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:6px;color:var(--navy)}.decision-card:has(input:checked){border:2px solid var(--navy);background:#f3f6fb}.decision-card span{font-size:12px;color:var(--muted)}.legal-path{border:2px solid var(--red);background:#fff8f8}.not-sure-link{margin-top:12px;padding:11px;background:#fff9ed;border-radius:7px;font-size:12px}.directory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.attorney-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:22px}.directory-disclosure{background:#eef3fb;border-left:5px solid var(--navy);padding:17px;border-radius:8px;margin-bottom:25px}.directory-note{background:#fff9ed;border-left:5px solid var(--gold);padding:14px;border-radius:7px;margin-top:22px;font-size:12px}@media(max-width:850px){.decision-cards,.directory-grid{grid-template-columns:1fr}}
.dynamic-fee{font-size:24px;font-weight:900;color:var(--red);margin-top:5px}.dynamic-time{font-size:13px;font-weight:900;color:var(--navy);margin-top:5px}.priority-base{font-size:11px;color:var(--muted)}.rush-disabled{opacity:.55;pointer-events:none}.staff-gate{min-height:100vh;display:grid;place-items:center;background:#f4f7fb;padding:30px}.staff-gate-card{width:min(500px,100%);background:#fff;border:1px solid var(--line);border-radius:13px;padding:30px;text-align:center}.staff-gate-card input{width:100%;padding:12px;margin:12px 0}.staff-badge{background:#06265e;color:#fff;text-align:center;padding:8px;font-weight:900;font-size:12px}


/* ===== Latest content, presented in the simpler V2 visual language ===== */
.simple-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.simple-choice{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}
.simple-choice h3{margin:8px 0;color:var(--navy)}
.simple-choice .choice-price{font-size:24px;font-weight:900;color:var(--red);margin:8px 0}
.simple-choice p,.simple-choice small{color:var(--muted)}
.simple-choice small{font-size:12px}
.simple-choice.featured{border:2px solid var(--navy)}
.simple-choice.red{border:2px solid var(--red)}
.interpret-simple{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px}
.interpret-price{font-size:34px;font-weight:900;color:var(--red)}
.support-simple{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.support-simple article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px}
.support-simple h3{color:var(--navy);margin-top:0}
.guarantee-box{margin-top:20px;background:#eef7f2;border-left:5px solid #167252;padding:18px;border-radius:8px}
.legal-help{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:var(--navy);color:#fff;border-radius:16px;padding:28px}
.legal-help h2{color:#fff;margin:0 0 8px}.legal-help p{margin:0;opacity:.92}
.tax-note{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}
@media(max-width:850px){.simple-choice-grid,.support-simple{grid-template-columns:1fr}.interpret-simple,.legal-help{grid-template-columns:1fr}}


/* ===== V10: V8-style eye-catching intro, with V2/simple menu and body ===== */
.v8-intro{background:#fff}
.v8-intro-grid{display:grid;grid-template-columns:40% 1fr;min-height:440px}
.v8-intro-copy{padding:36px 18px 34px 0;display:flex;flex-direction:column;justify-content:center}
.v8-intro-copy h1{font-size:49px;line-height:.98;margin:0 0 17px;letter-spacing:-1.4px;color:var(--navy)}
.v8-tagline{font-size:23px;font-weight:900;color:var(--red);margin-bottom:14px}
.v8-intro-copy>p{font-size:18px;margin:0 0 18px;max-width:560px;color:var(--muted)}
.v8-mini-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:14px 0 20px;max-width:570px}
.v8-mini{font-size:12px;font-weight:800;text-align:center;padding:0 7px;border-right:1px solid #adb7c7;color:var(--navy)}
.v8-mini:last-child{border-right:0}
.v8-mini .v8-ico{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--navy);font-size:24px;margin:0 auto 6px}
.v8-mini:nth-child(even) .v8-ico{background:var(--red)}
.v8-intro-actions{display:flex;gap:16px;flex-wrap:wrap}
.v8-intro-media{position:relative;min-height:440px;background:url('assets/family-immigration-hero.jpg') center/cover;border-radius:0 0 0 4px}
.v8-resource-card{position:absolute;right:30px;top:24px;width:315px;background:#fff;border-radius:9px;box-shadow:0 10px 30px rgba(0,0,0,.17);overflow:hidden;text-align:center}
.v8-resource-card .head{background:var(--navy);color:#fff;font-weight:900;font-size:18px;padding:10px 12px}
.v8-resource-card .body{padding:14px 18px 16px}
.v8-resource-card h3{margin:0 0 7px;color:var(--red);font-size:21px}
.v8-resource-card p{font-size:13px;margin:6px 0;color:var(--muted)}
.v8-resource-highlight{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:12px 0;padding:10px 0;font-weight:900;color:var(--navy)}
.v8-resource-card .fine{font-size:11px;margin-top:10px}
.v8-summary-band{background:var(--navy);color:#fff}
.v8-summary-band .container{display:grid;grid-template-columns:repeat(3,1fr);gap:1px}
.v8-summary-item{padding:12px 18px;text-align:center;border-right:1px solid rgba(255,255,255,.25);font-size:13px;font-weight:800}
.v8-summary-item:last-child{border-right:0}
@media(max-width:900px){
  .v8-intro-grid{grid-template-columns:1fr}
  .v8-intro-copy{padding:32px 0}
  .v8-intro-media{min-height:390px}
  .v8-resource-card{right:20px;left:20px;width:auto}
}
@media(max-width:620px){
  .v8-intro-copy h1{font-size:39px}
  .v8-mini-benefits{grid-template-columns:repeat(2,1fr)}
  .v8-mini{border-right:0}
  .v8-summary-band .container{grid-template-columns:1fr}
  .v8-summary-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}
}


/* ===== V11 unified top blue disclosure bar ===== */
.topbar{
  background:var(--navy) !important;
  color:#fff !important;
  padding:7px 0 !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.topbar .container,
.topbar-inner{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  flex-wrap:nowrap !important;
}
.topbar .topbar-left,
.topbar .topbar-right{
  white-space:nowrap;
}
.topbar .language-toggle{
  color:#fff !important;
  text-decoration:underline;
  margin-left:auto;
}
@media(max-width:760px){
  .topbar .container,
  .topbar-inner{
    gap:10px !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
  }
  .topbar .topbar-left,
  .topbar .topbar-right{
    white-space:normal;
    text-align:center;
  }
}

/* ===== V12 Notary Public additions ===== */
.notary-subbrand{
  font-size:13px;
  font-weight:900;
  color:var(--red);
  letter-spacing:.08em;
  margin-top:2px;
}
.notary-highlight{
  background:#fff8e8;
  border:1px solid #ead39a;
  border-radius:14px;
  padding:22px;
}
.notary-highlight h3{margin-top:0;color:var(--navy)}
.notary-price{font-size:28px;font-weight:900;color:var(--red);margin:6px 0}
.notary-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:999px;
  font-weight:900;
  color:var(--navy);
  margin-top:10px;
}

/* ===== V13 stronger Notary Public presentation ===== */
.notary-subbrand{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:5px;
  padding:5px 10px;
  border:2px solid var(--red);
  border-radius:999px;
  background:#fff;
  color:var(--red);
  font-size:13px;
  font-weight:1000;
  letter-spacing:.09em;
  line-height:1;
}
.notary-seal{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border:2px solid currentColor;
  border-radius:50%;
  font-size:11px;
  font-weight:1000;
  line-height:1;
}
.v8-notary-feature{
  border:2px solid #d7b04b;
  background:#fff8e5;
  border-radius:12px;
  padding:10px 12px !important;
}
.v8-notary-feature .v8-ico{
  background:#b98500 !important;
  border:3px double #fff;
  font-size:17px !important;
  font-weight:1000;
}
.notary-feature-section{
  background:linear-gradient(180deg,#fff8e8 0%,#fffdf7 100%);
  border-top:4px solid #d6a21f;
  border-bottom:1px solid #ead39a;
}
.notary-feature-grid{
  display:grid;
  grid-template-columns:.7fr 1.3fr;
  gap:30px;
  align-items:center;
}
.notary-emblem{
  width:190px;
  height:190px;
  border-radius:50%;
  border:8px double #b98500;
  display:grid;
  place-items:center;
  margin:auto;
  background:#fff;
  box-shadow:0 8px 22px rgba(0,0,0,.08);
  text-align:center;
  color:#8a6200;
  font-weight:1000;
  letter-spacing:.06em;
}
.notary-emblem .inner{
  width:138px;
  height:138px;
  border:2px solid #b98500;
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:14px;
}
.notary-emblem .big{font-size:27px;line-height:1}
.notary-feature-copy h2{
  color:var(--navy);
  font-size:34px;
  margin:0 0 10px;
}
.notary-feature-copy .lead{
  font-size:18px;
  color:var(--muted);
  margin-bottom:14px;
}
.notary-feature-copy .price-line{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
  margin:16px 0;
}
.notary-feature-copy .price-pill{
  background:var(--navy);
  color:#fff;
  border-radius:999px;
  padding:9px 14px;
  font-weight:900;
}
.notary-feature-copy .included-pill{
  background:#eaf6ef;
  color:#17613a;
  border:1px solid #b9dec8;
  border-radius:999px;
  padding:9px 14px;
  font-weight:900;
}
.notary-caution{
  margin-top:14px;
  padding:11px 13px;
  background:#fff;
  border-left:4px solid var(--red);
  border-radius:7px;
  font-size:12px;
  color:#4e5b70;
}
.checkout-notary-row{
  border:2px solid #d6a21f !important;
  background:#fffaf0 !important;
}
.checkout-notary-row .service-name{
  font-size:16px;
}
@media(max-width:800px){
  .notary-feature-grid{grid-template-columns:1fr}
  .notary-emblem{width:155px;height:155px}
  .notary-emblem .inner{width:110px;height:110px}
  .notary-feature-copy{text-align:center}
  .notary-feature-copy .price-line{justify-content:center}
}

/* V14 ad-style Notary treatment + overlay-safe hero */
.v8-intro-media{
 background-image:url('assets/hero-notary-ad-style.png') !important;
 background-position:center center !important;
 background-size:cover !important;
}
.v8-ad-notary{
 display:inline-flex;align-items:center;gap:8px;
 background:#ffd91a;color:#061f4d;
 padding:6px 12px;border-radius:7px;
 font-size:17px;font-weight:1000;letter-spacing:.03em;
 box-shadow:inset 0 -2px 0 rgba(0,0,0,.12);
}
.v8-ad-notary .stamp{font-size:19px}
.brand-notary-line{
 display:flex;align-items:center;gap:8px;margin-top:5px;
 font-weight:1000;color:var(--navy);font-size:13px;
}
.brand-notary-line .yellow{
 background:#ffd91a;padding:4px 10px;border-radius:5px;
 font-size:15px;color:#061f4d;
}
.notary-feature-section .notary-emblem{display:none!important}
.notary-feature-grid{grid-template-columns:1fr!important;max-width:900px;margin:auto}
.notary-feature-copy{text-align:center}
.notary-feature-copy .price-line{justify-content:center}
.checkout-notary-row:before{
 content:"NOTARY PUBLIC";
 display:inline-block;background:#ffd91a;color:#061f4d;
 font-weight:1000;font-size:11px;padding:4px 8px;border-radius:4px;
 margin-right:8px;
}

/* ===== V15 clean hero — no background photo ===== */
.v8-intro{
  background:linear-gradient(135deg,#ffffff 0%,#f6f8fc 62%,#eef3fa 100%) !important;
}
.v8-intro-grid{
  grid-template-columns:1.08fr .92fr !important;
  min-height:420px !important;
  gap:34px;
  align-items:center;
}
.v8-intro-media{
  background:none !important;
  min-height:auto !important;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:30px 0;
}
.v8-resource-card{
  position:relative !important;
  top:auto !important;
  right:auto !important;
  left:auto !important;
  width:min(390px,100%) !important;
  box-shadow:0 10px 30px rgba(6,38,94,.12) !important;
  border:1px solid #d9e1ec;
}
.v8-intro-copy{
  padding-top:42px !important;
  padding-bottom:42px !important;
}
@media(max-width:900px){
  .v8-intro-grid{grid-template-columns:1fr !important}
  .v8-intro-media{padding:0 0 34px}
}

/* ===== V16: HTML/CSS intro inspired by the ad-style concept ===== */
.ad-hero{
  background:#fff;
  border-bottom:1px solid #e2e8f0;
}
.ad-hero .container{
  max-width:1500px;
}
.ad-hero-top{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  align-items:stretch;
  min-height:430px;
}
.ad-hero-copy{
  padding:38px 34px 34px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.ad-kicker{
  font-size:15px;
  font-weight:1000;
  color:var(--navy);
  letter-spacing:.02em;
  margin-bottom:8px;
}
.ad-title{
  font-size:55px;
  line-height:.98;
  letter-spacing:-1.8px;
  font-weight:1000;
  color:var(--navy);
  margin:0 0 12px;
  text-transform:uppercase;
}
.ad-subtitle{
  font-size:24px;
  line-height:1.15;
  color:var(--navy);
  font-weight:800;
  margin-bottom:18px;
}
.ad-benefit-list{
  display:grid;
  gap:9px;
  margin:10px 0 20px;
}
.ad-benefit{
  display:flex;
  gap:12px;
  align-items:center;
  font-size:18px;
  font-weight:900;
  color:var(--navy);
}
.ad-check{
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--red);
  color:#fff;
  display:grid;
  place-items:center;
  flex:0 0 28px;
  font-size:16px;
}
.ad-notary-line{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#ffd91a;
  color:#08275d;
  padding:7px 12px;
  border-radius:6px;
  font-weight:1000;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.10);
}
.ad-hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.ad-hero-right{
  background:
    linear-gradient(180deg,rgba(6,38,94,.02),rgba(6,38,94,.06)),
    #f6f9fd;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px;
  border-left:1px solid #e2e8f0;
}
.attorney-panel{
  width:min(430px,100%);
  background:#fff;
  border:1px solid #d7e0eb;
  border-radius:14px;
  padding:26px;
  box-shadow:0 12px 28px rgba(6,38,94,.10);
}
.attorney-icon{
  width:54px;
  height:54px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#eef3fb;
  color:var(--navy);
  font-size:28px;
  margin-bottom:14px;
}
.attorney-panel h2{
  color:var(--navy);
  margin:0 0 10px;
  font-size:28px;
}
.attorney-panel p{
  color:var(--muted);
  font-size:15px;
}
.attorney-panel .attorney-note{
  font-size:12px;
  color:var(--muted);
  margin-top:10px;
}
.ad-feature-strip{
  border-top:1px solid #e2e8f0;
  border-bottom:1px solid #e2e8f0;
  background:#fff;
}
.ad-feature-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.ad-feature{
  padding:16px 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:72px;
  border-right:1px solid #e7edf4;
  text-align:left;
  color:var(--navy);
  font-weight:900;
  font-size:13px;
}
.ad-feature:last-child{border-right:0}
.ad-feature .icon{
  width:38px;
  height:38px;
  border-radius:10px;
  background:#eef3fb;
  color:var(--navy);
  display:grid;
  place-items:center;
  font-size:20px;
  flex:0 0 38px;
}
.ad-feature.notary{
  background:#fff8d7;
}
.ad-feature.notary .icon{
  background:#ffd91a;
}
.ad-brand-lockup{
  margin-bottom:14px;
}
.ad-brand-title{
  font-size:24px;
  line-height:1;
  font-weight:1000;
  color:var(--navy);
  letter-spacing:.01em;
}
.ad-brand-title .usa{color:var(--red)}
.ad-brand-sub{
  display:inline-block;
  margin-top:5px;
  background:var(--red);
  color:#fff;
  font-weight:1000;
  padding:4px 8px;
  letter-spacing:.06em;
  font-size:13px;
}
.ad-brand-notary{
  margin-top:8px;
  display:flex;
  gap:9px;
  flex-wrap:wrap;
  align-items:center;
  font-size:12px;
  font-weight:900;
  color:var(--navy);
}
.ad-brand-notary .yellow{
  background:#ffd91a;
  padding:4px 8px;
  border-radius:5px;
}
@media(max-width:980px){
  .ad-hero-top{grid-template-columns:1fr}
  .ad-hero-copy{padding:30px 0}
  .ad-hero-right{border-left:0;border-top:1px solid #e2e8f0}
  .ad-feature-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .ad-title{font-size:40px}
  .ad-subtitle{font-size:20px}
  .ad-benefit{font-size:16px}
  .ad-feature-grid{grid-template-columns:1fr}
}

/* ===== V18 clean image-based hero ===== */
.clean-ad-hero{
  background:#fff;
  border-bottom:1px solid #e2e8f0;
}
.clean-ad-hero .container{
  max-width:1536px;
  padding-left:0;
  padding-right:0;
}
.clean-ad-hero img{
  display:block;
  width:100%;
  height:auto;
}
.hero-live-actions{
  display:flex;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  padding:18px 20px 20px;
  background:#fff;
  border-top:1px solid #edf1f6;
}
.hero-live-actions .btn{
  min-width:220px;
  text-align:center;
}
@media(max-width:700px){
  .clean-ad-hero .container{padding:0}
  .hero-live-actions{padding:14px}
  .hero-live-actions .btn{width:100%}
}

/* ===== V19: homepage visually matched to approved reference concept ===== */
.ref-header{
  background:#fff;
  border-bottom:1px solid #dfe6ef;
}
.ref-head-top{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:30px;
  align-items:center;
  padding:14px 0 10px;
}
.ref-logo-wrap{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.ref-logo-wrap img{
  width:min(560px,100%);
  height:auto;
  display:block;
}
.ref-logo-sub{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-top:4px;
  font-size:13px;
  font-weight:900;
  color:var(--navy);
}
.ref-logo-sub .yellow{
  background:#ffd91a;
  padding:5px 10px;
  border-radius:5px;
  font-size:18px;
  line-height:1;
  color:#06265e;
}
.ref-contact{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:26px;
}
.ref-contact-item{
  display:flex;
  gap:10px;
  align-items:center;
  color:var(--navy);
}
.ref-contact-ico{
  font-size:25px;
}
.ref-contact-item strong{
  display:block;
  font-size:15px;
}
.ref-contact-item span{
  font-size:12px;
  color:var(--muted);
}
.ref-book{
  background:var(--red);
  color:#fff;
  padding:15px 22px;
  border-radius:8px;
  font-weight:900;
  white-space:nowrap;
  text-decoration:none;
}
.ref-nav{
  border-top:1px solid #edf1f6;
}
.ref-nav-inner{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:34px;
  min-height:52px;
}
.ref-nav-inner a{
  color:var(--navy);
  text-decoration:none;
  font-weight:700;
  font-size:14px;
}
.ref-nav-inner a.active{
  font-weight:900;
  border-bottom:3px solid var(--navy);
  padding-bottom:13px;
}

.ref-hero{
  position:relative;
  background:#f5f7fa;
  overflow:hidden;
}
.ref-hero-grid{
  display:grid;
  grid-template-columns:31% 47% 22%;
  min-height:438px;
}
.ref-hero-copy{
  background:linear-gradient(90deg,#f7f8fa 0%,rgba(247,248,250,.96) 85%,rgba(247,248,250,.72) 100%);
  padding:36px 16px 28px 0;
  position:relative;
  z-index:2;
}
.ref-hero-copy h1{
  margin:0 0 10px;
  color:var(--navy);
  font-size:56px;
  line-height:.98;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:-1.8px;
}
.ref-hero-copy .sub{
  font-size:22px;
  line-height:1.14;
  color:var(--navy);
  margin-bottom:16px;
}
.ref-bullets{
  display:grid;
  gap:8px;
  margin:12px 0 17px;
}
.ref-bullet{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--navy);
  font-size:17px;
  font-weight:900;
}
.ref-dot{
  width:27px;height:27px;border-radius:50%;
  background:var(--red);color:#fff;
  display:grid;place-items:center;
  flex:0 0 27px;
}
.ref-notary{
  display:inline-block;
  background:#ffd91a;
  color:#06265e;
  padding:4px 10px;
  border-radius:5px;
  font-weight:1000;
}
.ref-cta{
  display:inline-block;
  background:var(--red);
  color:#fff;
  text-decoration:none;
  font-weight:1000;
  font-size:18px;
  padding:14px 28px;
  border-radius:7px;
}
.ref-family{
  position:relative;
  overflow:hidden;
}
.ref-family img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.ref-attorney-zone{
  position:relative;
  background:
    linear-gradient(90deg,rgba(255,255,255,.0),rgba(255,255,255,.7)),
    #eef2f7;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px 14px;
}
.ref-attorney-card{
  width:100%;
  background:rgba(255,255,255,.97);
  border:1px solid #d4dde8;
  border-radius:12px;
  padding:20px;
  box-shadow:0 12px 28px rgba(6,38,94,.14);
}
.ref-attorney-title{
  display:flex;
  gap:10px;
  align-items:center;
  color:var(--navy);
  font-size:20px;
  font-weight:1000;
  line-height:1.08;
}
.ref-attorney-title .scale{
  font-size:32px;
}
.ref-attorney-card p{
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}
.ref-attorney-card .btn{
  width:100%;
  text-align:center;
  display:block;
}
.ref-attorney-card .fine{
  font-size:10px;
  font-style:italic;
  margin-top:10px;
}
.ref-feature-strip{
  background:#fff;
  border-top:1px solid #e3e9f0;
  border-bottom:1px solid #e3e9f0;
}
.ref-feature-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.ref-feature{
  min-height:78px;
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  padding:12px 14px;
  border-right:1px solid #e8edf3;
  color:var(--navy);
  font-size:13px;
  font-weight:900;
}
.ref-feature:last-child{border-right:0}
.ref-feature .ico{
  font-size:25px;
  color:var(--navy);
}
.ref-feature.notary{
  background:#fff7bf;
  border-radius:20px;
  margin:9px 10px;
  min-height:58px;
}
.ref-feature.notary .ico{color:#8a6500}

@media(max-width:1100px){
  .ref-head-top{grid-template-columns:1fr}
  .ref-contact{justify-content:flex-start;flex-wrap:wrap}
  .ref-hero-grid{grid-template-columns:42% 58%}
  .ref-attorney-zone{grid-column:1/-1;padding:18px}
  .ref-attorney-card{max-width:640px}
}
@media(max-width:760px){
  .ref-nav-inner{gap:16px;overflow-x:auto;justify-content:flex-start}
  .ref-hero-grid{grid-template-columns:1fr}
  .ref-hero-copy{padding:28px 0}
  .ref-family{min-height:350px}
  .ref-hero-copy h1{font-size:42px}
  .ref-feature-grid{grid-template-columns:1fr 1fr}
}

/* ===== V20 exact reference intro ===== */
.reference-intro-exact{
  position:relative;
  width:100%;
  background:#fff;
  overflow:hidden;
  border-bottom:1px solid #dfe6ef;
}
.reference-intro-exact img{
  display:block;
  width:100%;
  height:auto;
}
.reference-hotspot{
  position:absolute;
  display:block;
  z-index:3;
  border-radius:8px;
  text-indent:-9999px;
  overflow:hidden;
}
.reference-hotspot:hover{
  box-shadow:0 0 0 3px rgba(255,255,255,.45);
}
.reference-start{
  left:2.8%;
  top:68.4%;
  width:24.2%;
  height:9.2%;
}
.reference-attorney{
  left:77.3%;
  top:50.6%;
  width:19.4%;
  height:8.5%;
}
.reference-photo-center{
  object-fit:contain !important;
}
@media(max-width:760px){
  .reference-hotspot{display:none}
}

/* ===== V21: full-width composition to match the hero ===== */

/* Wider page rhythm */
.container{
  width:min(1460px, calc(100% - 40px)) !important;
  max-width:1460px !important;
}

/* Header/logo proportions */
.ref-head-top{
  grid-template-columns:1.2fr .8fr !important;
  padding:10px 0 8px !important;
}
.ref-logo-wrap img{
  width:min(470px,100%) !important;
}
.ref-logo-sub{
  margin-top:2px !important;
  font-size:12px !important;
}
.ref-logo-sub .yellow{
  font-size:16px !important;
  padding:4px 9px !important;
}
.ref-contact{
  gap:20px !important;
}
.ref-book{
  padding:13px 18px !important;
}

/* Main section width/padding */
.section{
  padding:48px 0 !important;
}
.section-soft{
  padding:48px 0 !important;
}
.section-heading{
  max-width:none !important;
}
.section-heading.centered{
  max-width:1100px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Stronger section title bands */
.heading-row{
  margin-bottom:26px !important;
}
.heading-row h2{
  font-size:34px !important;
  letter-spacing:-.5px !important;
}
.section-heading h2{
  font-size:38px !important;
  letter-spacing:-.7px !important;
}

/* Pricing cards span the page like the hero */
.price-grid{
  grid-template-columns:repeat(3, 1fr) !important;
  gap:18px !important;
}
.price-card{
  min-height:100%;
}
.addons{
  grid-template-columns:repeat(4,1fr) !important;
  gap:12px !important;
}
.addon{
  padding:14px 16px !important;
}

/* Process section across page */
.steps{
  grid-template-columns:repeat(4,1fr) !important;
  gap:18px !important;
}
.step{
  padding:22px !important;
}

/* Filing, speed, support sections become broader */
.simple-choice-grid{
  grid-template-columns:repeat(3,1fr) !important;
  gap:18px !important;
}
.simple-choice{
  padding:24px !important;
}
.support-simple{
  grid-template-columns:repeat(3,1fr) !important;
  gap:18px !important;
}
.support-simple article{
  padding:24px !important;
}

/* Interpretation and legal-help sections use more horizontal space */
.interpret-simple{
  grid-template-columns:1.35fr .65fr !important;
  gap:34px !important;
  padding:30px !important;
}
.legal-help{
  grid-template-columns:1fr auto !important;
  padding:30px 34px !important;
}

/* FAQ should not feel narrow */
.faq-wrap{
  max-width:1180px !important;
}

/* CTA full-width visual weight */
.cta-strip{
  padding:30px 0 !important;
}
.cta-inner{
  max-width:none !important;
}

/* Footer */
.footer .container{
  max-width:1460px !important;
}

/* Blue disclosure bar aligns with full-width layout */
.topbar .container{
  width:min(1460px, calc(100% - 40px)) !important;
  max-width:1460px !important;
}

/* Responsive refinements */
@media(max-width:1100px){
  .price-grid{grid-template-columns:repeat(2,1fr) !important}
  .addons{grid-template-columns:repeat(2,1fr) !important}
  .steps{grid-template-columns:repeat(2,1fr) !important}
  .ref-head-top{grid-template-columns:1fr !important}
}
@media(max-width:780px){
  .container,.topbar .container{width:min(100% - 24px,1460px) !important}
  .price-grid,.addons,.steps,.simple-choice-grid,.support-simple{grid-template-columns:1fr !important}
  .interpret-simple,.legal-help{grid-template-columns:1fr !important}
  .section,.section-soft{padding:34px 0 !important}
  .section-heading h2{font-size:31px !important}
  .ref-logo-wrap img{width:min(400px,100%) !important}
}


/* ===== V22 header + checkout polish ===== */

/* Homepage header: smaller logo and further left, aligned to hero composition */
.ref-header .container{
  width:calc(100% - 56px) !important;
  max-width:none !important;
}
.ref-head-top{
  grid-template-columns:.9fr 1.1fr !important;
  padding:8px 0 6px !important;
}
.ref-logo-wrap{
  align-items:flex-start !important;
}
.ref-logo-wrap img{
  width:360px !important;
  max-width:100% !important;
}
.ref-logo-sub{
  font-size:11px !important;
  margin-top:1px !important;
}
.ref-logo-sub .yellow{
  font-size:14px !important;
  padding:3px 8px !important;
}
.ref-contact{
  justify-content:flex-end !important;
  gap:18px !important;
}
.ref-contact-item strong{font-size:14px !important}
.ref-contact-item span{font-size:11px !important}
.ref-contact-ico{font-size:21px !important}
.ref-book{
  padding:11px 16px !important;
  font-size:13px !important;
}
.ref-nav-inner{
  min-height:46px !important;
}

/* Checkout header: compact instead of dominating the page */
.navbar{
  background:#fff;
  border-bottom:1px solid var(--line);
}
.navbar .nav-inner{
  min-height:68px !important;
  display:flex;
  align-items:center;
  gap:16px;
}
.navbar .logo-wrap{
  display:block;
  flex:0 0 auto;
}
.navbar .logo-wrap img{
  width:235px !important;
  max-width:235px !important;
  height:auto !important;
}
.navbar .brand-notary-line{
  font-size:10px !important;
  line-height:1.2;
  margin:0 !important;
  white-space:nowrap;
}
.navbar .brand-notary-line .yellow{
  font-size:11px !important;
  padding:3px 7px !important;
}
.navbar .navlinks{
  gap:14px !important;
}
.navbar .phone-btn{
  font-size:12px !important;
  padding:9px 12px !important;
}
.checkout-hero{
  padding:22px 0 18px !important;
}
.checkout-hero h1{
  font-size:34px !important;
  margin:4px 0 7px !important;
}
.checkout-shell{
  padding-top:22px !important;
}

/* Checkout service rows: cleaner, flatter, less outlined */
.checkout-panel .service-list{
  gap:0 !important;
  border-top:1px solid #e8edf3;
}
.checkout-panel .service-row{
  border:0 !important;
  border-bottom:1px solid #e8edf3 !important;
  border-radius:0 !important;
  padding:14px 4px !important;
  background:transparent !important;
  box-shadow:none !important;
}
.checkout-panel .service-row:hover{
  border-color:#e8edf3 !important;
  background:#fafbfd !important;
}
.checkout-panel .service-row.active{
  background:#f7f9fc !important;
}
.checkout-panel .service-row.interpretation-deposit,
.checkout-panel .service-row.checkout-notary-row{
  border-left:0 !important;
  border-right:0 !important;
}
.checkout-panel .service-name{
  font-size:14px;
}
.checkout-panel .service-desc{
  font-size:11px;
  line-height:1.4;
}
.checkout-panel .service-price{
  font-size:14px;
}

/* One subtle quantity control instead of four separate outlined boxes */
.checkout-panel .qty-control{
  gap:0 !important;
  margin-left:8px !important;
  background:#f0f3f7;
  border-radius:999px;
  padding:2px;
  overflow:hidden;
}
.checkout-panel .qty-btn{
  width:30px !important;
  height:30px !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  font-size:18px;
  color:var(--navy);
}
.checkout-panel .qty-btn:hover{
  background:#dde5ef !important;
}
.checkout-panel .qty-input{
  width:38px !important;
  height:30px !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:none !important;
  -moz-appearance:textfield;
}
.checkout-panel .qty-input::-webkit-outer-spin-button,
.checkout-panel .qty-input::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

/* Remove decorative pseudo-label from notary row so service rows stay clean */
.checkout-notary-row:before{
  display:none !important;
  content:none !important;
}

@media(max-width:900px){
  .ref-header .container{width:calc(100% - 28px) !important}
  .ref-logo-wrap img{width:320px !important}
  .navbar .brand-notary-line{display:none !important}
}
@media(max-width:650px){
  .navbar .logo-wrap img{
    width:190px !important;
    max-width:190px !important;
  }
  .navbar .phone-btn{display:none !important}
}

/* ===== V23: remove nested/sub-box appearance inside checkout line items ===== */

/* Each service is now one clean flat row */
.checkout-panel .service-row,
.checkout-panel label.service-row,
.checkout-panel .service-row.active,
.checkout-panel .service-row:hover{
  border:0 !important;
  border-bottom:1px solid #e6ebf1 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:#fff !important;
  padding:15px 4px !important;
}

/* Remove borders/backgrounds from every child area inside a service row */
.checkout-panel .service-row > *,
.checkout-panel .service-row > div,
.checkout-panel .service-row .service-name,
.checkout-panel .service-row .service-desc,
.checkout-panel .service-row .service-price{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  border-radius:0 !important;
}

/* Checkbox stays simple and unobtrusive */
.checkout-panel .service-row > input.svc{
  width:18px !important;
  height:18px !important;
  margin:2px 10px 0 0 !important;
  padding:0 !important;
  box-shadow:none !important;
}

/* Quantity control: no enclosing pill, no input box */
.checkout-panel .qty-control{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  margin:0 8px !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:visible !important;
}
.checkout-panel .qty-btn{
  width:28px !important;
  height:28px !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:50% !important;
  background:#eef2f7 !important;
  color:var(--navy) !important;
  font-size:17px !important;
  line-height:28px !important;
}
.checkout-panel .qty-btn:hover{
  background:#dfe6ef !important;
}
.checkout-panel .qty-input{
  width:30px !important;
  min-width:30px !important;
  height:28px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  background:transparent !important;
  text-align:center !important;
  font-weight:900 !important;
}

/* No special bordered treatment for notary/interpretation rows */
.checkout-panel .checkout-notary-row,
.checkout-panel .interpretation-deposit,
.checkout-panel .interpretation-billed-later{
  border-left:0 !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:1px solid #e6ebf1 !important;
  background:#fff !important;
}
.checkout-panel .checkout-notary-row:before{
  display:none !important;
  content:none !important;
}

/* Price is plain text, not a badge */
.checkout-panel .service-price{
  padding:0 !important;
  color:var(--navy) !important;
  font-weight:900 !important;
  white-space:nowrap;
}

/* The entire list reads as one clean table-like block */
.checkout-panel .checkout-section-title + .service-row,
.checkout-panel .service-list{
  border-top:1px solid #e6ebf1 !important;
}

/* ===== V25: checkout style requested by user ===== */

/* Compact checkout header */
.checkout-page .navbar .nav-inner,
#staffSite .navbar .nav-inner{
  min-height:72px !important;
  gap:14px !important;
}
.checkout-page .navbar .logo-wrap img,
#staffSite .navbar .logo-wrap img{
  width:220px !important;
  max-width:220px !important;
  height:auto !important;
}
.checkout-page .brand-notary-line,
#staffSite .brand-notary-line{
  font-size:10px !important;
  margin:0 8px 0 0 !important;
  white-space:nowrap;
}

/* Home / Español as separate outlined buttons */
.checkout-page .navlinks,
#staffSite .navlinks{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
}
.checkout-page .navlinks a,
#staffSite .navlinks a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:8px 13px !important;
  border:1px solid #b8c3d2 !important;
  border-radius:7px !important;
  background:#fff !important;
  color:var(--navy) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  line-height:1 !important;
}
.checkout-page .navlinks a:hover,
#staffSite .navlinks a:hover{
  border-color:var(--navy) !important;
  background:#f4f7fb !important;
}

/* Strong red phone button */
.checkout-page .phone-btn,
#staffSite .phone-btn{
  display:inline-flex !important;
  background:var(--red) !important;
  color:#fff !important;
  padding:12px 17px !important;
  border-radius:7px !important;
  font-size:14px !important;
  font-weight:900 !important;
  min-height:42px !important;
  white-space:nowrap !important;
}

/* Compact hero so checkout starts quickly */
.checkout-page .checkout-hero,
#staffSite .checkout-hero{
  padding:24px 0 20px !important;
}
.checkout-page .checkout-hero h1,
#staffSite .checkout-hero h1{
  font-size:36px !important;
  margin:5px 0 8px !important;
}
.checkout-page .checkout-shell,
#staffSite .checkout-shell{
  padding-top:24px !important;
}

/* Exactly ONE box around each service line item */
.checkout-panel .service-list{
  display:grid !important;
  gap:10px !important;
  border:0 !important;
}
.checkout-panel .service-row,
.checkout-panel label.service-row,
.checkout-panel .service-row:hover,
.checkout-panel .service-row.active,
.checkout-panel .checkout-notary-row,
.checkout-panel .interpretation-deposit{
  display:grid !important;
  grid-template-columns:auto 1fr auto auto !important;
  gap:12px !important;
  align-items:center !important;
  border:1px solid #ccd5e1 !important;
  border-radius:9px !important;
  background:#fff !important;
  padding:13px 14px !important;
  box-shadow:none !important;
  outline:0 !important;
}
.checkout-panel .service-row:hover{
  border-color:#9eacbf !important;
  background:#fbfcfe !important;
}
.checkout-panel .service-row.active{
  border-color:#7f92ab !important;
  background:#f8faff !important;
}

/* No child/sub-boxes */
.checkout-panel .service-row > div:not(.qty-control),
.checkout-panel .service-name,
.checkout-panel .service-desc,
.checkout-panel .service-price{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  border-radius:0 !important;
}
.checkout-panel .service-row > input.svc{
  width:19px !important;
  height:19px !important;
  margin:0 !important;
}

/* Quantity: plain minus / number / plus, no surrounding box */
.checkout-panel .qty-control{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.checkout-panel .qty-btn{
  width:28px !important;
  height:28px !important;
  border:0 !important;
  border-radius:50% !important;
  background:#eef2f7 !important;
  color:var(--navy) !important;
  font-size:17px !important;
  font-weight:900 !important;
  padding:0 !important;
  line-height:28px !important;
  box-shadow:none !important;
}
.checkout-panel .qty-btn:hover{
  background:#dde5ef !important;
}
.checkout-panel .qty-input{
  width:30px !important;
  min-width:30px !important;
  height:28px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:center !important;
  font-weight:900 !important;
  -moz-appearance:textfield !important;
}
.checkout-panel .qty-input::-webkit-outer-spin-button,
.checkout-panel .qty-input::-webkit-inner-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}
.checkout-panel .service-price{
  font-size:14px !important;
  font-weight:900 !important;
  color:var(--navy) !important;
  white-space:nowrap !important;
}
.checkout-notary-row:before{
  display:none !important;
  content:none !important;
}

/* Bigger, obvious red Continue / Create Order button */
.summary-panel .checkout-actions{
  display:grid !important;
  gap:10px !important;
  margin-top:18px !important;
}
.summary-panel #createOrder{
  width:100% !important;
  min-height:56px !important;
  background:var(--red) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:8px !important;
  font-size:18px !important;
  font-weight:1000 !important;
  padding:15px 18px !important;
  cursor:pointer !important;
}
.summary-panel #createOrder:hover{
  filter:brightness(.94);
}
.summary-panel .checkout-actions .outline-btn{
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Keep summary visible and balanced */
.summary-panel{
  position:sticky !important;
  top:18px !important;
}

@media(max-width:900px){
  .checkout-panel .service-row,
  .checkout-panel label.service-row{
    grid-template-columns:auto 1fr auto !important;
  }
  .checkout-panel .qty-control{
    grid-column:2/3 !important;
    justify-content:flex-start !important;
  }
  .checkout-panel .service-price{
    grid-column:3 !important;
    grid-row:1 !important;
  }
}
@media(max-width:700px){
  .checkout-page .brand-notary-line,
  #staffSite .brand-notary-line{display:none !important}
  .checkout-page .phone-btn,
  #staffSite .phone-btn{padding:10px 12px !important;font-size:12px !important}
}

/* ===== V26: tighter V8-like checkout spacing + header lockup alignment ===== */

/* Checkout line-item typography/spacing: compact like V8 */
.checkout-panel .service-row{
  padding-top:11px !important;
  padding-bottom:11px !important;
}
.checkout-panel .service-row > div:nth-child(2){
  display:block !important;
}
.checkout-panel .service-name{
  margin:0 0 2px 0 !important;
  line-height:1.18 !important;
}
.checkout-panel .service-desc{
  margin:0 !important;
  line-height:1.22 !important;
}
.checkout-panel .service-row p,
.checkout-panel .service-row div,
.checkout-panel .service-row span{
  margin-top:0 !important;
  margin-bottom:0 !important;
}
.checkout-panel .service-row .service-desc + *{
  margin-top:2px !important;
}

/* Main homepage brand lockup: logo left, services/notary to its right */
.ref-logo-wrap{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:18px !important;
}
.ref-logo-wrap > a{
  display:block !important;
  flex:0 0 auto !important;
}
.ref-logo-wrap img{
  width:330px !important;
  max-width:330px !important;
  display:block !important;
}
.ref-logo-sub{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  font-size:11px !important;
  line-height:1.1 !important;
}
.ref-logo-sub .yellow{
  font-size:14px !important;
  padding:5px 9px !important;
}
.ref-logo-sub > span:first-child{
  white-space:nowrap;
}

/* Keep entire left header block aligned with hero's left edge */
.ref-header .container{
  width:calc(100% - 56px) !important;
  max-width:none !important;
}
.ref-head-top{
  grid-template-columns:1fr 1fr !important;
  align-items:center !important;
}

@media(max-width:980px){
  .ref-logo-wrap{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:6px !important;
  }
  .ref-logo-sub{
    flex-direction:row !important;
    flex-wrap:wrap !important;
  }
}
@media(max-width:700px){
  .ref-logo-wrap img{
    width:280px !important;
    max-width:100% !important;
  }
}

/* ===== V27: exact V8-height service rows + better header balance ===== */

/* HEADER: logo left, service/notary labels grouped toward Louisville/phone on right */
.ref-head-top{
  grid-template-columns:.78fr 1.22fr !important;
  align-items:center !important;
  gap:24px !important;
}
.ref-logo-wrap{
  display:block !important;
}
.ref-logo-wrap img{
  width:320px !important;
  max-width:320px !important;
}
.ref-right-cluster{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:20px !important;
  min-width:0;
}
.ref-right-cluster .ref-logo-sub{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-end !important;
  justify-content:center !important;
  gap:5px !important;
  margin:0 !important;
  min-width:max-content;
  text-align:right;
}
.ref-right-cluster .ref-logo-sub > span:first-child{
  white-space:nowrap;
  font-size:11px !important;
}
.ref-right-cluster .ref-logo-sub .yellow{
  font-size:14px !important;
  padding:4px 9px !important;
}
.ref-right-cluster .ref-contact{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:18px !important;
}

/* CHECKOUT: reproduce V8 service-row sizing exactly */
.checkout-panel .service-list{
  display:grid !important;
  gap:10px !important;
  border:0 !important;
}

.checkout-panel .service-row,
.checkout-panel label.service-row,
.checkout-panel .service-row:hover,
.checkout-panel .service-row.active,
.checkout-panel .checkout-notary-row,
.checkout-panel .interpretation-deposit{
  display:grid !important;
  grid-template-columns:auto 1fr auto auto !important;
  gap:12px !important;
  align-items:center !important;

  /* V8 values */
  border:1px solid var(--line) !important;
  border-radius:9px !important;
  padding:13px !important;
  background:#fff !important;

  outline:0 !important;
  box-shadow:none !important;
  min-height:0 !important;
  height:auto !important;
}

.checkout-panel .service-row:hover{
  border-color:#aebbd0 !important;
}
.checkout-panel .service-row.active{
  background:#fff !important;
}

/* Exact V8 text rhythm */
.checkout-panel .service-name{
  font-weight:850 !important;
  color:var(--navy) !important;
  margin:0 !important;
  line-height:1.2 !important;
}
.checkout-panel .service-desc{
  font-size:12px !important;
  color:var(--muted) !important;
  margin-top:2px !important;
  margin-bottom:0 !important;
  line-height:1.25 !important;
}
.checkout-panel .service-row > div:nth-child(2){
  margin:0 !important;
  padding:0 !important;
  line-height:normal !important;
}

/* Critical fix: override the general V8 input[type=number] rule INSIDE quantity controls.
   That broad rule was making each row taller than original V8 quantity rows. */
.checkout-panel .qty-control{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  margin-left:10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
.checkout-panel .qty-btn{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid var(--line) !important;
  background:#fff !important;
  color:var(--navy) !important;
  border-radius:6px !important;
  font-weight:900 !important;
  line-height:1 !important;
  box-shadow:none !important;
}
.checkout-panel .qty-btn:hover{
  background:#eef3fb !important;
}
.checkout-panel .qty-input,
.checkout-panel input.qty-input[type="number"]{
  width:48px !important;
  min-width:48px !important;
  height:30px !important;
  min-height:30px !important;
  margin:0 !important;
  padding:6px 4px !important;
  text-align:center !important;
  border:1px solid #bdc8d7 !important;
  border-radius:6px !important;
  font-weight:800 !important;
  color:var(--navy) !important;
  background:#fff !important;
  box-shadow:none !important;
  line-height:1 !important;
  box-sizing:border-box !important;
  -moz-appearance:textfield !important;
}
.checkout-panel .qty-input::-webkit-outer-spin-button,
.checkout-panel .qty-input::-webkit-inner-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}

/* Checkbox and price exactly compact */
.checkout-panel .service-row input[type="checkbox"]{
  width:19px !important;
  height:19px !important;
  margin:0 !important;
}
.checkout-panel .service-price{
  padding:0 !important;
  margin:0 !important;
  font-size:14px !important;
  font-weight:900 !important;
  color:var(--navy) !important;
  white-space:nowrap !important;
  background:transparent !important;
  border:0 !important;
}

/* Prevent extra inner spacing from newer service types */
.checkout-panel .checkout-notary-row:before{
  display:none !important;
  content:none !important;
}
.checkout-panel .service-extra{
  margin-top:6px !important;
}

@media(max-width:1120px){
  .ref-head-top{
    grid-template-columns:1fr !important;
  }
  .ref-right-cluster{
    justify-content:flex-start !important;
  }
  .ref-right-cluster .ref-logo-sub{
    align-items:flex-start !important;
    text-align:left !important;
  }
}
@media(max-width:760px){
  .ref-right-cluster{
    flex-direction:column !important;
    align-items:flex-start !important;
  }
  .ref-right-cluster .ref-contact{
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
  }

  .checkout-panel .service-row,
  .checkout-panel label.service-row{
    grid-template-columns:auto 1fr auto !important;
  }
  .checkout-panel .qty-control{
    grid-column:2/3 !important;
    justify-content:flex-start !important;
    margin:6px 0 0 !important;
  }
  .checkout-panel .service-price{
    grid-column:3 !important;
    grid-row:1 !important;
  }
}

/* ===== V28: uniform checkout rows + centered header service badges ===== */

/* Homepage header is now three distinct columns:
   logo | immigration prep + notary | Louisville/phone/CTA */
.ref-head-top{
  display:grid !important;
  grid-template-columns:auto minmax(250px, 1fr) auto !important;
  align-items:center !important;
  gap:28px !important;
}
.ref-logo-wrap{
  display:block !important;
}
.ref-logo-wrap img{
  width:320px !important;
  max-width:320px !important;
}
.ref-head-top > .ref-logo-sub{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  text-align:center !important;
}
.ref-head-top > .ref-logo-sub > span:first-child{
  white-space:nowrap !important;
  font-size:11px !important;
}
.ref-head-top > .ref-logo-sub .yellow{
  font-size:14px !important;
  padding:4px 9px !important;
}
.ref-head-top > .ref-contact{
  justify-content:flex-end !important;
  align-items:center !important;
  gap:18px !important;
}

/* All checkout service items now use one identical V8-like card geometry */
.checkout-panel .service-list{
  display:grid !important;
  gap:10px !important;
  border:0 !important;
}
.checkout-panel .service-list > .service-row,
.checkout-panel .service-list > label.service-row{
  display:grid !important;
  grid-template-columns:auto 1fr auto auto !important;
  gap:12px !important;
  align-items:center !important;
  border:1px solid var(--line) !important;
  border-radius:9px !important;
  padding:13px !important;
  background:#fff !important;
  min-height:0 !important;
  height:auto !important;
  box-shadow:none !important;
  outline:0 !important;
}
.checkout-panel .service-list > .service-row:hover{
  border-color:#aebbd0 !important;
  background:#fff !important;
}
.checkout-panel .service-list > .service-row.active{
  background:#fff !important;
}

/* Same compact text rhythm across EVERY line item */
.checkout-panel .service-list > .service-row .service-name{
  margin:0 !important;
  line-height:1.15 !important;
  font-weight:850 !important;
}
.checkout-panel .service-list > .service-row .service-desc{
  margin:2px 0 0 !important;
  line-height:1.20 !important;
  font-size:12px !important;
}
.checkout-panel .service-list > .service-row > div:nth-child(2){
  margin:0 !important;
  padding:0 !important;
}

/* Same compact quantity control on every item */
.checkout-panel .service-list > .service-row .qty-control{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  margin:0 0 0 10px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
.checkout-panel .service-list > .service-row .qty-btn{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  min-height:28px !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid var(--line) !important;
  border-radius:6px !important;
  background:#fff !important;
  line-height:1 !important;
}
.checkout-panel .service-list > .service-row .qty-input,
.checkout-panel .service-list > .service-row input.qty-input[type="number"]{
  width:48px !important;
  min-width:48px !important;
  height:30px !important;
  min-height:30px !important;
  margin:0 !important;
  padding:5px 4px !important;
  border:1px solid #bdc8d7 !important;
  border-radius:6px !important;
  background:#fff !important;
  text-align:center !important;
  line-height:1 !important;
  box-sizing:border-box !important;
}
.checkout-panel .service-list > .service-row .service-price{
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  font-weight:900 !important;
  white-space:nowrap !important;
}
.checkout-panel .service-list > .checkout-notary-row:before{
  display:none !important;
  content:none !important;
}

/* Shipping option cards stay nested below the single mailing row */
.checkout-panel .service-list > .shipping-options{
  margin-top:0 !important;
}

@media(max-width:1120px){
  .ref-head-top{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .ref-head-top > .ref-logo-sub{
    align-items:flex-start !important;
    text-align:left !important;
  }
  .ref-head-top > .ref-contact{
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
  }
}

/* ===== V29: compact checkout rows — smaller boxes and tighter spacing ===== */

/* Make every service line compact */
.checkout-panel .service-list{
  gap:6px !important;
}

.checkout-panel .service-list > .service-row,
.checkout-panel .service-list > label.service-row{
  grid-template-columns:auto 1fr auto auto !important;
  gap:8px !important;
  padding:8px 10px !important;
  border:1px solid var(--line) !important;
  border-radius:7px !important;
  min-height:0 !important;
  height:auto !important;
  background:#fff !important;
}

/* Tight text spacing */
.checkout-panel .service-list > .service-row .service-name{
  font-size:13px !important;
  line-height:1.08 !important;
  margin:0 !important;
}

.checkout-panel .service-list > .service-row .service-desc{
  font-size:10.5px !important;
  line-height:1.12 !important;
  margin:1px 0 0 !important;
}

.checkout-panel .service-list > .service-row > div:nth-child(2){
  padding:0 !important;
  margin:0 !important;
}

/* Smaller checkbox */
.checkout-panel .service-list > .service-row input[type="checkbox"]{
  width:17px !important;
  height:17px !important;
  margin:0 !important;
}

/* Smaller quantity controls */
.checkout-panel .service-list > .service-row .qty-control{
  gap:4px !important;
  margin-left:6px !important;
}

.checkout-panel .service-list > .service-row .qty-btn{
  width:24px !important;
  height:24px !important;
  min-width:24px !important;
  min-height:24px !important;
  border-radius:5px !important;
  font-size:15px !important;
  padding:0 !important;
}

.checkout-panel .service-list > .service-row .qty-input,
.checkout-panel .service-list > .service-row input.qty-input[type="number"]{
  width:38px !important;
  min-width:38px !important;
  height:25px !important;
  min-height:25px !important;
  padding:3px 2px !important;
  font-size:12px !important;
  border-radius:5px !important;
}

/* Smaller price column */
.checkout-panel .service-list > .service-row .service-price{
  font-size:13px !important;
  margin-left:2px !important;
}

/* Keep special services exactly the same size as every other row */
.checkout-panel .service-list > .checkout-notary-row,
.checkout-panel .service-list > .interpretation-deposit{
  padding:8px 10px !important;
  gap:8px !important;
  border-radius:7px !important;
}

/* Slightly tighten section spacing on checkout */
.checkout-panel .checkout-section-title{
  margin-bottom:8px !important;
}
.checkout-panel .checkout-section-title h2{
  margin-bottom:0 !important;
}

/* ===== V32: homepage brand orientation + attorney resource nav buttons ===== */

/* Home page brand block now uses same orientation as checkout */
.home-checkout-brand{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap:12px !important;
}
.home-checkout-brand > .logo-wrap{
  flex:0 0 auto !important;
}
.home-checkout-brand > .logo-wrap img{
  width:240px !important;
  max-width:240px !important;
  height:auto !important;
}
.home-checkout-brand > .brand-notary-line{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
  font-size:10px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
.home-checkout-brand > .brand-notary-line .yellow{
  font-size:11px !important;
  padding:3px 7px !important;
}

/* keep homepage three-part header balance */
.ref-head-top{
  grid-template-columns:auto 1fr auto !important;
  align-items:center !important;
  gap:24px !important;
}
.ref-head-top > .home-checkout-brand{
  justify-self:start !important;
}
.ref-head-top > .ref-contact{
  justify-self:end !important;
}

/* Attorney resources page nav = same button treatment as checkout */
.attorney-nav-buttons{
  display:flex !important;
  gap:8px !important;
  align-items:center !important;
  margin-left:auto !important;
}
.attorney-nav-buttons a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:8px 13px !important;
  border:1px solid #b8c3d2 !important;
  border-radius:7px !important;
  background:#fff !important;
  color:var(--navy) !important;
  font-weight:800 !important;
  text-decoration:none !important;
  line-height:1 !important;
}
.attorney-nav-buttons a:hover{
  border-color:var(--navy) !important;
  background:#f4f7fb !important;
}

@media(max-width:980px){
  .home-checkout-brand{
    flex-wrap:wrap !important;
  }
  .home-checkout-brand > .brand-notary-line{
    white-space:normal !important;
  }
}

/* ===== V37: Spanish-specific clean intro (no hero image) ===== */
.spanish-clean-intro{
  background:linear-gradient(135deg,#f8fbff 0%,#eef4fb 100%);
  border-bottom:1px solid #dfe7f0;
}
.spanish-clean-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:28px;
  align-items:stretch;
  padding:34px 0 28px;
}
.spanish-clean-main{
  background:#fff;
  border:1px solid #d8e1ec;
  border-radius:14px;
  padding:30px 32px;
  box-shadow:0 8px 24px rgba(6,38,94,.06);
}
.spanish-clean-kicker{
  font-size:13px;
  font-weight:1000;
  letter-spacing:.06em;
  color:var(--red);
  margin-bottom:8px;
}
.spanish-clean-main h1{
  font-size:46px;
  line-height:1.02;
  color:var(--navy);
  margin:0 0 10px;
  letter-spacing:-1px;
}
.spanish-clean-sub{
  font-size:20px;
  color:var(--navy);
  font-weight:800;
  margin-bottom:18px;
}
.spanish-clean-list{
  display:grid;
  gap:10px;
  margin:18px 0 22px;
}
.spanish-clean-item{
  display:flex;
  gap:10px;
  align-items:center;
  font-weight:850;
  color:var(--navy);
  font-size:16px;
}
.spanish-clean-check{
  width:26px;
  height:26px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--red);
  color:#fff;
  flex:0 0 26px;
}
.spanish-clean-notary{
  display:inline-block;
  background:#ffd91a;
  padding:5px 10px;
  border-radius:5px;
  font-weight:1000;
}
.spanish-clean-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.spanish-clean-actions .btn{
  min-width:190px;
  text-align:center;
}
.spanish-attorney-card{
  background:#fff;
  border:1px solid #d8e1ec;
  border-radius:14px;
  padding:28px;
  box-shadow:0 8px 24px rgba(6,38,94,.06);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.spanish-attorney-card .icon{
  width:52px;
  height:52px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#eef3fb;
  font-size:26px;
  margin-bottom:12px;
}
.spanish-attorney-card h2{
  font-size:25px;
  line-height:1.08;
  color:var(--navy);
  margin:0 0 10px;
}
.spanish-attorney-card p{
  color:var(--muted);
  font-size:14px;
  line-height:1.4;
}
.spanish-intro-strip{
  background:#fff;
  border-top:1px solid #e4eaf1;
}
.spanish-intro-strip .container{
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.spanish-intro-feature{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 14px;
  border-right:1px solid #e8edf3;
  color:var(--navy);
  font-weight:850;
  font-size:13px;
  text-align:left;
}
.spanish-intro-feature:last-child{
  border-right:0;
}
.spanish-intro-feature .ico{
  font-size:23px;
}
.spanish-intro-feature.notary{
  background:#fff7bf;
}
@media(max-width:900px){
  .spanish-clean-grid{grid-template-columns:1fr}
  .spanish-intro-strip .container{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .spanish-clean-main h1{font-size:36px}
  .spanish-intro-strip .container{grid-template-columns:1fr}
}

/* ===== V38 Spanish visual hero ===== */
.spanish-visual-hero{
  background:#fff;
  border-bottom:1px solid #dfe7f0;
}
.spanish-visual-hero .hero-frame{
  width:100%;
  overflow:hidden;
  background:#eef4fb;
}
.spanish-visual-hero img{
  display:block;
  width:100%;
  height:auto;
}
.spanish-resource-strip{
  background:#fff;
  border-top:1px solid #e5ebf2;
  border-bottom:1px solid #e5ebf2;
}
.spanish-resource-inner{
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
  padding:18px 0;
}
.spanish-resource-copy{
  display:flex;
  align-items:flex-start;
  gap:14px;
}
.spanish-resource-icon{
  width:48px;
  height:48px;
  border-radius:12px;
  background:#eef3fb;
  display:grid;
  place-items:center;
  font-size:24px;
  flex:0 0 48px;
}
.spanish-resource-copy h3{
  margin:0 0 4px;
  color:var(--navy);
  font-size:20px;
}
.spanish-resource-copy p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}
.spanish-trust-strip{
  background:#f7f9fc;
  border-bottom:1px solid #e4eaf1;
}
.spanish-trust-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.spanish-trust{
  padding:14px 16px;
  text-align:center;
  color:var(--navy);
  font-weight:850;
  font-size:13px;
  border-right:1px solid #e5eaf0;
}
.spanish-trust:last-child{border-right:0}
@media(max-width:800px){
  .spanish-resource-inner{grid-template-columns:1fr}
  .spanish-trust-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .spanish-trust-grid{grid-template-columns:1fr}
}

/* ===== V39 Spanish structured hero ===== */
.es-hero{
  background:#f5f7fa;
  border-bottom:1px solid #dfe6ef;
}
.es-hero-grid{
  display:grid;
  grid-template-columns:31% 47% 22%;
  min-height:420px;
  max-height:440px;
  overflow:hidden;
}
.es-hero-copy{
  background:linear-gradient(90deg,#f7f8fa 0%,#f7f8fa 88%,#eef2f6 100%);
  padding:30px 18px 26px 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.es-hero-copy h1{
  margin:0 0 10px;
  color:var(--navy);
  font-size:48px;
  line-height:.98;
  font-weight:1000;
  letter-spacing:-1.4px;
}
.es-hero-sub{
  color:var(--navy);
  font-size:19px;
  line-height:1.18;
  margin-bottom:14px;
}
.es-hero-bullets{
  display:grid;
  gap:7px;
  margin:10px 0 18px;
}
.es-hero-bullet{
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--navy);
  font-size:15px;
  font-weight:900;
}
.es-hero-check{
  width:25px;height:25px;border-radius:50%;
  background:var(--red);color:#fff;
  display:grid;place-items:center;
  flex:0 0 25px;
}
.es-hero-notary{
  display:inline-block;
  background:#ffd91a;
  color:#06265e;
  padding:4px 9px;
  border-radius:5px;
  font-weight:1000;
}
.es-hero-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.es-hero-photo{
  min-height:420px;
  overflow:hidden;
  background:#dfe6ee;
}
.es-hero-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.es-attorney-zone{
  background:#eef2f7;
  padding:20px 14px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.es-attorney-card{
  width:100%;
  background:#fff;
  border:1px solid #d4dde8;
  border-radius:12px;
  padding:18px;
  box-shadow:0 10px 24px rgba(6,38,94,.10);
}
.es-attorney-title{
  display:flex;
  gap:9px;
  align-items:center;
  color:var(--navy);
  font-size:19px;
  font-weight:1000;
  line-height:1.08;
  margin-bottom:8px;
}
.es-attorney-card p{
  color:var(--muted);
  font-size:12px;
  line-height:1.38;
}
.es-attorney-card .btn{
  width:100%;
  text-align:center;
  display:block;
}
.es-attorney-card .fine{
  font-size:10px;
  margin-top:9px;
}
.es-feature-strip{
  background:#fff;
  border-top:1px solid #e3e9f0;
  border-bottom:1px solid #e3e9f0;
}
.es-feature-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.es-feature{
  min-height:72px;
  display:flex;
  gap:9px;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border-right:1px solid #e8edf3;
  color:var(--navy);
  font-size:12px;
  font-weight:900;
}
.es-feature:last-child{border-right:0}
.es-feature .ico{
  font-size:23px;
}
.es-feature.notary{
  background:#fff7bf;
}
@media(max-width:1100px){
  .es-hero-grid{grid-template-columns:42% 58%;max-height:none}
  .es-attorney-zone{grid-column:1/-1;padding:16px}
  .es-attorney-card{max-width:700px}
}
@media(max-width:760px){
  .es-hero-grid{grid-template-columns:1fr}
  .es-hero-copy{padding:28px 0}
  .es-hero-photo{min-height:340px}
  .es-hero-copy h1{font-size:40px}
  .es-feature-grid{grid-template-columns:1fr 1fr}
}

/* ===== V40 Spanish hero repair ===== */

/* Keep the Spanish hero proportional to the English hero and never clip the CTA */
.es-hero-grid{
  display:grid !important;
  grid-template-columns:31% 47% 22% !important;
  min-height:420px !important;
  max-height:none !important;
  overflow:visible !important;
  align-items:stretch !important;
}
.es-hero-copy{
  min-height:420px !important;
  padding:28px 18px 24px 0 !important;
  overflow:visible !important;
}
.es-hero-copy h1{
  font-size:46px !important;
  line-height:1 !important;
  margin-bottom:10px !important;
}
.es-hero-sub{
  font-size:18px !important;
  margin-bottom:12px !important;
}
.es-hero-bullets{
  gap:6px !important;
  margin:8px 0 15px !important;
}
.es-hero-bullet{
  font-size:14px !important;
}
.es-hero-actions{
  margin-top:2px !important;
  padding-bottom:2px !important;
}
.es-hero-actions .btn{
  min-height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:11px 18px !important;
}

.es-hero-photo{
  min-height:420px !important;
  overflow:hidden !important;
}
.es-hero-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}

/* Make the feature strip match the English hero strip more closely */
.es-feature-strip{
  background:#fff !important;
  border-top:1px solid #e3e9f0 !important;
  border-bottom:1px solid #e3e9f0 !important;
}
.es-feature-grid{
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
}
.es-feature{
  min-height:78px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  padding:12px 14px !important;
  border-right:1px solid #e7edf4 !important;
  color:var(--navy) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  text-align:left !important;
  background:#fff !important;
}
.es-feature:last-child{
  border-right:0 !important;
}
.es-feature .ico{
  width:38px !important;
  height:38px !important;
  flex:0 0 38px !important;
  border-radius:10px !important;
  display:grid !important;
  place-items:center !important;
  background:#eef3fb !important;
  font-size:20px !important;
  color:var(--navy) !important;
}
.es-feature.notary{
  background:#fff !important;
}
.es-feature.notary .ico{
  background:#ffd91a !important;
}
.es-feature.notary span:last-child{
  display:inline-block !important;
  background:#fff7bf !important;
  border-radius:18px !important;
  padding:7px 12px !important;
}

/* Attorney panel sizing closer to English visual weight */
.es-attorney-zone{
  padding:18px 14px !important;
}
.es-attorney-card{
  padding:18px !important;
}
.es-attorney-title{
  font-size:18px !important;
}
.es-attorney-card p{
  font-size:11.5px !important;
}

@media(max-width:1100px){
  .es-hero-grid{
    grid-template-columns:42% 58% !important;
  }
  .es-attorney-zone{
    grid-column:1/-1 !important;
  }
}
@media(max-width:760px){
  .es-hero-grid{
    grid-template-columns:1fr !important;
  }
  .es-feature-grid{
    grid-template-columns:1fr 1fr !important;
  }
}

/* ===== V41 clean newly-generated Spanish photo ===== */
.es-hero-photo{
  background:#dfe7ef !important;
}
.es-hero-photo img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}
