/* Brand typography and button gradient taken from the company's published CSS. */
@font-face{font-family:Saira;src:url('assets/fonts/saira-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'Bebas Neue';src:url('assets/fonts/bebas-neue-latin.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--brand-pink:#ea138f;--brand-coral:#f59154;--brand-gradient:linear-gradient(405deg,#ea138f 0%,#f59154 100%);--brand-body:Saira,Arial,sans-serif;--brand-heading:'Bebas Neue',Saira,sans-serif}
body,button,input,select,textarea,.site-header,.stage,.copy,.review-card blockquote{font-family:var(--brand-body)}
h1,h2,h3,.site-page h1,.site-page h2,.site-page h3,.after-story h2,.after-story h3,.copy h1,.copy h2,.copy em,.page-hero-copy em,.section-heading em,.travel-title em{font-family:var(--brand-heading);font-style:normal;font-weight:400;letter-spacing:.005em;line-height:1}
em{font-family:inherit;font-style:normal}.copy .description,.explore-button,.pill,.site-quote,.kicker,.eyebrow,.fine-print,.footer-bottom{font-family:var(--brand-body)}
.site-page{--orange:var(--brand-pink);--glass:rgba(20,14,20,.82);--glass-raised:rgba(34,21,31,.92);--card-line:rgba(246,207,229,.2)}
.site-page .ambient-backdrop{background:#09070b}.site-page .ambient-backdrop video{opacity:.62}.ambient-backdrop>div{background:linear-gradient(90deg,#08060bac,#10081175),linear-gradient(#06050a55,transparent 50%,#08060d66)}
.pill,.site-quote{justify-content:center;gap:0;font-weight:700;letter-spacing:.015em;line-height:1.4}
.pill,.site-header .site-quote{background:var(--brand-gradient);border:1px solid #ffffff35;color:white;border-radius:3px}
.pill:hover,.site-header .site-quote:hover{background:linear-gradient(405deg,#d61284,#e4844a);border-color:#ffffffaa}
.pill:before,.site-quote:before{background:linear-gradient(110deg,transparent 40%,#ffffff50 49%,#ffffff77 50%,transparent 59%)}
.explore-button{justify-content:center;gap:0}.site-page .section-heading .kicker,.site-page .kicker{color:#ee9fc7}
.site-page .section>.lead{border-left-color:var(--brand-pink)}.site-page .process-symbol{color:#ffb9d9;background:#ea138f13;border-color:#ea138f45}.site-page .process-card:hover{border-color:#f5915488}
.site-page .faq-list details[open]{border-color:#ea138f65}.site-page .faq-list summary span{color:#efa5ce}.site-page .swatch-strip:focus-visible{outline-color:var(--brand-pink)}
.site-page .filter-chips button[aria-pressed=true]{background:var(--brand-gradient);border-color:#ffaccb;color:white}.site-page .filter-chips button:hover{border-color:#ea138f}
.site-page .package-grid button[aria-pressed=true]{border-top-color:var(--brand-pink);background:#291722}.site-page .region-card.is-lit{background:#ea138f13;border-color:#ee77b455}.site-page .region-card[aria-pressed=true]{border-color:#f5add1;background:#ea138f25}
.site-page .served-county.is-lit{fill:var(--brand-pink);stroke:#ffcae6}.site-page .served-county.is-selected{fill:var(--brand-coral);stroke:#fff}
.area-intro{display:flex;align-items:center;justify-content:space-between;gap:6vw;margin-bottom:32px}.area-intro .lead{margin:0;max-width:none;flex:1;font-size:30px;line-height:1.45}.area-intro .lead .area-serving{display:block;margin-top:12px;font-size:19px;line-height:1.75;color:#d4c8d0;max-width:900px}.area-intro .pill{flex:0 0 auto;min-width:190px}.area-section .map-card{margin-top:0}
.faq-list details>div{max-width:none;width:100%;padding:0 0 25px}.faq-list details>div p{max-width:none;width:100%;font-size:17px;line-height:1.8;margin:0 0 14px}.faq-list summary{font-family:var(--brand-body);font-size:23px;font-weight:500;letter-spacing:0}.faq-list details>div .source-link{margin-top:0}
.site-footer{padding:30px 7vw 18px}.footer-signature{padding-bottom:18px}.footer-signature .pill{padding:12px 22px}.footer-signature>span{font-size:11px}.footer-columns{padding:22px 0 18px;gap:24px}.footer-columns nav{display:grid;align-content:start;gap:7px}.footer-columns a{margin:0;line-height:1.5;font-size:12px}.footer-columns p{margin:7px 0;font-size:12px;line-height:1.6}.footer-columns b{font-size:13px}.footer-bottom{padding-top:14px;font-size:10px;gap:14px}
.review-card blockquote{font-size:clamp(24px,2.25vw,34px);line-height:1.35;letter-spacing:-.02em}.review-card b,.review-card small{font-family:var(--brand-body)}
@media(max-width:800px){
 .site-page .page-hero-copy h1{font-size:clamp(54px,13vw,82px)}.site-header .site-quote{font-size:11px}.copy h1,.copy h2{letter-spacing:.005em}.site-page .section-heading h2{font-size:50px}
 .area-intro{align-items:flex-start;gap:24px}.area-intro .lead{font-size:27px}.area-intro .lead .area-serving{font-size:16px}.area-intro .pill{min-width:155px;padding:15px}
 .faq-list summary{font-size:19px;line-height:1.4}.faq-list details>div p{font-size:16px;line-height:1.75}
 .site-footer{padding:28px 6vw 18px}.footer-signature{flex-direction:row;align-items:center;gap:16px}.footer-signature>span{max-width:150px;line-height:1.6;font-size:10px}.footer-signature .pill{font-size:12px;padding:11px 15px}
 .footer-columns{grid-template-columns:1fr 1fr;padding:20px 0 14px;gap:18px}.footer-columns>div{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px 20px}.footer-columns>div b{grid-column:1/-1}.footer-columns>div a{grid-column:1/-1;grid-row:3}.footer-columns>div p{margin:0}.footer-columns>nav{gap:5px}.footer-bottom{gap:5px}
 /* Mobile reviews are complete, readable cards, not cropped animated columns. */
 .review-wall{display:grid;grid-template-columns:1fr;gap:24px;height:auto;overflow:visible;mask-image:none;scroll-snap-type:none}
 .review-column,.review-column:nth-child(2),.review-column:nth-child(3){display:block;width:100%;min-width:0;overflow:visible}
 .review-loop,.review-column:nth-child(2) .review-loop,.review-column:nth-child(3) .review-loop{animation:none!important;transform:none!important;will-change:auto}
 .review-set{display:flex;flex-direction:column;gap:16px;padding:0}.review-set[aria-hidden=true]{display:none}
 .review-card{order:0;min-height:0;height:auto;padding:28px;border-radius:13px}.review-card blockquote{font-size:26px;margin:24px 0;line-height:1.4}.review-card small{font-size:11px}.review-card b{font-size:14px}
 .review-photo{order:1;height:auto;aspect-ratio:16/10;max-height:320px}.review-photo img{height:100%;width:100%}.review-pause{display:none}.review-caption{margin-top:12px}.review-section{padding-bottom:50px}
}
@media(max-width:540px){.area-intro{flex-direction:column;gap:22px}.area-intro .pill{align-self:flex-start;min-width:180px}.site-header .site-quote{font-size:10px;padding:12px 10px}.site-header .services-toggle{font-family:var(--brand-body)}.review-card blockquote{font-size:24px}.review-section .section-heading h2{font-size:50px}}
@media(prefers-reduced-motion:reduce){.pill:before,.site-quote:before{animation:none;display:none}}

/* Clearer comparison states and an in-project closing invitation. */
#law-table{color:#f6f7fb;font-size:16px}#law-table th{color:#f8f9fc;font-weight:600}#law-table caption{color:#dfe4ee;font-size:14px}#law-table td{font-weight:500}#law-table td.good{color:#95f5ce}#law-table td.bad{color:#ff9eba}#law-table td.check{color:#afdaff}#law-table th,#law-table td{border-bottom-color:#ffffff30}
.faq-group+.faq-group{margin-top:70px}.faq-group>h2{font-size:clamp(32px,3.5vw,48px);color:#f6edf3;padding-bottom:18px;border-bottom:1px solid #ea138f65}.faq-group .faq-list{margin-top:22px}
.home-projects .project-reel-sticky{flex-direction:column;justify-content:center;gap:40px}.home-projects .project-viewport{flex-shrink:0}.project-signature{display:flex;width:100%;align-items:center;justify-content:space-between;gap:28px}.project-signature p{font-family:var(--brand-heading);font-size:clamp(30px,3.4vw,50px);line-height:1.02;letter-spacing:.01em;margin:0}.project-signature .pill{font-size:16px;padding:18px 32px;min-width:205px}.home-projects{padding-bottom:32px}
@media(max-width:800px){#law-table{font-size:15px}.faq-group+.faq-group{margin-top:48px}.home-projects .project-reel-sticky{gap:28px}.project-signature{gap:16px}.project-signature p{font-size:30px}.project-signature .pill{font-size:12px;padding:14px 16px;min-width:145px}}
@media(max-height:650px) and (min-width:801px){.home-projects .project-reel-sticky{gap:18px}.home-projects .project-card img{height:34svh;min-height:150px}.project-signature p{font-size:28px}.project-signature .pill{padding:12px 22px}}
