/*
Theme Name: Vivian H. Phan
Theme URI: https://vivianphan.com/
Author: Vivian H. Phan Law Firm
Description: An accessible, editorial law firm theme with generous typography.
Version: 2.2.3
Text Domain: vivian-phan
*/

@font-face{font-family:"Cormorant Garamond";src:url("assets/fonts/cormorant-regular.woff2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("assets/fonts/cormorant-medium.woff2") format("woff2");font-style:normal;font-weight:500 600;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("assets/fonts/cormorant-italic.woff2") format("woff2");font-style:italic;font-weight:400 600;font-display:swap}
@font-face{font-family:Manrope;src:url("assets/fonts/manrope-regular.woff2") format("woff2");font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:Manrope;src:url("assets/fonts/manrope-semibold.woff2") format("woff2");font-style:normal;font-weight:600 700;font-display:swap}

:root{
  --ivory:#faf8f2; --paper:#fff; --ink:#18392f; --forest:#143e32;
  --muted:#4d6058; --gold:#dfbd7d; --gold-dark:#795824;
  --line:#d8ded6; --soft:#eef1e9; --serif:"Cormorant Garamond",Georgia,serif;
  --sans:Manrope,Arial,sans-serif; --max:1280px;
  --header-height:107px; --admin-offset:0px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--admin-offset) + 20px)}
html:has(body.admin-bar){--admin-offset:32px}
body{margin:0;background:var(--ivory);color:var(--ink);font:18px/1.75 var(--sans);-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
img{display:block;max-width:100%;height:auto}
svg{display:block;flex-shrink:0}
a{color:inherit;text-decoration:none;transition:color .2s,background .2s,border-color .2s,transform .2s}
a:hover{color:var(--gold-dark)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:3px solid #aa772e;outline-offset:5px}
p{margin:0 0 1.3em}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.08;letter-spacing:-.025em;margin:0 0 .5em}
h2{font-size:clamp(44px,4.5vw,64px)}
h3{font-size:36px}
h2 em,h1 em{font-weight:400;color:var(--gold-dark)}
ul,ol{margin:0;padding:0}
address{font-style:normal}
::selection{background:var(--gold);color:var(--forest)}
.container{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:24px;z-index:1000;padding:16px 24px;background:var(--ink);color:white}
.skip-link:focus{top:12px}
.arrow{display:inline-block;font:400 24px/1 Arial,sans-serif;transition:transform .2s;flex-shrink:0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:58px;padding:15px 24px;border:1px solid transparent;border-radius:4px;font:600 16px/1.5 var(--sans);text-align:center}
.button:hover .arrow,.text-link:hover .arrow{transform:translate(3px,-3px)}
.button-gold{color:#1b342a;background:var(--gold);border-color:var(--gold)}
.button-gold:hover{background:#edcf98;border-color:#edcf98;color:#123326;transform:translateY(-2px)}
.button-outline{background:transparent;border-color:var(--ink);color:var(--ink)}
.button-outline:hover{background:var(--forest);color:white;border-color:var(--forest)}
.text-link{display:inline-flex;align-items:center;gap:18px;padding:9px 0;border-bottom:1px solid #9e895e;color:var(--gold-dark);font-size:16px;font-weight:600;line-height:1.5}
.eyebrow{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:700;letter-spacing:1.4px;line-height:1.7;color:var(--gold-dark);margin-bottom:22px}
.eyebrow::before{content:"";height:2px;width:32px;background:currentColor;flex-shrink:0}

/* Clear, full-size navigation. */
.topbar{background:#e9eee5;color:#28483b;font-size:14px;font-weight:500}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:43px;padding-block:7px}
.topbar-inner>a{display:flex;align-items:center;gap:8px;font-weight:600}
.topbar .arrow{font-size:19px}
.site-header{position:sticky;top:var(--admin-offset);z-index:50;background:var(--paper);border-bottom:1px solid #e5e8df;box-shadow:0 4px 18px #173b310a}
.header-inner{min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand .brand-mark{display:block;flex-shrink:0;width:60px;height:60px;background-color:#d4af37;-webkit-mask:url("assets/images/firm-mark.png") center/contain no-repeat;mask:url("assets/images/firm-mark.png") center/contain no-repeat;mask-mode:alpha}
.brand-wordmark{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}
.brand-name{font:500 32px/1 var(--serif);letter-spacing:.7px;white-space:nowrap}
.brand-tag{font-size:12px;letter-spacing:2.1px;color:var(--gold-dark);line-height:1.3}
.desktop-nav{display:flex;align-items:center;align-self:stretch;gap:26px;font-size:16px;font-weight:600;white-space:nowrap}
.nav-link{position:relative;padding:15px 0}
.nav-link::after{content:"";position:absolute;bottom:7px;left:0;right:100%;height:2px;background:var(--gold-dark);transition:right .2s}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{right:0}
.nav-link[aria-current="page"]{color:var(--gold-dark)}
.nav-cta{min-height:52px;padding:12px 19px;font-size:16px;gap:16px;white-space:nowrap}
.nav-login{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 16px;border:1px solid var(--forest);border-radius:4px;background:var(--forest);color:white;font-size:16px;font-weight:600;line-height:1.5;white-space:nowrap}
.nav-login:hover{background:#245543;border-color:#245543;color:white}
.menu-toggle{display:none;flex-shrink:0;width:48px;height:48px;border:1px solid #acb9ad;border-radius:4px;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:var(--forest)}
.menu-toggle span{display:block;width:23px;height:2px;background:currentColor;transition:transform .2s}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){transform:translateY(-4.5px) rotate(-45deg)}
.mobile-nav,.mobile-nav[hidden]{display:none}
.nav-dropdown{position:relative;display:flex;align-items:center;align-self:stretch}
.practice-toggle{display:flex;align-items:center;gap:8px;border:0;background:transparent;border-radius:0;color:inherit;font:inherit;text-align:left;cursor:pointer}
.nav-link.is-active::after,.practice-toggle[aria-expanded="true"]::after{right:0}
.nav-link.is-active{color:var(--gold-dark)}
.submenu-chevron{flex-shrink:0;transition:transform .2s}
.practice-toggle[aria-expanded="true"] .submenu-chevron{transform:rotate(180deg)}
[data-practice-panel][hidden]{display:none}
.practice-dropdown{position:absolute;top:100%;left:-24px;width:340px;max-height:calc(100dvh - var(--header-height) - var(--admin-offset) - 65px);overflow-y:auto;background:white;border:1px solid var(--line);border-top:3px solid #bd9c5f;border-radius:0 0 8px 8px;padding:12px;box-shadow:0 18px 40px #102f2626;white-space:normal;animation:practice-dropdown-in .18s ease-out}
.practice-menu-list{list-style:none;margin:0;padding:0}
.practice-menu-list a{display:block;padding:11px 14px;font-size:16px;line-height:1.5;color:var(--ink);border-radius:4px}
.practice-menu-list a:hover,.practice-menu-list a:focus-visible{background:#edf1e7;color:var(--forest)}
.practice-menu-overview{border-bottom:1px solid var(--line);padding-bottom:7px;margin-bottom:7px}
.practice-menu-overview>a{color:var(--gold-dark);font-weight:600}
.practice-menu-category>a{font-weight:600}
.practice-menu-subpractice>a{padding-left:29px;font-weight:400;color:#405a4a}
@keyframes practice-dropdown-in{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}

/* A human, confident first impression. */
.hero{background:var(--forest);color:white;overflow:hidden;position:relative}
.hero-inner{display:grid;grid-template-columns:1.08fr 1fr;gap:48px;min-height:660px;align-items:stretch}
.hero-copy{align-self:center;padding:70px 0 72px;position:relative;z-index:2}
.hero .eyebrow{color:#e4c58c;font-size:14px;letter-spacing:1.3px;flex-wrap:wrap}
.hero-title{font-size:clamp(62px,6.4vw,88px);line-height:.99;letter-spacing:-2px;margin-bottom:28px}
.hero-title em{color:#e8c88e;font-weight:400}
.hero-description{font-size:19px;line-height:1.75;color:#eef2e8;max-width:540px;margin-bottom:30px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.hero-secondary{display:inline-flex;align-items:center;gap:14px;padding:12px 0;font-size:16px;line-height:1.5;border-bottom:1px solid #b4c2ac;color:white}
.hero-secondary:hover{color:#e7c98f;border-color:#e7c98f}
.hero-note{display:flex;align-items:center;gap:10px;font-size:15px;color:#e0e8da;margin:26px 0 0}
.availability-dot{width:7px;height:7px;background:#dfbd7d;border-radius:50%;flex-shrink:0}
.hero-visual{position:relative;min-width:0;margin-right:calc((min(var(--max),100vw - 96px) - 100vw)/2);background:#303533}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:24% center}
.hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,#101e1ac4 100%);pointer-events:none}
.hero-caption{position:absolute;left:32px;right:28px;bottom:35px;z-index:2;color:white}
.hero-caption>span{display:block;font-size:14px;letter-spacing:1.7px;font-weight:600;margin-bottom:7px}
.hero-caption>strong{font:500 39px/1.1 var(--serif)}
.hero-seal{position:absolute;right:28px;top:28px;z-index:2;color:white;border:1px solid #d4c7a46b;background:#173b31e8;border-radius:4px;padding:18px;display:flex;align-items:center;gap:15px;max-width:260px}
.hero-seal>svg{color:#e6c68e;width:34px;height:34px}
.hero-seal>span{font-size:14px;line-height:1.6;color:#f4f3e9}
.hero-seal b{font-weight:600;color:#e9ca94}

/* Service promise and practice areas. */
.trust-strip{background:#e9eee4;border-bottom:1px solid #d9e0d2}
.trust-inner{display:grid;grid-template-columns:repeat(3,1fr);min-height:120px;align-items:center}
.trust-item{display:flex;align-items:center;gap:20px;padding:12px 30px;border-right:1px solid #c5d0c0}
.trust-item:first-child{padding-left:0}
.trust-item:last-child{border:0;padding-right:0}
.trust-item>svg{width:34px;height:34px;stroke-width:1.4;color:#6e5a32}
.trust-item>span{font-size:15px;line-height:1.6;color:#405447}
.trust-item strong{font:500 25px/1.3 var(--serif);color:#18392f;display:block;margin-top:4px}
.section{padding:104px 0}
.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:44px}
.section-heading h2{margin:0;max-width:700px}
.section-heading .eyebrow{margin-bottom:18px}
.section-intro{font-size:18px;line-height:1.75;color:var(--muted);max-width:365px;margin:0 0 4px}
.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.practice-card{position:relative;background:white;padding:34px 30px 30px;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s,box-shadow .2s}
.practice-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:#bd9c5f}
.practice-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #18392f12}
.practice-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}
.practice-number{order:2;font:500 30px/1 var(--serif);color:#879484}
.practice-icon{order:1;width:46px;height:46px;color:var(--gold-dark);stroke-width:1.3}
.practice-card h3{font-size:37px;line-height:1.05;margin-bottom:19px;max-width:310px}
.practice-card p{font-size:18px;line-height:1.7;color:var(--muted);margin-bottom:25px}
.practice-detail-list{list-style:none;font-size:15px;color:var(--muted);display:grid;gap:8px;margin-bottom:28px}
.practice-detail-list li{padding-left:15px;position:relative}
.practice-detail-list li::before{content:"";position:absolute;left:0;top:12px;width:5px;height:5px;background:#987337;border-radius:50%}
.practice-card-link{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:21px;margin-top:auto;color:var(--gold-dark);font-size:16px;font-weight:600;line-height:1.5}
.practice-card:first-child{background:var(--forest);color:white;border-color:var(--forest)}
.practice-card:first-child .practice-icon,.practice-card:first-child .practice-number{color:#e5c58d}
.practice-card:first-child p,.practice-card:first-child .practice-detail-list{color:#e1eadb}
.practice-card:first-child h3 a:hover{color:#e7c78d}
.practice-card:first-child .practice-card-link{color:#eed2a0;border-color:#658071}
.practice-card:first-child .practice-detail-list li::before{background:#e2bf7d}
.practice-card:nth-child(3){background:#eeeee3}

/* Editorial introduction. */
.about-section{background:#e9eee5;position:relative}
.about-layout{display:grid;grid-template-columns:.9fr 1.15fr;align-items:center;gap:88px}
.about-photo-wrap{position:relative;padding:0 24px 24px 0;max-width:480px}
.photo-frame{position:absolute;inset:24px 0 0 24px;border:1px solid #8f9a78;border-radius:6px}
.about-photo{position:relative;width:100%;height:510px;object-fit:cover;object-position:center 25%;border-radius:6px;filter:contrast(1.04)}
.photo-label{position:absolute;left:24px;bottom:48px;background:#fffdf4;padding:22px 26px;box-shadow:0 8px 30px #15392f15;border-left:4px solid #a8894e;max-width:calc(100% - 50px)}
.photo-label>span{display:block;color:var(--gold-dark);font-size:13px;font-weight:600;letter-spacing:1px;line-height:1.5;margin-bottom:8px}
.photo-label>strong{display:block;font:500 32px/1.1 var(--serif)}
.photo-label>small{display:block;font-size:14px;letter-spacing:1px;margin-top:8px;color:#4b5a4b}
.about-copy h2{margin-bottom:25px}
.about-copy p{font-size:18px;line-height:1.75;color:var(--muted)}
.about-copy .about-lead{font:500 28px/1.4 var(--serif);color:var(--ink)}
.firm-film-wrap{width:100%;max-width:344px;margin-inline:auto;min-width:0}
.firm-film{margin:0}
.firm-film-frame{position:relative;aspect-ratio:9/16;overflow:hidden;border:1px solid #bcc9bc;border-radius:12px;background:var(--forest);box-shadow:0 18px 44px #143e321a;isolation:isolate}
.firm-film-video{display:block;width:100%;height:100%;aspect-ratio:9/16;object-fit:contain;background:var(--forest)}
.firm-film-play{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;width:100%;border:0;padding:24px;background:linear-gradient(transparent 30%,#102e2524 62%,transparent);color:#fff;font:600 16px/1.5 var(--sans);text-shadow:0 1px 8px #102e25}
.firm-film-play[hidden]{display:none}
.firm-film-play-icon{display:grid;place-items:center;width:78px;height:78px;padding-left:4px;border:1px solid #f1dbb2;background:#153c32e6;border-radius:50%;color:#f0d6a5;box-shadow:0 6px 24px #102e2538;transition:background .2s,transform .2s}
.firm-film-play:hover .firm-film-play-icon{background:#102e25;transform:scale(1.04)}
.firm-film-play:focus-visible{outline:3px solid var(--gold);outline-offset:-7px}
.firm-film figcaption{margin-top:15px;color:var(--muted);font-size:15px;line-height:1.6;text-align:center;text-wrap:balance}
.firm-film-transcript{margin-top:12px;border-top:1px solid #c7d1c5;font-size:16px;line-height:1.6}
.firm-film-transcript summary{cursor:pointer;padding:12px 2px;color:var(--gold-dark);font-weight:600}
.firm-film-transcript-body{padding:4px 2px 0;color:var(--muted)}
.firm-film-transcript-body p{margin:0 0 1em}
.firm-film-transcript-body a{text-decoration:underline;text-underline-offset:3px}
body.firm-video-in-view .back-to-top{opacity:0;visibility:hidden;pointer-events:none}
@media(max-width:800px){.firm-film-wrap{max-width:320px}.about-layout:has(.firm-film-wrap){gap:36px}}
.signature{font:italic 40px/1.4 var(--serif);color:var(--gold-dark);margin:24px 0 12px}

/* A calm explanation of the working relationship. */
.approach-section{background:var(--forest);color:white}
.approach-layout{display:grid;grid-template-columns:.8fr 1fr;gap:120px;align-items:start}
.approach-section .eyebrow{color:#e5c58d}
.approach-section h2 em{color:#e5c58d}
.approach-heading p{font-size:18px;color:#e1e8da;max-width:430px}
.approach-heading .text-link{color:#e8c98f;border-color:#a99b76}
.approach-steps{display:grid;gap:32px}
.approach-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:24px;border-bottom:1px solid #63806c;padding-bottom:30px}
.approach-step:last-child{border:0;padding:0}
.step-number{font:italic 36px/1.1 var(--serif);color:#e1bd7f;padding-top:3px}
.approach-step h3{font-size:34px;line-height:1.15;margin-bottom:13px}
.approach-step p{font-size:18px;line-height:1.75;color:#e1e8da;margin:0}

/* Questions people can comfortably read. */
.faq-section{background:#fff}
.faq-layout{display:grid;grid-template-columns:.65fr 1fr;gap:100px;align-items:start}
.faq-layout>div>p{color:var(--muted);font-size:18px}
.faq-list details{border-bottom:1px solid #cfd8cc}
.faq-list details:first-child{border-top:1px solid #cfd8cc}
.faq-list summary{position:relative;list-style:none;cursor:pointer;padding:25px 42px 25px 0;font-size:19px;line-height:1.6;font-weight:600}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";position:absolute;right:0;top:23px;color:var(--gold-dark);font:400 31px/1.1 var(--sans)}
.faq-list details[open] summary::after{content:"−"}
.faq-list details p{font-size:18px;line-height:1.75;color:var(--muted);padding-right:26px;margin:0 0 25px}
.faq-list details a{text-decoration:underline;text-underline-offset:3px;color:var(--gold-dark)}

/* Spacious, usable contact forms. */
.consultation-section{background:#f2f0e5}
.consultation-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.consultation-copy h2{font-size:clamp(47px,4.5vw,64px)}
.consultation-copy>p{max-width:470px;font-size:18px;line-height:1.75;color:var(--muted)}
.contact-details{display:grid;gap:30px;margin-top:38px}
.contact-item{display:flex;align-items:flex-start;gap:18px}
.contact-item>svg{color:var(--gold-dark);width:27px;height:27px;margin-top:3px}
.contact-label{display:block;font-size:14px;font-weight:600;line-height:1.6;letter-spacing:.7px;margin-bottom:9px;color:#45594b}
.phone-link{font:500 38px/1.2 var(--serif);letter-spacing:-.3px}
.contact-item address{font-size:18px;line-height:1.7;color:#334d3d}
.contact-item .text-link{margin-top:9px}
.consultation-form-wrap{min-width:0}
.consultation-form{background:white;border:1px solid #d8dccf;border-radius:10px;padding:38px;box-shadow:0 12px 40px #1b3a2e09}
.consultation-form h3{font-size:37px;line-height:1.13;margin-bottom:10px}
.consultation-form .form-intro{font-size:17px;color:var(--muted);margin-bottom:24px}
.notice{font-size:14px;line-height:1.7;color:#435242;background:#f1f3e9;padding:17px 19px;border-left:3px solid #97733b;margin-bottom:25px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 19px}
.field{display:flex;flex-direction:column;gap:9px;min-width:0}
.field-full{grid-column:1/-1}
.field label{font-size:16px;font-weight:600;line-height:1.5;color:#233f30}
.field label>span:not(.optional){color:#8c502c}
.field label .optional{font-size:14px;color:#566851;font-weight:400}
.field input,.field textarea,.field select{width:100%;min-height:54px;border:1px solid #73866f;border-radius:4px;background:#fdfdf9;padding:12px 14px;font-size:17px;line-height:1.6;color:#19392a;transition:border .2s,box-shadow .2s}
.field textarea{resize:vertical;min-height:130px}
.field input::placeholder,.field textarea::placeholder{color:#5d6e60;opacity:1}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#477854;box-shadow:0 0 0 3px #47785420;outline:2px solid transparent}
.form-consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.8;color:#405445;margin:24px 0}
.form-consent input{width:19px;height:19px;accent-color:var(--forest);flex-shrink:0;margin:4px 0 0}
.form-consent a{text-decoration:underline;text-underline-offset:3px;color:#705225}
.consultation-form .button{width:100%;justify-content:space-between;background:var(--forest);border-color:var(--forest);color:white}
.consultation-form .button:hover{background:#265641;color:white}
.form-footnote{font-size:14px;color:#4b6051;line-height:1.7;margin:18px 0 0}
.form-status{font-size:16px;line-height:1.7;color:#254e31;background:#e8f1e3;border-left:3px solid #427844;padding:17px 19px;margin-bottom:24px;scroll-margin-top:30px}
.form-status.error{background:#faf0e7;border-color:#a45630;color:#793b1e}
.form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0;pointer-events:none}

/* Interior pages use the same generous scale. */
.page-hero{position:relative;overflow:hidden;background:#e9eee5;border-bottom:1px solid #cdd7c6;padding:38px 0 68px}
.page-hero::after{content:"";position:absolute;right:-100px;top:-130px;width:500px;height:500px;border:1px solid #b9c6ad;border-radius:50%;opacity:.55;pointer-events:none}
.page-hero-inner{position:relative;z-index:1}
.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:11px;font-size:15px;line-height:1.6;color:#465e4e;margin-bottom:35px}
.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}
.page-hero h1{font-size:clamp(53px,5.7vw,80px);max-width:1000px;margin-bottom:24px}
html[lang="vi"] .page-hero .about-page-headline{max-width:none}
.page-hero p{max-width:800px;font-size:20px;line-height:1.7;color:var(--muted);margin:0}
.page-hero .button{margin-top:26px}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:80px;align-items:start}
.rich-copy{min-width:0}
.rich-copy h2{font-size:48px;margin-bottom:27px}
.rich-copy h3{font-size:35px;margin:38px 0 17px}
.rich-copy p,.rich-copy ul,.rich-copy ol{font-size:18px;line-height:1.85;color:#3b5144}
.rich-copy ul,.rich-copy ol{padding-left:24px;margin-bottom:28px}
.rich-copy li{padding-left:4px;margin-bottom:12px}
.rich-copy li::marker{color:#7e612e}
.rich-copy a:not(.button){text-decoration:underline;text-underline-offset:4px;color:var(--gold-dark)}
.sidebar{display:grid;gap:28px;position:sticky;top:calc(var(--header-height) + var(--admin-offset) + 24px);min-width:0}
.sidebar-card{background:var(--forest);color:white;padding:29px;border-radius:8px}
.sidebar-card h2{font-size:40px;line-height:1.15;margin-bottom:22px}
.sidebar-card h2 em{color:var(--gold)}
.sidebar-card .eyebrow{color:#e4c58b}
.sidebar-card p{font-size:17px;line-height:1.75;color:#e2ebdb}
.sidebar-card .phone-link{font-size:34px;display:block;margin-bottom:22px}
.sidebar-card .button{width:100%;font-size:16px;padding-inline:16px;gap:12px}
.service-list{padding:28px;border:1px solid var(--line);background:white;border-radius:8px}
.service-list h3{font-size:30px;margin-bottom:16px}
.service-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.6}
.service-list a:last-child{border:0;padding-bottom:0}
.service-list .arrow{color:var(--gold-dark)}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:38px 0 0}
.detail-card{background:white;border:1px solid var(--line);border-radius:8px;padding:30px;min-width:0}
.detail-card>svg{width:38px;height:38px;color:var(--gold-dark);margin-bottom:20px}
.detail-card h3{font-size:33px;line-height:1.12;margin-bottom:15px}
.detail-card p{font-size:18px;line-height:1.75;color:var(--muted)}
a.detail-card:hover{box-shadow:0 10px 30px #173b3112;border-color:#9baf94;transform:translateY(-4px)}
.approach-section .detail-card{background:#ffffff08;border-color:#69826d}
.approach-section .detail-card h3{color:white}
.approach-section .detail-card p{color:#e1e8da}
.article-callout{padding:30px;background:#e9eee2;border-left:4px solid #9e7d43;border-radius:0 8px 8px 0;margin-top:35px}
.article-callout h3{margin-top:0}
.article-callout .button{margin-top:8px}

/* Readable footer, including notices. */
.site-footer{background:#102f26;color:#ebeee2;padding:70px 0 28px}
.footer-main{display:grid;grid-template-columns:1.35fr .65fr .9fr 1.1fr;gap:40px;padding-bottom:44px}
.footer-brand img{width:310px;max-width:100%;height:auto;margin-bottom:25px}
.footer-brand p{font-size:17px;line-height:1.75;color:#d8e3cf}
.footer-location{font-size:14px;letter-spacing:1px;color:#e9c68a}
.footer-main h3{font:600 15px/1.5 var(--sans);color:#edcc93;margin-bottom:22px;letter-spacing:.6px}
.footer-links>a{display:block;font-size:16px;line-height:1.7;margin-bottom:12px;color:#ebeee2}
.footer-links>a:hover{color:#efd29b}
.footer-phone{display:inline-flex;align-items:center;gap:12px;font:500 32px/1.3 var(--serif);margin-bottom:18px;white-space:nowrap}
.footer-contact address{font-size:16px;color:#e0e7d8;line-height:1.8}
.footer-bottom{border-top:1px solid #64806b;display:flex;justify-content:space-between;gap:28px;padding-top:25px;font-size:14px;line-height:1.7;color:#e0e7d7}
.footer-bottom>div{display:flex;flex-wrap:wrap;gap:24px}
.footer-bottom a{text-decoration:underline;text-underline-offset:4px}
.site-footer>.legal-copy{font-size:14px;line-height:1.8;color:#cfdbc8;margin-top:20px}
.mobile-call-bar{display:none}

@media(min-width:1600px){.hero-inner{min-height:720px}.hero-title{font-size:91px}}
@media(max-width:1200px){
  .container{width:calc(100% - 72px)}
  .brand-name{font-size:29px}.brand .brand-mark{width:54px;height:54px}.desktop-nav{gap:21px}
  .hero-inner{gap:35px}.hero-visual{margin-right:-36px}.hero-title{font-size:72px}
  .hero-description{font-size:18px}.hero-actions{gap:20px}.hero-actions .button{padding-inline:20px}
  .section-heading{gap:36px}.section-heading h2{font-size:55px}.section-intro{max-width:330px}
  .practice-card{padding:30px 25px}.practice-card h3{font-size:34px}
  .about-layout,.consultation-layout{gap:55px}.approach-layout{gap:75px}.faq-layout{gap:65px}
  .footer-main{grid-template-columns:1.15fr .65fr .9fr 1fr;gap:28px}.footer-phone{font-size:29px}
}
@media(max-width:1100px){
  .desktop-nav,.header-inner>.nav-cta{display:none}.menu-toggle{display:flex}
  .mobile-nav:not([hidden]){display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:white;padding:14px 36px 25px;border-top:1px solid var(--line);box-shadow:0 15px 25px #163a2d12;max-height:calc(100dvh - var(--header-height) - var(--admin-offset) - 110px);overflow-y:auto}
  .mobile-nav a{font-size:18px;line-height:1.6;font-weight:500;padding:15px 0;border-bottom:1px solid var(--line)}
  .mobile-nav .nav-login{margin-top:16px;padding:13px 20px;border:1px solid var(--forest);font-weight:600}
  .mobile-nav>a:last-child{color:var(--gold-dark);border-bottom:0}
  .nav-accordion{border-bottom:1px solid var(--line)}
  .mobile-nav .practice-toggle{width:100%;justify-content:space-between;padding:15px 0;font-size:18px;font-weight:500;line-height:1.6}
  .mobile-practice-panel{padding:4px 10px 14px;background:#f3f5ec;border-radius:6px;margin-bottom:15px}
  .mobile-nav .practice-menu-list a{font-size:16px;line-height:1.6;padding:12px 12px;border-bottom:0}
  .mobile-nav .practice-menu-subpractice>a{padding-left:27px;color:#405a4a}
  .mobile-nav .practice-menu-category>a{font-weight:600}
  .hero-title{font-size:65px}.hero .eyebrow{font-size:14px;letter-spacing:.7px}
  .hero-inner{min-height:650px}.hero-copy{padding-block:60px}.hero-seal{right:20px;top:24px;padding:14px;max-width:230px}
  .hero-seal>span{font-size:14px}.hero-seal>svg{width:28px;height:28px}
  .hero-caption{left:24px;right:20px}.hero-caption>strong{font-size:35px}
  .trust-item{gap:14px;padding-inline:19px}.trust-item>svg{width:29px;height:29px}.trust-item strong{font-size:23px}
  .section-heading{display:block}.section-heading h2{max-width:800px}.section-intro{max-width:700px;margin-top:24px}
  .practice-grid{gap:17px}.practice-card{padding:28px 23px}.practice-card h3{font-size:32px}.practice-card p{font-size:17px}
  .practice-card-link{font-size:16px;flex-wrap:wrap}.practice-detail-list{font-size:15px}
  .about-layout{gap:45px;grid-template-columns:.85fr 1fr}.about-photo{height:510px}.about-copy h2{font-size:48px}
  .consultation-layout{gap:40px}.consultation-form{padding:30px}.consultation-copy h2{font-size:53px}
  .form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}
  .content-layout{gap:45px;grid-template-columns:minmax(0,1fr) 300px}.sidebar-card{padding:25px}.sidebar-card h2{font-size:37px}
  .detail-card{padding:26px}.detail-card h3{font-size:31px}
  .footer-main{grid-template-columns:1.2fr 1fr 1.1fr}.footer-brand{grid-column:1/-1}.footer-brand img{width:320px}.footer-brand p{max-width:600px}
}
@media(max-width:800px){
  :root{--header-height:93px}
  .container{width:calc(100% - 48px)}.topbar-inner>span{display:none}.topbar-inner{justify-content:center;font-size:14px}
  .header-inner{min-height:92px}.brand-name{font-size:30px}.brand-tag{font-size:12px}.brand .brand-mark{width:56px;height:56px}
  .hero-inner{grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{padding:55px 0 48px;max-width:650px}
  .hero-title{font-size:clamp(59px,10vw,80px)}.hero-description{font-size:19px;max-width:600px}
  .hero-visual{height:530px;margin:0 -24px}.hero-image{object-position:26% 30%}
  .hero-caption{left:30px;bottom:32px}.hero-seal{right:28px;top:28px}
  .hero-note{font-size:15px}.hero-actions{gap:22px}.hero-actions .button{font-size:16px}
  .trust-inner{grid-template-columns:1fr}.trust-item,.trust-item:first-child,.trust-item:last-child{padding:22px 0;border-right:0;border-bottom:1px solid #c4cebf;gap:21px}.trust-item:last-child{border-bottom:0}
  .trust-item>svg{width:32px;height:32px}.trust-item>span{font-size:16px}.trust-item strong{font-size:25px}
  .section{padding:72px 0}.section-heading h2{font-size:48px}.section-heading{margin-bottom:32px}.section-intro{font-size:18px}
  .practice-grid{grid-template-columns:1fr}.practice-card{padding:34px;min-height:0}.practice-card h3{font-size:40px;max-width:none}.practice-card p{font-size:18px;max-width:600px}.practice-detail-list{font-size:16px}
  .practice-card-top{margin-bottom:24px}.practice-card-link{font-size:17px}.practice-icon{width:45px;height:45px}
  .about-layout{grid-template-columns:1fr;gap:48px}.about-photo-wrap{width:100%;max-width:490px;margin-inline:auto}.about-photo{height:500px}.about-copy h2{font-size:49px}
  .about-copy p{font-size:18px}.about-copy .about-lead{font-size:29px}.photo-label>span{font-size:14px}
  .approach-layout{grid-template-columns:1fr;gap:44px}.approach-heading h2{font-size:53px}.approach-heading p{max-width:600px}
  .approach-steps{gap:30px}.approach-step{gap:20px}.approach-step h3{font-size:34px}
  .faq-layout{grid-template-columns:1fr;gap:25px}.faq-layout h2{font-size:52px}.faq-layout>div:first-child>p{margin-bottom:0}
  .faq-list summary{font-size:18px}.faq-list details p{font-size:18px;padding-right:10px}
  .consultation-layout{grid-template-columns:1fr;gap:38px}.consultation-copy h2{font-size:52px}.consultation-copy>p{max-width:630px}
  .consultation-form{padding:34px}.form-grid{grid-template-columns:1fr 1fr}.field-full{grid-column:1/-1}
  .consultation-form h3{font-size:38px}.field input,.field textarea,.field select{font-size:17px}
  .page-hero{padding:28px 0 50px}.page-hero h1{font-size:56px}.page-hero p{font-size:19px}.breadcrumbs{font-size:14px;margin-bottom:30px}
  .content-layout{grid-template-columns:1fr;gap:40px}.rich-copy h2{font-size:43px}.rich-copy h3{font-size:34px}
  .sidebar{position:static;grid-template-columns:1fr 1fr;align-items:start;gap:24px}.sidebar-card h2{font-size:36px}.sidebar-card .phone-link{font-size:31px}
  .detail-grid{grid-template-columns:1fr}.detail-card{padding:30px}.detail-card h3{font-size:36px}
  .footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-contact{grid-column:1/-1}.footer-phone{font-size:36px}.footer-links>a,.footer-contact address{font-size:17px}
  .footer-bottom{flex-direction:column;gap:18px}.site-footer{padding:60px 0 100px}.footer-bottom>div{gap:24px}
  .mobile-call-bar{display:flex;position:fixed;bottom:0;left:0;right:0;align-items:center;justify-content:center;gap:12px;min-height:62px;padding:15px 20px calc(15px + env(safe-area-inset-bottom));z-index:70;color:#18392f;background:#e2c082;box-shadow:0 -4px 20px #15372e1a;font-size:16px;font-weight:600;line-height:1.5}
  .mobile-call-bar:hover{color:#17392c;background:#edcf98}.mobile-call-bar>svg{width:21px;height:21px}
}
@media(max-width:480px){
  :root{--header-height:89px}
  .container{width:calc(100% - 40px)}.topbar-inner{gap:5px;font-size:14px;min-height:42px}.topbar-separator{display:none}.topbar-inner>a{gap:6px;justify-content:center;flex-wrap:wrap}
  .brand{gap:9px}.brand-name{font-size:26px;letter-spacing:.3px}.brand .brand-mark{width:46px;height:46px}.brand-tag{font-size:11px;letter-spacing:1.1px}.header-inner{min-height:88px;gap:12px}.menu-toggle{width:44px;height:44px}
  .mobile-nav:not([hidden]){padding-inline:20px}.hero-copy{padding:45px 0 42px}.hero .eyebrow{font-size:14px;letter-spacing:.5px;gap:10px}.hero .eyebrow::before{width:22px}
  .hero-title{font-size:57px;letter-spacing:-1.2px}.hero-title em{font-size:clamp(42px,12vw,57px);white-space:nowrap}.hero-description{font-size:18px;line-height:1.8}.hero-actions{gap:18px}.hero-actions .button{padding:15px 20px;min-height:58px}.hero-secondary{font-size:16px}.hero-note{font-size:14px;line-height:1.7;align-items:flex-start}.availability-dot{margin-top:9px}
  .hero-visual{margin-inline:-20px;height:460px}.hero-image{object-position:24% center}.hero-caption{left:23px;bottom:27px}.hero-caption>strong{font-size:36px}.hero-seal{top:20px;right:20px;padding:13px;max-width:225px}
  .hero-seal>svg{width:26px;height:26px}.hero-seal>span{font-size:14px}.hero-seal{gap:10px}
  h2,.section-heading h2,.about-copy h2,.approach-heading h2,.consultation-copy h2,.faq-layout h2{font-size:44px}
  .eyebrow{font-size:14px;letter-spacing:.6px;gap:10px}.eyebrow::before{width:24px}.section{padding:60px 0}
  .practice-card{padding:28px}.practice-card h3{font-size:37px}.practice-card p{font-size:18px}.practice-number{font-size:29px}.practice-card-link{font-size:16px}
  .about-photo{height:430px}.about-photo-wrap{padding:0 17px 17px 0}.photo-frame{inset:17px 0 0 17px}.photo-label{left:17px;bottom:35px;padding:20px;max-width:calc(100% - 45px)}.photo-label>strong{font-size:31px}.photo-label>span{font-size:13px}
  .about-copy .about-lead{font-size:27px}.approach-step{grid-template-columns:35px minmax(0,1fr);gap:15px}.approach-step h3{font-size:31px}.approach-step p{font-size:18px}
  .faq-list summary{font-size:18px;padding-block:22px}.faq-list summary::after{top:22px}.faq-list details p{font-size:17px}
  .consultation-form{padding:26px 22px}.consultation-form h3{font-size:34px}.form-grid{grid-template-columns:1fr;gap:20px}.field-full{grid-column:auto}.field label{font-size:16px}.notice,.form-consent,.form-footnote{font-size:14px}
  .contact-label{font-size:14px}.phone-link{font-size:36px}.contact-item{gap:13px}.contact-item address{font-size:18px}
  .page-hero h1{font-size:48px;overflow-wrap:break-word}.page-hero p{font-size:18px}.breadcrumbs{gap:8px}
  .rich-copy h2{font-size:39px}.rich-copy h3{font-size:32px}.rich-copy p,.rich-copy ul,.rich-copy ol{font-size:18px}.sidebar{grid-template-columns:1fr}.sidebar-card{padding:28px}.article-callout{padding:25px}
  .detail-card h3{font-size:34px}.footer-main{grid-template-columns:1fr;gap:30px}.footer-brand,.footer-contact{grid-column:auto}.footer-brand img{width:320px}.footer-main h3{font-size:16px;margin-bottom:16px}.footer-bottom{font-size:14px}.site-footer>.legal-copy{font-size:14px}
  .mobile-call-bar{font-size:15px;gap:10px}
}
@media(max-width:360px){
  .container{width:calc(100% - 32px)}.brand-name{font-size:22px}.brand .brand-mark{width:38px;height:38px}.brand-tag{font-size:10px;letter-spacing:.9px}.brand{gap:7px}.menu-toggle{width:42px;height:44px}.header-inner{gap:8px}
  .hero-title{font-size:53px}.hero-visual{margin-inline:-16px;height:420px}.hero-seal{max-width:205px;right:16px}.hero-caption>strong{font-size:34px}
  .practice-card{padding:25px}.practice-card h3{font-size:34px}.consultation-form{padding:24px 18px}.consultation-form h3{font-size:32px}.mobile-call-bar{font-size:14px}
}
/* Keep the portrait unobstructed. */
.hero-seal{top:auto;bottom:130px}
@media(max-width:800px){.hero-seal{top:auto;bottom:125px}}
@media(max-width:480px){.hero .eyebrow{display:block}.hero .eyebrow::before{display:inline-block;vertical-align:middle;margin-right:10px}.hero-seal{top:auto;bottom:125px}}
.is-revealing{will-change:opacity,translate}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:64px;height:64px;padding:8px;border:1px solid #e3c58e;border-radius:6px;background:var(--forest);color:#fff9eb;box-shadow:0 5px 20px #102f2633;font:600 14px/1 var(--sans);transition:background .2s,transform .2s}
.back-to-top[hidden]{display:none}
.back-to-top:not([hidden]){animation:back-to-top-in .22s ease-out}
.back-to-top:hover{background:#285641;transform:translateY(-3px)}
.back-to-top:focus-visible{outline-color:#a16b21;outline-offset:4px}
body.menu-open .back-to-top{visibility:hidden;pointer-events:none}
@keyframes back-to-top-in{from{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}
@media(max-width:800px){.back-to-top{right:18px;bottom:calc(82px + env(safe-area-inset-bottom));width:60px;height:60px}}

/* Language selection belongs with the contact utilities above the main menu. */
@media(min-width:1101px) and (max-width:1200px){.header-inner{gap:16px}}
@media(max-width:400px){.brand{gap:7px}.header-inner{gap:8px}}
.topbar{position:relative;z-index:70}
.topbar-inner{min-height:48px;padding-block:6px}
.topbar-actions{display:flex;align-items:center;gap:22px}
.topbar-phone{display:flex;align-items:center;gap:8px;font-weight:600;white-space:nowrap}
html[lang="vi"] h1,html[lang="vi"] h2,html[lang="vi"] h3{line-height:1.18}
html[lang="vi"] .hero-title{font-size:clamp(50px,5.2vw,72px);letter-spacing:-1.3px}
html[lang="vi"] .hero-title em{white-space:normal}
html[lang="vi"] .eyebrow{letter-spacing:.8px}
html[lang="vi"] .hero .eyebrow{font-size:13px}
html[lang="vi"] .hero-seal{max-width:280px}
html[lang="vi"] .hero-secondary{max-width:100%}
@media(min-width:1101px) and (max-width:1350px){
  html[lang="vi"] .header-inner>.nav-cta{display:none}
  html[lang="vi"] .desktop-nav{gap:22px}
}
@media(max-width:800px){
  .topbar-actions{width:100%;justify-content:space-between;gap:14px}
}
@media(max-width:600px){
  .topbar-consult-label,.topbar-phone>.arrow{display:none}
  .topbar-phone{font-size:14px}
}
@media(max-width:480px){
  html[lang="vi"] .hero-title{font-size:46px;letter-spacing:-.7px;line-height:1.16}
  html[lang="vi"] .hero-title em{font-size:inherit}
  html[lang="vi"] .page-hero h1{font-size:43px}
  html[lang="vi"] .hero .eyebrow{line-height:1.9}
  html[lang="vi"] .mobile-call-bar{font-size:14px}
}
@media(max-width:360px){
  html[lang="vi"] .hero-title{font-size:40px}
  html[lang="vi"] .page-hero h1{font-size:38px}
}
@media(max-width:782px){html:has(body.admin-bar){--admin-offset:46px}}
@media(max-width:600px){html:has(body.admin-bar){--admin-offset:0px}}
/* Give visitors clear choices and a direct path to the request form. */
.hero-title{font-size:clamp(58px,5.6vw,78px);line-height:1.05;letter-spacing:-1.6px}
.hero-copy{padding-block:58px}
.hero-services{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 29px;padding:0 0 22px;border-bottom:1px solid #738f7d}
.hero-services a{display:inline-flex;align-items:center;gap:8px;padding-block:6px;color:#f6ead3;font-size:16px;line-height:1.5}
.hero-services a:hover{color:#fff;text-decoration:underline;text-underline-offset:5px}
.hero-services .arrow{font-size:18px}
.hero-secondary>svg{width:19px;height:19px}
.desktop-nav .nav-login{background:transparent;color:var(--ink);border-color:#a8b5a8}
.desktop-nav .nav-login:hover{background:var(--soft);border-color:var(--forest)}
.trust-item strong{font-size:24px}
.trust-item strong a{display:inline-flex;align-items:center;gap:9px;text-decoration:underline;text-decoration-color:#98a48c;text-underline-offset:5px}
.trust-item .trust-languages{font-family:var(--sans);font-size:16px;font-weight:600;line-height:1.8}
.attorney-profile-link{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0 0}
#consultation-form{scroll-margin-top:12px}
.form-next-step{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);font-size:15px;line-height:1.7;color:var(--muted)}
.form-next-step strong{display:block;margin-bottom:5px;color:var(--ink);font-weight:700}
.form-next-step p{margin:0}
.consultation-guide{margin-top:48px;padding-top:38px;border-top:1px solid var(--line)}
.rich-copy .consultation-guide h2{font-size:clamp(35px,3.5vw,46px);line-height:1.16;margin-bottom:20px}
.rich-copy .consultation-guide h3{font-family:var(--sans);font-size:18px;letter-spacing:0;line-height:1.6;margin:28px 0 14px;font-weight:700}
.rich-copy .guide-checklist{list-style:none;padding:20px 24px;margin:0;background:#eaf0e5;border:1px solid #ced9c5;border-radius:6px}
.rich-copy .guide-checklist li{position:relative;padding-left:26px;margin:9px 0;font-size:17px;line-height:1.7}
.guide-checklist li::before{content:'✓';position:absolute;left:0;color:#3b674e;font-weight:700}
.guide-faq details{border-bottom:1px solid #c9d2c4;padding:0}
.guide-faq summary{position:relative;list-style:none;cursor:pointer;padding:21px 32px 21px 0;font-weight:600;line-height:1.65;font-size:17px}
.guide-faq summary::-webkit-details-marker{display:none}
.guide-faq summary::after{content:'+';position:absolute;right:4px;top:19px;color:var(--gold-dark);font-size:25px;line-height:1.3;font-weight:400}
.guide-faq details[open] summary::after{content:'−'}
.guide-faq details p{font-size:17px;line-height:1.8;padding-right:18px;margin:0 0 24px}
.guide-next-step{display:flex;align-items:flex-start;flex-direction:column;gap:16px;margin-top:28px}
.guide-next-step .button{max-width:100%;white-space:normal}
@media(min-width:1101px) and (max-width:1350px){.header-inner{gap:16px}.desktop-nav{gap:18px}.nav-cta{gap:10px;padding-inline:14px}}
@media(max-width:800px){
  .hero-copy{padding-block:46px}
  .hero-title{font-size:clamp(50px,8vw,70px)}
  .hero-services{gap:7px 17px}
  .hero-services a{font-size:16px}
  .mobile-call-bar{padding:0 12px env(safe-area-inset-bottom);min-height:68px;gap:0;justify-content:stretch;background:#faf8f2}
  .mobile-call-bar>a{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;min-height:48px;margin:8px 0;padding:9px 10px;font-size:15px;line-height:1.4;text-align:center}
  .mobile-call-bar>a:first-child{color:var(--forest);border:1px solid #9eac97;border-radius:4px 0 0 4px}
  .mobile-call-bar>a:last-child{background:var(--gold);color:#18392f;border:1px solid var(--gold);border-radius:0 4px 4px 0}
  .mobile-call-bar>a:hover{background:#e9e5d7;color:var(--forest)}
  .mobile-call-bar svg{width:19px;height:19px}
  .mobile-call-bar .arrow{font-size:19px}
  .back-to-top{bottom:calc(86px + env(safe-area-inset-bottom))}
}
@media(max-width:480px){
  .hero-title{font-size:52px;letter-spacing:-1px}
  .hero-services{gap:7px 15px}
  .hero-services a{font-size:15px}
  .hero-actions{gap:17px}
  .hero-actions .button{width:100%}
  .hero-secondary{margin-inline:auto;font-size:16px}
  .trust-item strong{font-size:24px}
  .rich-copy .guide-checklist{padding:15px 17px}
  .mobile-call-bar>a{font-size:14px;padding-inline:7px;gap:7px}
  html[lang="es"] .hero-title{font-size:49px}
}
@media print{.back-to-top{display:none!important}.site-header{position:static;box-shadow:none}.is-revealing{opacity:1!important;translate:none!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.practice-card:hover,a.detail-card:hover,.button-gold:hover,.back-to-top:hover{transform:none}.is-revealing{opacity:1!important;translate:none!important;will-change:auto}}
