.elementor-kit-10{--e-global-color-primary:#591616;--e-global-color-secondary:#2D2C2B;--e-global-color-text:#2D2C2B;--e-global-color-accent:#E7C9A0;--e-global-color-oxbldhv:#6E1D1D;--e-global-color-bone000:#F7F3EC;--e-global-color-bone002:#FBF8F3;--e-global-color-gray070:rgba(45,44,43,0.72);--e-global-color-gray055:rgba(45,44,43,0.55);--e-global-color-line016:rgba(45,44,43,0.16);--e-global-color-line009:rgba(45,44,43,0.09);--e-global-color-prtint8:rgba(89,22,22,0.08);--e-global-color-white000:#FFFFFF;--e-global-typography-primary-font-family:"Newsreader";--e-global-typography-primary-font-weight:500;--e-global-typography-primary-line-height:1.05em;--e-global-typography-primary-letter-spacing:-0.018em;--e-global-typography-secondary-font-family:"Hanken Grotesk";--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-letter-spacing:0.02em;--e-global-typography-text-font-family:"Hanken Grotesk";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Hanken Grotesk";--e-global-typography-accent-font-weight:600;--e-global-typography-tdisply-font-family:"Newsreader";--e-global-typography-tdisply-font-size:72px;--e-global-typography-tdisply-font-weight:500;--e-global-typography-tdisply-line-height:1.02em;--e-global-typography-tdisply-letter-spacing:-0.025em;--e-global-typography-teyebrw-font-family:"Hanken Grotesk";--e-global-typography-teyebrw-font-size:11px;--e-global-typography-teyebrw-font-weight:600;--e-global-typography-teyebrw-text-transform:uppercase;--e-global-typography-teyebrw-letter-spacing:0.24em;--e-global-typography-tlead00-font-family:"Hanken Grotesk";--e-global-typography-tlead00-font-size:18px;--e-global-typography-tlead00-font-weight:400;--e-global-typography-tlead00-line-height:1.7em;--e-global-typography-tcaptn0-font-family:"Hanken Grotesk";--e-global-typography-tcaptn0-font-size:13px;--e-global-typography-tcaptn0-font-weight:600;--e-global-typography-tcaptn0-text-transform:uppercase;--e-global-typography-tcaptn0-letter-spacing:0.14em;background-color:#F7F3EC;color:#2D2C2B;font-family:"Hanken Grotesk", Georgia, serif;font-size:17px;font-weight:400;line-height:1.7em;}.elementor-kit-10 button,.elementor-kit-10 input[type="button"],.elementor-kit-10 input[type="submit"],.elementor-kit-10 .elementor-button{background-color:#591616;font-family:"Hanken Grotesk", Georgia, serif;font-size:15px;font-weight:600;color:#F7F3EC;border-style:solid;border-width:2px 2px 2px 2px;border-color:#591616;border-radius:4px 4px 4px 4px;}.elementor-kit-10 button:hover,.elementor-kit-10 button:focus,.elementor-kit-10 input[type="button"]:hover,.elementor-kit-10 input[type="button"]:focus,.elementor-kit-10 input[type="submit"]:hover,.elementor-kit-10 input[type="submit"]:focus,.elementor-kit-10 .elementor-button:hover,.elementor-kit-10 .elementor-button:focus{background-color:#6E1D1D;color:#F7F3EC;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-kit-10 a{color:#591616;}.elementor-kit-10 a:hover{color:#6E1D1D;}.elementor-kit-10 h1{color:#2D2C2B;font-family:"Newsreader", Georgia, serif;font-size:51px;font-weight:500;line-height:1.04em;letter-spacing:-0.018em;}.elementor-kit-10 h2{color:#2D2C2B;font-family:"Newsreader", Georgia, serif;font-size:38px;font-weight:500;line-height:1.1em;letter-spacing:-0.018em;}.elementor-kit-10 h3{color:#2D2C2B;font-family:"Newsreader", Georgia, serif;font-size:24px;font-weight:500;line-height:1.2em;}.elementor-kit-10 h4{color:#2D2C2B;font-family:"Newsreader", Georgia, serif;font-size:20px;font-weight:600;line-height:1.3em;}.elementor-kit-10 input:not([type="button"]):not([type="submit"]),.elementor-kit-10 textarea,.elementor-kit-10 .elementor-field-textual{font-family:"Hanken Grotesk", Georgia, serif;font-size:15px;font-weight:400;color:#2D2C2B;background-color:#F7F3EC;border-style:solid;border-width:1px 1px 1px 1px;border-color:rgba(45,44,43,0.16);border-radius:4px 4px 4px 4px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1080px;}.e-con{--container-max-width:1080px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-10{--e-global-typography-tdisply-font-size:56px;}.elementor-kit-10 h1{font-size:42px;}.elementor-kit-10 h2{font-size:32px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-10{--e-global-typography-tdisply-font-size:40px;}.elementor-kit-10 h1{font-size:34px;}.elementor-kit-10 h2{font-size:30px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root{--serif:"Newsreader",Georgia,serif;--sans:"Hanken Grotesk",system-ui,sans-serif;--primary:#591616;--primary-hover:#6e1d1d;--accent:#E7C9A0;--bone:#F7F3EC;--bone-2:#FBF8F3;--ink:#2D2C2B;--gray70:rgba(45,44,43,.72);--gray55:rgba(45,44,43,.55);--line:rgba(45,44,43,.16);--line-soft:rgba(45,44,43,.09);--panel:rgba(45,44,43,.06);--primary-08:rgba(89,22,22,.08);--primary-06:rgba(89,22,22,.06);--radius:6px;--pill:999px;--measure:62ch;--container:1080px;}html{scroll-behavior:smooth;}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased;}.container{max-width:var(--container);margin:0 auto;padding:0 28px;}.serif{font-family:var(--serif);}.eyebrow{font-weight:600;font-size:.71rem;letter-spacing:.24em;text-transform:uppercase;color:var(--primary);margin:0 0 20px;}h1,.h1,h2,.h2,h3,.h3{font-family:var(--serif);font-weight:500;letter-spacing:-.018em;line-height:1.04;margin:0 0 12px;}.display{font-family:var(--serif);font-weight:500;letter-spacing:-.025em;line-height:1.02;font-size:clamp(2.7rem,6.4vw,5.2rem);}h1,.h1{font-size:clamp(2.1rem,4.6vw,3.2rem);}h2,.h2{font-size:clamp(1.9rem,3.6vw,2.4rem);}h3,.h3{font-size:1.5rem;}.lead{font-size:1.08rem;color:var(--gray70);max-width:var(--measure);line-height:1.7;}.caption{font-family:var(--sans);font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gray55);}.btn{font-family:var(--sans);font-weight:600;font-size:.92rem;padding:13px 26px;border-radius:var(--radius);border:1.5px solid transparent;text-decoration:none;display:inline-block;cursor:pointer;transition:.18s ease;}.btn--primary{background:var(--primary);color:var(--bone);}.btn--primary:hover{background:var(--primary-hover);}.btn--secondary{background:transparent;color:var(--primary);border-color:var(--primary);}.btn--secondary:hover{background:var(--primary);color:var(--bone);}.btn--dark{background:var(--ink);color:var(--bone);}.btn--dark:hover{background:#403e3c;}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;}.chip{font-weight:600;font-size:.7rem;letter-spacing:.06em;padding:5px 12px;border-radius:var(--pill);background:var(--primary-08);color:var(--primary);}.field-label{display:block;font-weight:600;font-size:.78rem;letter-spacing:.04em;color:var(--ink);margin-bottom:7px;}.field{width:100%;font-family:inherit;font-size:.95rem;color:var(--ink);padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bone);outline:none;box-sizing:border-box;}.field:focus{border-color:var(--primary);}.notice{display:flex;gap:12px;padding:14px 16px;border-radius:var(--radius);line-height:1.5;font-size:.9rem;color:var(--gray70);}.notice--info{background:var(--primary-06);border-left:3px solid var(--primary);}.notice--success{background:rgba(45,44,43,.05);border-left:3px solid var(--gray55);}@media (max-width:720px){.grid-3,.grid-2{grid-template-columns:1fr !important;}}.section{padding:84px 0;border-bottom:1px solid var(--line-soft);}.center .lead{margin-left:auto;margin-right:auto;}.flg-header{position:fixed;top:0;left:0;right:0;z-index:50;background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,rgba(0,0,0,.18) 62%,rgba(0,0,0,0) 100%);transition:background-color .3s ease,box-shadow .3s ease;}.flg-header.flg-scrolled{background:var(--bone-2);border-bottom:1px solid var(--line-soft);box-shadow:0 6px 22px rgba(45,44,43,.09);}.flg-header.flg-scrolled .nav>a,.flg-header.flg-scrolled .nav .has-menu>a{color:var(--ink);text-shadow:none;}.flg-header.flg-scrolled .nav>a:hover,.flg-header.flg-scrolled .nav .has-menu>a:hover,.flg-header.flg-scrolled .has-menu:hover>a{color:var(--primary);}.flg-header.flg-scrolled .phone-loc .lbl{color:var(--gray55);}.flg-header.flg-scrolled .phone-loc .lbl:hover{color:var(--primary);}.flg-header.flg-scrolled .phone-loc a.tel{color:var(--primary);text-shadow:none;}.flg-header.flg-scrolled .phone-loc a.tel:hover{color:var(--ink);}.flg-header.flg-scrolled .phones,.flg-header.flg-scrolled .phone-loc + .phone-loc{border-left-color:var(--line);}.flg-header.flg-scrolled .burger{color:var(--bone);}.brand{position:relative;}.brand img{width:180px;height:auto;display:block;transition:opacity .28s ease;}.brand__c{position:absolute;top:0;left:0;opacity:0;}.flg-header.flg-scrolled .brand__w{opacity:0;}.flg-header.flg-scrolled .brand__c{opacity:1;}.flg-header.nav-open .brand__w{opacity:1;}.flg-header.nav-open .brand__c{opacity:0;}.triple-rule{height:7px;background:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-size:100% 1px,78% 1px,56% 1px;background-position:center top,center center,center bottom;background-repeat:no-repeat;}.bar{display:flex;align-items:center;gap:30px;padding:13px 32px;max-width:1280px;margin:0 auto;}.brand{flex:none;display:flex;align-items:center;}.nav{display:flex;align-items:center;gap:0 40px;margin-left:auto;}.nav>a,.nav .has-menu>a{position:relative;color:var(--bone);text-decoration:none;white-space:nowrap;font-weight:600;font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;padding:22px 0;display:inline-flex;align-items:center;gap:5px;text-shadow:0 1px 10px rgba(0,0,0,.35);}.nav>a:hover,.nav .has-menu>a:hover{color:#fff;}.nav>a::after,.nav .has-menu>a::after{content:"";position:absolute;left:0;right:0;bottom:20px;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:center;transition:transform .24s ease;}.nav>a:hover::after,.nav .has-menu>a:hover::after,.has-menu:hover>a::after{transform:scaleX(1);}.has-menu{position:relative;display:flex;align-items:center;}.has-menu .menu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:0 26px 60px rgba(45,44,43,.18),0 2px 6px rgba(45,44,43,.06);padding:24px 26px;opacity:0;visibility:hidden;transition:opacity .16s ease,transform .16s ease,visibility .16s ease;z-index:60;}.has-menu:hover .menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}.menu--wide{display:flex;gap:38px;}.menu col,.menu .col{display:block;min-width:208px;}.menu .col>a.head{font-family:var(--serif);font-size:1.05rem;color:var(--primary);text-decoration:none;display:block;padding-bottom:8px;margin-bottom:8px;border-bottom:1px solid var(--line-soft);}.menu ul{list-style:none;margin:0;padding:0;}.menu ul a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 0;font-size:.88rem;color:var(--ink);text-decoration:none;font-weight:600;}.menu ul a:hover{color:var(--primary);}.menu .has-sub{position:relative;}.menu .has-sub>a::after{content:"\203A";font-size:1.15rem;line-height:1;opacity:.4;transition:opacity .16s,transform .16s;}.menu .has-sub:hover>a{color:var(--primary);}.menu .has-sub:hover>a::after{opacity:1;transform:translateX(2px);}.menu .is-ext>a::after{content:"\2197";font-size:.9rem;line-height:1;opacity:.38;transition:opacity .16s,transform .16s;}.menu .is-ext>a:hover::after{opacity:1;transform:translate(2px,-2px);}.menu .submenu{position:absolute;left:calc(100% + 20px);top:-16px;min-width:250px;background:#fff;border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:0 26px 60px rgba(45,44,43,.20),0 2px 6px rgba(45,44,43,.06);padding:20px 24px;opacity:0;visibility:hidden;transform:translateX(-6px);transition:.16s ease;z-index:70;}.menu .has-sub:hover>.submenu{opacity:1;visibility:visible;transform:translateX(0);}.menu .submenu .grp__k{display:block;font-family:var(--sans);font-size:.6rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--primary);padding:8px 0 6px;}.menu .submenu .grp>ul{margin:0 0 6px;padding-left:13px;border-left:1px solid var(--line-soft);}.menu .submenu a{font-weight:400;font-size:.84rem;color:var(--gray70);padding:6px 0;}.menu .submenu a:hover{color:var(--primary);}.has-menu .menu--drop{min-width:250px;left:0;transform:translateX(0) translateY(8px);}.has-menu:hover .menu--drop{transform:translateX(0) translateY(0);}.has-menu .menu--right{left:auto;right:0;transform:translateX(0) translateY(8px);}.has-menu:hover .menu--right{transform:translateX(0) translateY(0);}.actions{display:flex;align-items:center;gap:18px;flex:none;}.phones{display:flex;align-items:stretch;padding-left:28px;border-left:1px solid rgba(247,243,236,.28);}.phone-loc + .phone-loc{margin-left:28px;padding-left:28px;border-left:1px solid rgba(247,243,236,.28);}.phone-loc .lbl{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(247,243,236,.7);font-weight:700;display:block;text-decoration:none;transition:color .18s;}.phone-loc .lbl:hover{color:#fff;}.phone-loc a.tel{font-family:var(--serif);font-weight:600;font-size:1.06rem;color:var(--bone);text-decoration:none;white-space:nowrap;display:block;transition:color .18s;text-shadow:0 1px 10px rgba(0,0,0,.35);}.phone-loc a.tel:hover{color:#fff;}.burger{display:none;background:none;border:none;font-size:1.5rem;color:var(--bone);cursor:pointer;}.m-tog,.m-only{display:none;}
@media (max-width:1140px){.nav,.phones{display:none;}.burger{display:block;margin-left:auto;position:relative;z-index:3;}.brand{position:relative;z-index:3;}.flg-header.nav-open .nav{display:flex;flex-direction:column;align-items:stretch;margin:0;position:fixed;inset:0;z-index:2;overflow-y:auto;background:linear-gradient(180deg,#2a0c0c 0%,#1b0707 100%);padding:92px 30px 48px;gap:0;}.flg-header.nav-open .has-menu{display:block;position:relative;}.flg-header.nav-open .nav > a,.flg-header.nav-open .has-menu > a{display:flex;color:var(--bone);padding:15px 52px 15px 0;font-size:.9rem;letter-spacing:.1em;justify-content:flex-start;border-bottom:1px solid rgba(247,243,236,.13);text-shadow:none;}.flg-header.nav-open .nav > a::after,.flg-header.nav-open .has-menu > a::after{display:none;}.flg-header.nav-open .m-tog{display:block;position:absolute;right:0;top:0;width:52px;height:52px;background:none;border:none;padding:0;cursor:pointer;color:rgba(247,243,236,.7);}.flg-header.nav-open .m-tog::before{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-7px 0 0 -5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s;}.flg-header.nav-open .is-open > .m-tog::before{transform:rotate(225deg);margin-top:-2px;}.flg-header.nav-open .is-open > .m-tog{color:var(--accent);}.flg-header.nav-open .menu{display:none;position:static;opacity:1;visibility:visible;transform:none;background:transparent;border:none;box-shadow:none;padding:2px 0 14px 14px;min-width:0;}.flg-header.nav-open .has-menu.is-open > .menu{display:block;}.flg-header.nav-open .has-menu.is-open > a{color:var(--accent);}.flg-header.nav-open .menu--wide{flex-direction:column;gap:0;}.flg-header.nav-open .has-menu.is-open > .menu--wide{display:flex;}.flg-header.nav-open .menu .col{min-width:0;}.flg-header.nav-open .menu .col > a.head{color:var(--accent);font-family:var(--sans);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;border:none;padding:14px 0 4px;margin:0;}.flg-header.nav-open .menu ul a{color:rgba(247,243,236,.82);font-weight:500;padding:9px 0;justify-content:flex-start;}.flg-header.nav-open .menu .has-sub{position:relative;}.flg-header.nav-open .menu .has-sub > a{padding-right:52px;}.flg-header.nav-open .menu .has-sub > a::after{display:none;}.flg-header.nav-open .menu .has-sub > .m-tog{height:40px;}.flg-header.nav-open .menu .has-sub.is-open > a{color:var(--accent);}.flg-header.nav-open .submenu{display:none;position:static;opacity:1;visibility:visible;transform:none;min-width:0;background:transparent;border:none;box-shadow:none;padding:2px 0 8px 14px;margin:0 0 4px;border-left:1px solid rgba(247,243,236,.14);}.flg-header.nav-open .has-sub.is-open > .submenu{display:block;}.flg-header.nav-open .submenu a{color:rgba(247,243,236,.68);font-size:.84rem;padding:7px 0;}.flg-header.nav-open .m-only{display:block;}}.trust{background:var(--bone-2);border-bottom:1px solid var(--line);}.trust__row{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:0 auto;padding:clamp(36px,4vw,56px) 24px;}.trust__item{padding:0 clamp(18px,2.4vw,38px);border-left:1px solid var(--line);}.trust__item:first-child{border-left:none;padding-left:0;}.trust__item:last-child{padding-right:0;}.trust__v{display:flex;align-items:flex-end;min-height:clamp(2.2rem,4.4vw,3.5rem);font-family:var(--serif);font-weight:500;font-size:clamp(2.2rem,4.4vw,3.5rem);line-height:1;color:var(--ink);letter-spacing:-.015em;}.trust__v--stars{font-size:clamp(1.35rem,2.3vw,1.95rem);letter-spacing:.07em;}.trust__l{position:relative;padding-left:42px;font-size:clamp(.94rem,1.15vw,1.06rem);color:var(--ink);line-height:1.34;margin-top:16px;}.trust__l::before{content:"";position:absolute;left:0;top:.48em;width:30px;height:7px;color:var(--primary);background:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor);background-size:100% 1px,70% 1px,40% 1px;background-position:right top,right center,right bottom;background-repeat:no-repeat;}@media (max-width:900px){.trust__row{grid-template-columns:repeat(2,1fr);row-gap:clamp(26px,4vw,38px);}.trust__item:nth-child(3){border-left:none;padding-left:0;}}@media (max-width:520px){.trust__row{grid-template-columns:1fr;row-gap:0;}.trust__item{border-left:none;padding:22px 0;border-top:1px solid var(--line);}.trust__item:first-child{border-top:none;padding-top:0;}.trust__item:last-child{padding-bottom:0;}}@media (max-width:760px){.cols-2{columns:1;}}details.qa{border-bottom:1px solid var(--line);}details.qa summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 2px;font-family:var(--serif);font-size:1.16rem;font-weight:500;color:var(--ink);}details.qa summary::-webkit-details-marker{display:none;}details.qa summary .mk{flex:none;color:var(--primary);font-size:1.4rem;line-height:1;transition:transform .2s;}details.qa[open] summary .mk{transform:rotate(45deg);}details.qa p{margin:0 2px 22px;color:var(--gray70);line-height:1.65;}.consult{background:var(--ink);color:var(--bone);}.consult__grid{max-width:1280px;margin:0 auto;padding:80px 32px;display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:start;}.consult h2{color:var(--bone);}.consult .lead{color:rgba(247,243,236,.82);max-width:48ch;}.form-embed{background:transparent;border-radius:var(--radius);overflow:hidden;}.footer{background:var(--ink);color:rgba(247,243,236,.72);}.footer__top{max-width:1160px;margin:0 auto;padding:44px 28px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;align-items:center;}.footer__top img{height:34px;width:auto;}.footer__legal{max-width:1160px;margin:0 auto;padding:0 28px 36px;display:flex;flex-wrap:wrap;gap:10px 22px;border-top:1px solid rgba(247,243,236,.14);padding-top:18px;}.footer__legal a{font-size:.82rem;color:rgba(247,243,236,.85);text-decoration:underline;}.flg-header{max-width:none;width:100%;}
  .footer { background: var(--ink); color: rgba(247,243,236,.72); }
  .footer .footer__grid { max-width: 1160px; margin: 0 auto; padding: 58px 28px 38px; display: grid;
    grid-template-columns: 1.55fr 1fr 1fr 1fr; gap: 40px 34px; }
  .footer .footer__brand img { height: 38px; width: auto; margin-bottom: 18px; }
  .footer .footer__blurb { font-size: .86rem; line-height: 1.66; margin: 0 0 12px; max-width: 36ch; color: rgba(247,243,236,.72); }
  .footer .footer__note { font-size: .82rem; line-height: 1.6; color: rgba(247,243,236,.52); margin: 0; }
  .footer .footer__h { font-family: var(--serif); font-size: 1.04rem; font-weight: 500; color: var(--bone);
    margin: 0 0 15px; position: relative; padding-left: 42px; letter-spacing: .01em; }
  .footer .footer__h::before { content: ""; position: absolute; left: 0; top: .5em; width: 30px; height: 7px; color: var(--accent);
    background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor);
    background-size: 100% 1px, 70% 1px, 40% 1px;
    background-position: right top, right center, right bottom; background-repeat: no-repeat; }
  .footer .footer__addr { font-style: normal; font-size: .84rem; line-height: 1.62; margin: 0 0 9px; color: rgba(247,243,236,.72); }
  .footer .footer__tel { display: inline-block; font-family: var(--serif); font-size: 1.06rem; color: var(--bone);
    text-decoration: none; margin-bottom: 17px; transition: color .18s; }
  .footer .footer__tel:hover { color: var(--accent); }
  .footer .footer__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
  .footer .footer__links a { font-size: .86rem; color: rgba(247,243,236,.78); text-decoration: none; transition: color .18s; }
  .footer .footer__links a:hover { color: var(--accent); }
  .footer .footer__cta { display: inline-block; margin-top: 20px; padding: 11px 18px; border: 1px solid rgba(247,243,236,.34);
    border-radius: var(--radius); font-size: .74rem; letter-spacing: .08em; text-transform: uppercase;
    color: var(--bone); text-decoration: none; transition: border-color .18s, color .18s; }
  .footer .footer__cta:hover { border-color: var(--accent); color: var(--accent); }
  .footer .footer__legal { max-width: 1160px; margin: 0 auto; padding: 18px 28px 40px; border-top: 1px solid rgba(247,243,236,.14); }
  .footer .footer__legalnav { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-bottom: 14px; }
  .footer .footer__legalnav a { font-size: .82rem; color: rgba(247,243,236,.85); text-decoration: underline; }
  .footer .footer__legalnav a:hover { color: var(--accent); }
  .footer .footer__fine { font-size: .76rem; line-height: 1.62; color: rgba(247,243,236,.45); margin: 0; max-width: 86ch; }
  @media (max-width: 1000px){ .footer .footer__grid { grid-template-columns: 1fr 1fr; } }
  @media (max-width: 620px){ .footer .footer__grid { grid-template-columns: 1fr; gap: 32px; padding: 44px 24px 30px; }
    .footer .footer__legal { padding: 18px 24px 34px; } }
/* kit styles bare <a> at (0,1,1) and outranks .btn--modifier (0,1,0) */
.elementor a.btn--primary { background: var(--primary); color: var(--bone); }
.elementor a.btn--primary:hover { background: var(--primary-hover); color: var(--bone); }
.elementor a.btn--secondary { background: transparent; color: var(--primary); border-color: var(--primary); }
.elementor a.btn--secondary:hover { background: var(--primary); color: var(--bone); }
.elementor a.btn--dark { background: var(--ink); color: var(--bone); }
.elementor a.btn--dark:hover { background: #403e3c; color: var(--bone); }

/* breadcrumb bar - the converter drops the <nav> the template sized, so scope by the bar */
.elementor .crumbbar { font-size: .8rem; letter-spacing: .02em; color: rgba(45,44,43,.55); }
.elementor .crumbbar a { color: #591616; text-decoration: none; font-weight: 600; }
.elementor .crumbbar a:hover { text-decoration: underline; }
.elementor .crumbbar .cur { color: #2D2C2B; }
.elementor .crumbbar .rank-math-breadcrumb p { margin: 0; }
.elementor .crumbbar .rank-math-breadcrumb .last { color: #2D2C2B; }

/* ---- Fontes page system: shared rules, moved out of per-page CSS ---- */
.flg-page .hero { position: relative; color: var(--bone); overflow: hidden; display: flex; }
.flg-page .hero__wash { position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(28,14,10,.44) 0%, rgba(28,14,10,.16) 46%, rgba(28,14,10,.30) 100%); }
.flg-page .attstrip__label { font-family: var(--sans); font-size: .66rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--primary); text-align: center; margin: 0 0 20px; }
.flg-page .attstrip__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 16px 32px; }
.flg-page .attstrip__list a { display: flex; align-items: center; gap: 13px; text-decoration: none; }
.flg-page .attstrip__list img { width: 58px; height: 76px; object-fit: cover; border-radius: var(--radius); background: linear-gradient(160deg, #6e1d1d, #3f1010); flex: none; }
.flg-page .attstrip__txt { display: flex; flex-direction: column; }
.flg-page .attstrip__n { font-family: var(--serif); font-size: 1.06rem; color: var(--ink); line-height: 1.25; }
.flg-page .attstrip__list a:hover .attstrip__n { color: var(--primary); }
.flg-page .attstrip__r { font-size: .7rem; letter-spacing: .09em; text-transform: uppercase; color: var(--gray55); font-weight: 600; margin-top: 3px; }
@media (max-width: 560px) {
  .flg-page .attstrip__list { flex-direction: column; align-items: flex-start; gap: 16px; width: max-content; margin: 0 auto; }
}
.flg-page .trust__row { display: grid; grid-template-columns: repeat(4, 1fr); max-width: 1240px; margin: 0 auto; }
.flg-page .trust__item:first-child { border-left: none; padding-left: 0; }
.flg-page .trust__item:last-child { padding-right: 0; }
.flg-page .trust__v { display: flex; align-items: flex-end; min-height: clamp(2.2rem, 4.4vw, 3.5rem); font-family: var(--serif); font-weight: 500; font-size: clamp(2.2rem, 4.4vw, 3.5rem); line-height: 1; color: var(--ink); letter-spacing: -.015em; }
.flg-page .trust__v--stars { font-size: clamp(1.35rem, 2.3vw, 1.95rem); letter-spacing: .07em; }
.flg-page .trust__l { position: relative; padding-left: 42px; font-size: clamp(.94rem, 1.15vw, 1.06rem); color: var(--ink); line-height: 1.34; margin-top: 16px; }
.flg-page .trust__l::before { content: ""; position: absolute; left: 0; top: .48em; width: 30px; height: 7px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }
@media (max-width: 900px) {
  .flg-page .trust__row { grid-template-columns: repeat(2, 1fr); row-gap: clamp(26px, 4vw, 38px); }
  .flg-page .trust__item:nth-child(3) { border-left: none; padding-left: 0; }
}
@media (max-width: 520px) {
  .flg-page .trust__row { grid-template-columns: 1fr; row-gap: 0; }
  .flg-page .trust__item { border-left: none; padding: 22px 0; border-top: 1px solid var(--line); }
  .flg-page .trust__item:first-child { border-top: none; padding-top: 0; }
  .flg-page .trust__item:last-child { padding-bottom: 0; }
}
.flg-page .faq { max-width: 840px; margin: 38px auto 0; }
.flg-page .consult { color: var(--bone); }
.flg-page .consult h2 { color: var(--bone); }
.flg-page .consult .lead { color: rgba(247,243,236,.82); max-width: 48ch; }
.flg-page .offices .lbl { font-weight: 600; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); margin-bottom: 8px; }
.flg-page .offices .addr { font-size: .95rem; color: rgba(247,243,236,.82); line-height: 1.65; }
.flg-page .offices .addr a { color: var(--bone); text-decoration: none; }
.flg-page .form-embed { background: transparent; border-radius: var(--radius); overflow: hidden; }
@media (max-width: 900px) {
  .flg-page .consult__grid, .flg-page .offices { grid-template-columns: 1fr; }
}
.flg-page .crumbbar .container { max-width: 1280px; padding: 12px 32px; }
.flg-page .crumbbar nav { font-size: .8rem; letter-spacing: .02em; color: var(--gray55); }
.flg-page .crumbbar a { color: var(--primary); text-decoration: none; font-weight: 600; }
.flg-page .crumbbar a:hover { text-decoration: underline; }
.flg-page .crumbbar .cur { color: var(--ink); }
.flg-page .layout { display: grid; grid-template-columns: 300px minmax(0,1fr); }
.flg-page .rail { display: flex; flex-direction: column; gap: 22px; height: 100%; }
.flg-page .rail__card { border: 1px solid var(--line); border-radius: var(--radius); background: #fff; padding: 22px 22px 24px; }
.flg-page .rail__card--dark { background: var(--ink); border-color: rgba(247,243,236,.14); }
.flg-page .rail__label { display: block; font-family: var(--sans); font-size: .66rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--primary); margin: 0 0 14px; }
.flg-page .rail__card--dark .rail__label { color: var(--accent); }
.flg-page .rail__office h3 { font-family: var(--serif); font-size: 1.16rem; color: var(--bone); margin: 0 0 8px; }
.flg-page .rail__addr { font-size: .9rem; line-height: 1.6; color: rgba(247,243,236,.78); font-style: normal; margin: 0 0 14px; }
.flg-page .rail__addr a { color: rgba(247,243,236,.78); text-decoration: underline; text-underline-offset: 3px; }
.flg-page .rail__addr a:hover { color: var(--accent); }
.flg-page .rail__tel { display: block; font-family: var(--serif); font-size: 1.34rem; color: var(--bone); text-decoration: none; letter-spacing: .01em; }
.flg-page .rail__tel:hover { color: var(--accent); }
.flg-page .rail__fax { font-size: .78rem; color: rgba(247,243,236,.55); margin: 4px 0 16px; }
.flg-page .rail__stick { position: sticky; top: 112px; background: var(--ink); border-radius: var(--radius); border: 1px solid rgba(247,243,236,.10); padding: 20px 22px 22px; box-shadow: 0 18px 44px rgba(45,44,43,.24); }
.flg-page .rail__stick .k { font-family: var(--sans); font-size: .62rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); margin: 0 0 10px; }
.flg-page .rail__stick .tel { display: block; font-family: var(--serif); font-size: 1.32rem; color: var(--bone); text-decoration: none; margin-bottom: 16px; transition: color .16s; }
.flg-page .rail__stick .tel:hover { color: var(--accent); }
.flg-page .rail__cta { display: block; width: 100%; text-align: center; box-sizing: border-box; font-size: .9rem; padding: 14px 18px; }
.flg-page .rail__drop { padding: 0; }
.flg-page .rail__drop > summary { list-style: none; cursor: pointer; padding: 18px 20px; display: flex; align-items: center; gap: 12px; }
.flg-page .rail__drop > summary::-webkit-details-marker { display: none; }
.flg-page .rail__drop > summary:hover .rail__drop__val { color: var(--primary); }
.flg-page .rail__drop .rail__label { margin: 0 0 3px; }
.flg-page .rail__drop__val { font-family: var(--serif); font-size: 1.06rem; color: var(--ink); line-height: 1.2; }
.flg-page .rail__drop__caret { margin-left: auto; flex: none; width: 9px; height: 9px; border-right: 1.5px solid var(--primary); border-bottom: 1.5px solid var(--primary); transform: rotate(45deg) translate(-2px,-2px); transition: transform .18s ease; }
.flg-page .rail__drop[open] .rail__drop__caret { transform: rotate(225deg) translate(-2px,-2px); }
.flg-page .rail__drop__body { padding: 4px 20px 18px; border-top: 1px solid var(--line-soft); }
.flg-page .toc { list-style: none; margin: 0; padding: 0; }
.flg-page .toc li + li { border-top: 1px solid var(--line-soft); }
.flg-page .toc a { display: block; padding: 9px 0; font-size: .88rem; line-height: 1.4; color: var(--gray70); text-decoration: none; border-left: 2px solid transparent; padding-left: 12px; margin-left: -12px; transition: .16s; }
.flg-page .toc a:hover { color: var(--primary); }
.flg-page .siblings { list-style: none; margin: 0; padding: 0; }
.flg-page .siblings li + li { border-top: 1px solid var(--line-soft); }
.flg-page .siblings a { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 0; font-size: .89rem; font-weight: 600; color: var(--ink); text-decoration: none; }
.flg-page .siblings a::after { content: "\2192"; color: var(--primary); opacity: 0; transition: .16s; }
.flg-page .siblings a:hover { color: var(--primary); }
.flg-page .siblings a:hover::after { opacity: 1; }
.flg-page .siblings .is-current { color: var(--primary); font-weight: 700; cursor: default; }
.flg-page .siblings .is-current::after { content: none; }
.flg-page .rail__all { display: inline-block; margin-top: 14px; font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--primary); text-decoration: none; border-top: 1.5px solid var(--primary); padding-top: 12px; }
.flg-page .article > section { scroll-margin-top: 96px; }
.flg-page .article > section + section { margin-top: 52px; padding-top: 52px; border-top: 1px solid var(--line-soft); }
.flg-page .article h2 { font-size: clamp(1.7rem, 2.6vw, 2.2rem); margin: 0 0 16px; }
.flg-page .article h3 { font-size: 1.24rem; margin: 30px 0 10px; }
.flg-page .article p { color: var(--gray70); margin: 0 0 1.15em; }
.flg-page .article p a, .flg-page .article li a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.flg-page .article ul { margin: 0 0 1.15em; padding-left: 20px; list-style: none; }
.flg-page .article ul li { position: relative; padding: 5px 0 5px 42px; color: var(--gray70); }
.flg-page .article ul li::before { content: ""; position: absolute; left: 0; top: 12px; width: 28px; height: 7px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }
.flg-page .article .callout { border-left: 2px solid var(--primary); background: var(--bone-2); padding: 18px 22px; margin: 0 0 1.15em; }
.flg-page .article .callout p { margin: 0; }
.flg-page .feature { position: relative; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--radius); display: flex; align-items: flex-end; background: linear-gradient(160deg, #8f6e4f, #5c452f); margin: 0 0 28px; }
.flg-page .feature img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.flg-page .feature::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.94) 0%, rgba(60,46,33,.66) 48%, rgba(121,91,65,.46) 100%); }
.flg-page .article .feature h2 { position: relative; z-index: 2; width: 100%; box-sizing: border-box; color: var(--bone); margin: 0; padding: 0 clamp(20px, 4vw, 46px) clamp(20px, 2.8vw, 34px); font-size: clamp(1.35rem, 2.7vw, 2.1rem); line-height: 1.24; text-align: center; text-shadow: 0 2px 16px rgba(0,0,0,.5); }
.flg-page .article .feature h2::after { content: ""; display: block; width: 56px; height: 7px; margin: 14px auto 0; color: var(--accent); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 78% 1px, 56% 1px; background-position: center top, center center, center bottom; background-repeat: no-repeat; }
@media (max-width: 560px) {
  .flg-page .feature { aspect-ratio: 4 / 3; }
}
.flg-page .res { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.flg-page .article .res li::before { content: none; }
.flg-page .article .res li { padding: 14px 18px; }
.flg-page .res li { display: flex; justify-content: space-between; align-items: center; gap: 16px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; padding: 14px 18px; }
.flg-page .res span { font-size: .92rem; font-weight: 600; color: var(--ink); }
.flg-page .res a { font-size: .76rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: var(--primary); text-decoration: none; white-space: nowrap; }
.flg-page .res a:hover { text-decoration: underline; }
.flg-page .faq details { border-bottom: 1px solid var(--line); padding: 16px 0; }
.flg-page .faq summary { cursor: pointer; font-family: var(--serif); font-size: 1.1rem; color: var(--ink); list-style: none; display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.flg-page .faq summary::-webkit-details-marker { display: none; }
.flg-page .faq summary::after { content: "+"; color: var(--primary); font-family: var(--sans); font-size: 1.3rem; line-height: 1; flex: none; }
.flg-page .faq details[open] summary::after { content: "\2013"; }
/* hub pages carry their own +/x marker (.mk); do not add the sub-page ::after marker on top of it */
.flg-page .faq summary:has(.mk)::after, .flg-page .faq details[open] summary:has(.mk)::after { content: none; }

.flg-page .faq details p { margin: 12px 0 0; color: var(--gray70); }
@media (max-width: 1024px) {
  .flg-page .layout { display: flex; flex-direction: column; gap: 40px; }
  .flg-page .article { order: 1; }
  .flg-page .rail { order: 2; height: auto; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 22px; align-items: start; }
  .flg-page .rail__stick { position: static; grid-column: 1 / -1; box-shadow: none; }
  .flg-page .rail__toc { display: none; }
}
@media (max-width: 640px) {
  .flg-page .rail { grid-template-columns: 1fr; }
}
/* dissolve Elementor widget wrappers so grid items and absolutely positioned art resolve against the real parent, not the wrapper */ .flg-page .hero > .elementor-widget, .flg-page .hero > .elementor-widget > .elementor-widget-container { display: contents; }
/* headings inherit like the static template; Elementor forces --e-global-color-primary at (0,2,0) */ .flg-page .elementor-widget-heading .elementor-heading-title { color: inherit; }
/* restored: lifted into settings but the class never became a container */ .flg-page .offices { gap: 24px; margin-top: 30px; }


/* section dividers: the article body is one text widget, so the old .article > section + section rule can never match */
.flg-page .article .elementor-widget-text-editor h2 { margin-top: 52px; padding-top: 52px; border-top: 1px solid rgba(45,44,43,.09); }


/* sub-service pages built from the TEMPLATE (.flg-page.flg-sub).
   These used to live in page 99's own Custom CSS, which a copied container does not carry. */
.flg-page.flg-sub .hero__inner { max-width: 1000px; margin: 0 auto; text-align: center; }
.flg-page.flg-sub .hero h1 { color: var(--bone); font-size: clamp(2.1rem, 4.4vw, 3.4rem); text-shadow: 0 2px 22px rgba(0,0,0,.45); margin: 0; }
.flg-page.flg-sub .consult__grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.flg-page.flg-sub .offices { display: grid; grid-template-columns: 1fr 1fr; }
@media (max-width: 700px) {
  .flg-page.flg-sub .hero { min-height: 220px; }
  .flg-page.flg-sub .hero__inner { padding: 88px 22px 26px; }
}


/* .lawyer-headline - the display line that opens a service-page body.
   A <p>, not a heading, so it stays out of the Table of Contents. */
.flg-page .article .lawyer-headline { font-family: var(--serif); font-weight: 500; font-size: clamp(1.3rem, 2.1vw, 1.7rem); line-height: 1.3; color: var(--ink); margin: 0 0 24px; }


/* mobile single-column override for the two-column grids. Must outrank every desktop variant:
   the unscoped kit rule (0,1,0), per-page .flg-page copies (0,2,0) and .flg-page.flg-sub (0,3,0). Keep this last in the kit. */
/* ---- Practice-hub pages (family / immigration / criminal hubs): add class flg-hub to the .flg-page container ---- */
.flg-page.flg-hub .section--alt { background: var(--bone-2); }
.flg-page.flg-hub .center { text-align: center; }
.flg-page.flg-hub .center .lead { margin-left: auto; margin-right: auto; }
.flg-page.flg-hub .measure-c { max-width: 720px; margin-left: auto; margin-right: auto; }
.flg-page.flg-hub .hero { position: relative; color: var(--bone); overflow: hidden; display: flex; }
.flg-page.flg-hub .hero__inner { position: relative; z-index: 2; width: 100%; max-width: 1000px; margin: 0 auto; text-align: center; display: flex; flex-direction: column; }
.flg-page.flg-hub .hero .eyebrow { color: var(--accent); justify-content: center; }
.flg-page.flg-hub .hero h1 { color: var(--bone); font-size: clamp(2.4rem, 5vw, 3.8rem); text-shadow: 0 2px 24px rgba(0,0,0,.5); margin-bottom: 10px; }
.flg-page.flg-hub .hero .lead { color: rgba(247,243,236,.94); max-width: 60ch; margin: auto auto 0; text-shadow: 0 1px 12px rgba(0,0,0,.55); font-size: 1.16rem; }
@media (max-width: 1024px) {
  .flg-page.flg-hub .hero { min-height: clamp(500px, 78vw, 780px); }
  .flg-page.flg-hub .hero__inner { padding: 104px 24px 28px; justify-content: flex-start; }
  .flg-page.flg-hub .hero h1 { font-size: clamp(2rem, 5.4vw, 3.2rem); margin-bottom: 14px; }
  .flg-page.flg-hub .hero .lead { margin: 0 auto; font-size: 1.08rem; line-height: 1.55; max-width: 46ch; }
}
@media (max-width: 700px) {
  .flg-page.flg-hub .hero { min-height: clamp(500px, 92vw, 620px); }
  .flg-page.flg-hub .hero__inner { padding: 84px 22px 22px; }
  .flg-page.flg-hub .hero h1 { font-size: clamp(2rem, 7.6vw, 2.7rem); margin-bottom: 12px; }
  .flg-page.flg-hub .hero .lead { font-size: 1rem; line-height: 1.5; max-width: 36ch; }
}
.flg-page.flg-hub .trust__row { display: grid; grid-template-columns: repeat(4, 1fr); max-width: 1240px; margin: 0 auto; }
.flg-page.flg-hub .trust__item:first-child { border-left: none; padding-left: 0; }
.flg-page.flg-hub .trust__item:last-child { padding-right: 0; }
.flg-page.flg-hub .trust__v { display: flex; align-items: flex-end; min-height: clamp(2.2rem, 4.4vw, 3.5rem); font-family: var(--serif); font-weight: 500; font-size: clamp(2.2rem, 4.4vw, 3.5rem); line-height: 1; color: var(--ink); letter-spacing: -.015em; }
.flg-page.flg-hub .trust__v--stars { font-size: clamp(1.35rem, 2.3vw, 1.95rem); letter-spacing: .07em; }
.flg-page.flg-hub .trust__l { position: relative; padding-left: 42px; font-size: clamp(.94rem, 1.15vw, 1.06rem); color: var(--ink); line-height: 1.34; margin-top: 16px; }
.flg-page.flg-hub .trust__l::before { content: ""; position: absolute; left: 0; top: .48em; width: 30px; height: 7px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }
@media (max-width: 900px) {
  .flg-page.flg-hub .trust__row { grid-template-columns: repeat(2, 1fr); row-gap: clamp(26px, 4vw, 38px); }
  .flg-page.flg-hub .trust__item:nth-child(3) { border-left: none; padding-left: 0; }
}
@media (max-width: 520px) {
  .flg-page.flg-hub .trust__row { grid-template-columns: 1fr; row-gap: 0; }
  .flg-page.flg-hub .trust__item { border-left: none; padding: 22px 0; border-top: 1px solid var(--line); }
  .flg-page.flg-hub .trust__item:first-child { border-top: none; padding-top: 0; }
  .flg-page.flg-hub .trust__item:last-child { padding-bottom: 0; }
}
.flg-page.flg-hub .prose h2 { margin: 0 0 16px; }
.flg-page.flg-hub .prose p { color: var(--gray70); margin: 0 0 1.15em; }
.flg-page.flg-hub .prose p a { color: var(--primary); }
.flg-page.flg-hub .cols-2 { columns: 2; column-gap: 48px; }
@media (max-width: 760px) {
  .flg-page.flg-hub .cols-2 { columns: 1; }
}
.flg-page.flg-hub .att { position: relative; display: block; flex: 0 0 calc(25% - 15px); aspect-ratio: 3 / 4; border-radius: var(--radius); overflow: hidden; background: linear-gradient(160deg, #6e1d1d, #591616 55%, #3f1010); box-shadow: 0 12px 34px rgba(0,0,0,.3); text-decoration: none; }
.flg-page.flg-hub .att img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.flg-page.flg-hub .att__scrim { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.72) 6%, rgba(0,0,0,.28) 44%, transparent 72%); transition: .2s ease; }
.flg-page.flg-hub .att:hover .att__scrim { background: linear-gradient(to top, rgba(0,0,0,.95) 6%, rgba(0,0,0,.5) 46%, transparent 76%); }
.flg-page.flg-hub .att__meta { position: absolute; left: 0; right: 0; bottom: 0; padding: 20px 18px; display: flex; flex-direction: column; }
.flg-page.flg-hub .att__tag { order: 3; align-self: flex-start; font-size: .6rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; color: var(--ink); background: var(--accent); padding: 4px 9px; border-radius: var(--pill); margin-top: 12px; }
.flg-page.flg-hub .att__meta h3 { order: 1; color: var(--bone); font-size: 1.14rem; margin: 0 0 3px; }
.flg-page.flg-hub .att__meta .role { order: 2; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); font-weight: 600; display: flex; align-items: center; gap: 8px; }
.flg-page.flg-hub .att__meta .role::after { content: "View profile →"; margin-left: auto; color: rgba(247,243,236,.0); transition: .2s; font-weight: 600; letter-spacing: .04em; text-transform: none; }
.flg-page.flg-hub .att:hover .att__meta .role::after { color: rgba(247,243,236,.9); }
.flg-page.flg-hub .faq { max-width: 840px; margin: 38px auto 0; }
.flg-page.flg-hub details.qa { border-bottom: 1px solid var(--line); }
.flg-page.flg-hub details.qa summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px 2px; font-family: var(--serif); font-size: 1.16rem; font-weight: 500; color: var(--ink); }
.flg-page.flg-hub details.qa summary::-webkit-details-marker { display: none; }
.flg-page.flg-hub details.qa summary .mk { flex: none; color: var(--primary); font-size: 1.4rem; line-height: 1; transition: transform .2s; }
.flg-page.flg-hub details.qa[open] summary .mk { transform: rotate(45deg); }
.flg-page.flg-hub details.qa p { margin: 0 2px 22px; color: var(--gray70); line-height: 1.65; }
.flg-page.flg-hub .consult { color: var(--bone); }
.flg-page.flg-hub .consult__grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.flg-page.flg-hub .consult h2 { color: var(--bone); }
.flg-page.flg-hub .consult .lead { color: rgba(247,243,236,.82); max-width: 48ch; }
.flg-page.flg-hub .offices { display: grid; grid-template-columns: 1fr 1fr; }
.flg-page.flg-hub .offices .lbl { font-weight: 600; font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); margin-bottom: 8px; }
.flg-page.flg-hub .offices .addr { font-size: .95rem; color: rgba(247,243,236,.82); line-height: 1.65; }
.flg-page.flg-hub .offices .addr a { color: var(--bone); text-decoration: none; }
.flg-page.flg-hub .form-embed { background: transparent; border-radius: var(--radius); overflow: hidden; }
@media (max-width: 900px) {
  .flg-page.flg-hub .consult__grid, .flg-page.flg-hub .offices { grid-template-columns: 1fr; }
  .flg-page.flg-hub .att { flex-basis: calc(50% - 10px); }
}
@media (max-width: 560px) {
  .flg-page.flg-hub .att { flex-basis: 100%; }
}
.flg-page.flg-hub .fls-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.flg-page.flg-hub .fls { display: flex; flex-direction: column; }
.flg-page.flg-hub .fls h3 { font-size: 1.2rem; margin: 0 0 8px; }
.flg-page.flg-hub .fls p { font-size: .92rem; color: var(--gray70); line-height: 1.55; margin: 0 0 14px; }
.flg-page.flg-hub .fls .more { margin-top: auto; font-weight: 600; font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; color: var(--primary); text-decoration: none; }
.flg-page.flg-hub .fls a.more:hover { color: var(--primary-hover); }
.flg-page.flg-hub .fls span.more { color: var(--gray55); }
.flg-page.flg-hub .checklist { list-style: none; margin: 18px 0 0; padding-left: 20px; max-width: var(--measure); }
.flg-page.flg-hub .checklist li { position: relative; padding: 11px 0 11px 46px; border-bottom: 1px solid var(--line-soft); color: var(--gray70); }
.flg-page.flg-hub .checklist li::before { content: ""; position: absolute; left: 0; top: 17px; width: 30px; height: 7px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }
.flg-page.flg-hub .checklist--dark li { color: rgba(247,243,236,.84); border-bottom-color: rgba(247,243,236,.16); }
.flg-page.flg-hub .checklist--dark li::before { color: var(--accent); }
.flg-page.flg-hub .resources { display: grid; grid-template-columns: repeat(2,1fr); }
.flg-page.flg-hub .resource { display: flex; text-decoration: none; transition: border-color .18s; }
.flg-page.flg-hub .resource:hover { border-color: var(--primary); }
.flg-page.flg-hub .resource .rl { font-weight: 600; color: var(--ink); font-size: .95rem; line-height: 1.4; }
.flg-page.flg-hub .resource .ra { font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: var(--primary); white-space: nowrap; }
.flg-page.flg-hub .divorce-link { display:inline-block; margin-top: 20px; font-weight:600; color: var(--primary); text-decoration: none; border-bottom: 1.5px solid var(--primary); padding-bottom: 3px; }
@media (max-width: 900px) {
  .flg-page.flg-hub .fls-grid { grid-template-columns: 1fr; }
  .flg-page.flg-hub .resources { grid-template-columns: 1fr; }
}
.flg-page.flg-hub .crumbbar .container { max-width: 1280px; padding: 12px 32px; }
.flg-page.flg-hub .crumbbar nav { font-size: .8rem; letter-spacing: .02em; color: var(--gray55); }
.flg-page.flg-hub .crumbbar a { color: var(--primary); text-decoration: none; font-weight: 600; }
.flg-page.flg-hub .crumbbar a:hover { text-decoration: underline; }
.flg-page.flg-hub .crumbbar .cur { color: var(--ink); }
@media (max-width: 640px) {
}

.flg-page.flg-hub .hero > .elementor-widget, .flg-page.flg-hub .hero > .elementor-widget > .elementor-widget-container { display: contents; }

.elementor.elementor .flg-page.flg-hub .hero .lead { max-width: 60ch; }
.elementor.elementor .flg-page.flg-hub .consult .lead { max-width: 48ch; }

.flg-page.flg-hub .elementor-widget-heading .elementor-heading-title { color: inherit; }

.flg-page.flg-hub .offices { gap: 24px; margin-top: 30px; }

.flg-page.flg-hub .team2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 26px; max-width: 1080px; margin: clamp(38px,4vw,52px) auto 0; }
.flg-page.flg-hub .team2__member { display: flex; align-items: stretch; text-align: left; background: #0f0e0d; border: 1px solid rgba(247,243,236,.09); border-radius: var(--radius); overflow: hidden; }
.flg-page.flg-hub .team2__member .att { flex: 0 0 172px; aspect-ratio: 3 / 4; border-radius: 0; box-shadow: none; background: #0f0e0d; }
.flg-page.flg-hub .team2__member .att__scrim { background: linear-gradient(to right, transparent 55%, rgba(15,14,13,.5) 100%); }
.flg-page.flg-hub .team2__member .att:hover .att__scrim { background: linear-gradient(to right, transparent 42%, rgba(15,14,13,.62) 100%); }
.flg-page.flg-hub .team2__body { flex: 1 1 auto; min-width: 0; padding: 24px 26px; display: flex; flex-direction: column; justify-content: center; }
.flg-page.flg-hub .team2__body h3 { font-family: var(--serif); font-weight: 500; font-size: 1.24rem; line-height: 1.2; margin: 0; }
.flg-page.flg-hub .team2__body h3 a { color: var(--bone); text-decoration: none; }
.flg-page.flg-hub .team2__body h3 a:hover { color: var(--accent); }
.flg-page.flg-hub .team2__body h3::after { content: ""; display: block; width: 54px; height: 7px; margin: 13px 0 0; color: var(--accent); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: left top, left center, left bottom; background-repeat: no-repeat; }
.flg-page.flg-hub .team2__body .role { margin-top: 13px; font-family: var(--sans); font-size: .67rem; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; color: var(--accent); }
.flg-page.flg-hub .team2__bio { color: rgba(247,243,236,.72); font-size: .93rem; line-height: 1.62; margin: 12px 0 0; padding: 0; }
@media (max-width: 1000px){ .flg-page.flg-hub .team2 { grid-template-columns: minmax(0,560px); justify-content: center; } }
@media (max-width: 520px){ .flg-page.flg-hub .team2__member { flex-direction: column; }
  .flg-page.flg-hub .team2__member .att { flex: none; width: 100%; aspect-ratio: 4 / 3; }
  .flg-page.flg-hub .team2__body { padding: 20px 22px 24px; } }

/* ---- City-hub pages (Santa Ana / Riverside): add class flg-city to the .flg-page container ---- */
.flg-page.flg-city .section--alt { background: var(--bone-2); }
.flg-page.flg-city .section--dark { background: var(--ink); border-bottom: none; }
.flg-page.flg-city .center { text-align: center; }
.flg-page.flg-city .center .lead { margin-left: auto; margin-right: auto; }
.flg-page.flg-city .measure-c { max-width: 720px; margin-left: auto; margin-right: auto; }
.flg-page.flg-city .triple-rule { height: 7px; background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 78% 1px, 56% 1px; background-position: center top, center center, center bottom; background-repeat: no-repeat; }
.flg-page.flg-city .triple-rule--short { width: 72px; }
.flg-page.flg-city .hero { position: relative; color: var(--bone); overflow: hidden; display: flex; }
.flg-page.flg-city .hero__scrim { display: none; }
.flg-page.flg-city .hero__inner { position: relative; z-index: 2; width: 100%; max-width: 1240px; margin: 0 auto; }
.flg-page.flg-city .hero__col { max-width: 660px; }
.flg-page.flg-city .hero .eyebrow { color: var(--accent); }
.flg-page.flg-city .hero h1 { color: var(--bone); font-size: clamp(2.5rem, 5.2vw, 4rem); text-shadow: 0 2px 24px rgba(0,0,0,.4); margin-bottom: 18px; }
.flg-page.flg-city .hero .lead { color: rgba(247,243,236,.92); max-width: 54ch; text-shadow: 0 1px 12px rgba(0,0,0,.4); font-size: 1.16rem; }
.flg-page.flg-city .hero__areas { display: flex; flex-wrap: wrap; gap: 10px 12px; margin-top: 34px; }
.flg-page.flg-city .hero__areas a { font-weight: 600; font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; color: var(--bone); text-decoration: none; background: #000; border: none; border-bottom: 1px solid rgba(247,243,236,.55); border-radius: 0; padding: 13px 22px; transition: .18s; }
.flg-page.flg-city .hero__areas a:hover { border-bottom-color: var(--accent); color: var(--accent); }
.flg-page.flg-city .svc-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.flg-page.flg-city .svc { border: none; border-radius: var(--radius); background: #fff; overflow: hidden; display: flex; flex-direction: column; height: 100%; box-sizing: border-box; transition: transform .35s ease, box-shadow .35s ease; }
.flg-page.flg-city .svc:hover { box-shadow: 0 24px 54px rgba(0,0,0,.34); transform: translateY(-6px); }
.flg-page.flg-city .svc__hero { position: relative; aspect-ratio: 16 / 9; overflow: hidden; display: flex; align-items: flex-end; background: linear-gradient(160deg, #8f6e4f, #5c452f); }
.flg-page.flg-city .svc__hero img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.6,.2,1); }
.flg-page.flg-city .svc:hover .svc__hero img { transform: scale(1.06); }
.flg-page.flg-city .svc__hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.94) 0%, rgba(60,46,33,.66) 48%, rgba(121,91,65,.46) 100%); }
.flg-page.flg-city .svc__hero h3 { position: relative; z-index: 2; color: var(--bone); margin: 0; padding: 0 26px 20px; font-size: 1.7rem; text-shadow: 0 2px 16px rgba(0,0,0,.5); text-align: center; width: 100%; }
.flg-page.flg-city .svc__hero h3::after { content: ""; display: block; width: 48px; height: 7px; margin: 12px auto 0; color: var(--accent); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 78% 1px, 56% 1px; background-position: center top, center center, center bottom; background-repeat: no-repeat; }
.flg-page.flg-city .svc__inner { display: flex; flex-direction: column; flex: 1; }
.flg-page.flg-city .svc__inner > p { font-size: .96rem; color: var(--gray70); line-height: 1.62; margin: 0 0 18px; }
.flg-page.flg-city .svc__links { list-style: none; margin: 0 0 22px; padding: 0; }
.flg-page.flg-city .svc__links li { padding: 8px 0; border-top: 1px solid var(--line-soft); }
.flg-page.flg-city .svc__links a { color: var(--ink); text-decoration: none; font-size: .9rem; font-weight: 600; display: flex; justify-content: space-between; align-items: center; }
.flg-page.flg-city .svc__links a:hover { color: var(--primary); }
.flg-page.flg-city .svc__links a::after { content: "→"; color: var(--primary); opacity: 0; transform: translateX(-6px); transition: opacity .16s ease, transform .16s ease; }
.flg-page.flg-city .svc__links a:hover::after { opacity: 1; transform: translateX(0); }
.flg-page.flg-city .svc__cta { margin-top: auto; font-weight: 600; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; color: var(--primary); text-decoration: none; border-top: 1.5px solid var(--primary); padding-top: 16px; }
.flg-page.flg-city .prose h2 { margin: 0 0 16px; }
.flg-page.flg-city .prose p { color: var(--gray70); margin: 0 0 1.15em; }
.flg-page.flg-city .prose p a { color: var(--primary); }
.flg-page.flg-city .cols-2 { columns: 2; column-gap: 48px; }
@media (max-width: 1180px) {
  .flg-page.flg-city .cols-2 { columns: 1; }
}
.flg-page.flg-city .att-grid { display: flex; max-width: 1180px; margin-left: auto; margin-right: auto; }
.flg-page.flg-city .att { position: relative; display: block; flex: 0 0 calc(25% - 19.5px); aspect-ratio: 3 / 4; border-radius: var(--radius); overflow: hidden; background: linear-gradient(160deg, #6e1d1d, #591616 55%, #3f1010); box-shadow: 0 14px 38px rgba(0,0,0,.28); text-decoration: none; }
.flg-page.flg-city .att img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.flg-page.flg-city .att__mono { position: absolute; top: 16px; left: 18px; font-family: var(--serif); font-weight: 500; font-size: 1.9rem; line-height: 1; color: rgba(247,243,236,.5); }
.flg-page.flg-city .att__scrim { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.72) 6%, rgba(0,0,0,.28) 44%, transparent 72%); transition: .2s ease; }
.flg-page.flg-city .att:hover .att__scrim { background: linear-gradient(to top, rgba(0,0,0,.95) 6%, rgba(0,0,0,.5) 46%, transparent 76%); }
.flg-page.flg-city .att__meta { position: absolute; left: 0; right: 0; bottom: 0; padding: 20px 18px; display: flex; flex-direction: column; }
.flg-page.flg-city .att__tag { order: 3; align-self: flex-start; margin-top: 10px; font-size: .59rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: rgba(247,243,236,.6); background: none; padding: 0; border-radius: 0; }
.flg-page.flg-city .att__meta h3 { order: 1; color: var(--bone); font-size: 1.14rem; margin: 0 0 3px; }
.flg-page.flg-city .att__meta .role { order: 2; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); font-weight: 600; display: flex; align-items: center; gap: 8px; }
.flg-page.flg-city .att__meta .role::after { content: "View profile →"; margin-left: auto; color: rgba(247,243,236,.0); transition: .2s; font-weight: 600; letter-spacing: .04em; text-transform: none; }
.flg-page.flg-city .att:hover .att__meta .role::after { color: rgba(247,243,236,.9); }
.flg-page.flg-city .local { position: relative; overflow: hidden; }
.flg-page.flg-city .local__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.flg-page.flg-city .local__scrim { position: absolute; inset: 0; background: linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.5)); }
.flg-page.flg-city .local__inner { position: relative; z-index: 2; max-width: 900px; margin: 0 auto; text-align: center; }
.flg-page.flg-city .local h2 { color: var(--bone); text-shadow: 0 2px 18px rgba(0,0,0,.4); }
.flg-page.flg-city .local p { color: rgba(247,243,236,.86); max-width: 60ch; margin: 14px auto 0; }
.flg-page.flg-city .rev-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.flg-page.flg-city .rev-img { width: 100%; height: auto; display: block; border: 1px solid var(--line); border-radius: var(--radius); }
.flg-page.flg-city details.qa { border-bottom: 1px solid var(--line); }
.flg-page.flg-city details.qa summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 20px 2px; font-family: var(--serif); font-size: 1.16rem; font-weight: 500; color: var(--ink); }
.flg-page.flg-city details.qa summary::-webkit-details-marker { display: none; }
.flg-page.flg-city details.qa summary .mk { flex: none; color: var(--primary); font-size: 1.4rem; line-height: 1; transition: transform .2s; }
.flg-page.flg-city details.qa[open] summary .mk { transform: rotate(45deg); }
.flg-page.flg-city details.qa p { margin: 0 2px 22px; color: var(--gray70); line-height: 1.65; }
.flg-page.flg-city .consult__grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.flg-page.flg-city .consult .form-embed { margin-top: 28px; }
.flg-page.flg-city .office + .office { margin-top: 26px; padding-top: 26px; border-top: 1px solid rgba(247,243,236,.14); }
.flg-page.flg-city .office .lbl { font-family: var(--serif); font-weight: 500; font-size: 1.5rem; letter-spacing: 0; text-transform: none; color: var(--bone); margin-bottom: 10px; }
.flg-page.flg-city .office .addr { font-size: .95rem; color: rgba(247,243,236,.82); line-height: 1.65; }
.flg-page.flg-city .office .addr a { color: var(--bone); text-decoration: none; }
.flg-page.flg-city .office__map { margin-top: 16px; border-radius: var(--radius); overflow: hidden; border: 1px solid rgba(247,243,236,.16); }
.flg-page.flg-city .office__map iframe { display: block; width: 100%; height: 230px; border: 0; }
@media (max-width: 900px) {
  .flg-page.flg-city .svc-grid, .flg-page.flg-city .rev-grid, .flg-page.flg-city .consult__grid, .flg-page.flg-city .offices { grid-template-columns: 1fr; }
  .flg-page.flg-city .att { flex-basis: calc(50% - 13px); }
}
@media (max-width: 560px) {
  .flg-page.flg-city .att { flex-basis: 100%; }
}
@media (max-width: 1024px) and (min-width: 701px) {
  .flg-page.flg-city .hero { min-height: clamp(520px, 62vw, 660px); }
  .flg-page.flg-city .hero__inner { padding: 96px 26px; }
  .flg-page.flg-city .hero__col { max-width: 46%; }
  .flg-page.flg-city .hero h1 { font-size: clamp(1.9rem, 3.5vw, 2.5rem); margin-bottom: 12px; }
  .flg-page.flg-city .hero .lead { font-size: .98rem; max-width: 34ch; }
  .flg-page.flg-city .hero__areas { gap: 8px; margin-top: 20px; }
  .flg-page.flg-city .hero__areas a { font-size: .66rem; padding: 7px 12px; }
}
@media (max-width: 700px) {
  .flg-page.flg-city .hero { min-height: clamp(500px, 96vw, 620px); }
  .flg-page.flg-city .hero__inner { position: absolute; inset: 0; max-width: 100%; padding: 0; }
  .flg-page.flg-city .hero__col { position: absolute; inset: 0; max-width: 100%; padding: 84px 22px 26px; text-align: center; display: flex; flex-direction: column; align-items: center; }
  .flg-page.flg-city .hero .eyebrow { justify-content: center; }
  .flg-page.flg-city .hero h1 { font-size: clamp(2rem, 8vw, 2.7rem); margin-bottom: 0; }
  .flg-page.flg-city .hero .lead { display: none; }
  .flg-page.flg-city .hero__areas { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; order: 1; margin-top: auto; }
  .flg-page.flg-city .hero__areas a { border: none; background: none; border-radius: 0; padding: 2px 12px; font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; color: var(--bone); position: relative; }
  .flg-page.flg-city .hero__areas a:hover { background: none; color: var(--accent); }
  .flg-page.flg-city .hero__areas a + a::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 11px; background: rgba(247,243,236,.4); }
}
 .flg-page.flg-city .att-grid > .elementor-widget, .flg-page.flg-city .att-grid > .elementor-widget > .elementor-widget-container { display: contents; }
.flg-page.flg-city .hero > .elementor-widget, .flg-page.flg-city .hero > .elementor-widget > .elementor-widget-container { display: contents; }
.flg-page.flg-city .local > .elementor-widget, .flg-page.flg-city .local > .elementor-widget > .elementor-widget-container { display: contents; }
.flg-page.flg-city .local__inner > .elementor-widget, .flg-page.flg-city .local__inner > .elementor-widget > .elementor-widget-container { display: contents; }
.flg-page.flg-city .rev-grid > .elementor-widget, .flg-page.flg-city .rev-grid > .elementor-widget > .elementor-widget-container { display: contents; }
.flg-page.flg-city .svc-grid > .elementor-widget, .flg-page.flg-city .svc-grid > .elementor-widget > .elementor-widget-container { display: contents; }
 .elementor.elementor .flg-page.flg-city .hero .lead { max-width: 54ch; }
.elementor.elementor .flg-page.flg-city .consult .lead { max-width: 48ch; }
 .flg-page.flg-city .svc__inner { padding: 26px 28px 28px; }
.flg-page.flg-city .offices { margin-top: 0; }
 .elementor.elementor .flg-page.flg-city .cols-2 { display: block; columns: 2; column-gap: 48px; }
@media (max-width: 760px) {
  .elementor.elementor .flg-page.flg-city .cols-2 { columns: 1; }
}
.flg-page.flg-city .prose.measure-c { text-align: center; }

/* ---- Attorney bio pages: add class flg-bio to the .flg-page container (moved from page 185) ---- */
.flg-page.flg-bio .triple-rule { height: 7px; background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 78% 1px, 56% 1px; background-position: center top, center center, center bottom; background-repeat: no-repeat; }
.flg-page.flg-bio .triple-rule--short { width: 72px; }
.flg-page.flg-bio .biohero { position: relative; height: clamp(150px, 14vw, 230px); overflow: hidden; }
.flg-page.flg-bio .biohero img { width: 100%; height: 100%; object-fit: cover; object-position: center 46%; display: block; }
.flg-page.flg-bio .biohero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(28,14,10,.46), rgba(28,14,10,.10)); }
.flg-page.flg-bio .bio__name { font-size: clamp(2.3rem, 5.2vw, 3.9rem); line-height: 1.06; margin: 0; }
.flg-page.flg-bio .bio__role { font-family: var(--sans); font-size: clamp(.82rem, 1.4vw, 1rem); letter-spacing: .17em; text-transform: uppercase; color: var(--gray55); margin: 10px 0 0; }
.flg-page.flg-bio .bio__role .hl { color: var(--primary); font-weight: 700; }
.flg-page.flg-bio .bio__cols { display: grid; grid-template-columns: minmax(0, 400px) minmax(0, 1fr); }
.flg-page.flg-bio .bio__photo { border-radius: var(--radius); overflow: hidden; aspect-ratio: 4 / 5; background: linear-gradient(160deg, #6e1d1d, #3f1010); box-shadow: 0 16px 44px rgba(45,44,43,.16); }
.flg-page.flg-bio .bio__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.flg-page.flg-bio .bio__intro { font-size: clamp(1.02rem, 1.4vw, 1.14rem); line-height: 1.72; color: var(--ink); margin: 0; }
.flg-page.flg-bio .bio__intro a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.flg-page.flg-bio .creds { list-style: none; margin: 26px 0 0; padding: 0; }
.flg-page.flg-bio .creds li { display: flex; gap: 14px; align-items: flex-start; padding: 14px 0; border-top: 1px solid var(--line-soft); }
.flg-page.flg-bio .creds__mark { flex: none; width: 30px; height: 7px; margin-top: 11px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }
.flg-page.flg-bio .creds__t { font-family: var(--serif); font-size: 1.15rem; color: var(--ink); line-height: 1.25; }
.flg-page.flg-bio .creds__t b { font-weight: 500; }
.flg-page.flg-bio .creds__s { display: block; font-size: .86rem; color: var(--gray55); margin-top: 4px; letter-spacing: .01em; }
.flg-page.flg-bio .bio__cta { margin-top: 28px; }
.flg-page.flg-bio .recog { color: var(--bone); text-align: center; }
.flg-page.flg-bio .recog__eyebrow { font-family: var(--sans); font-size: .66rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--accent); margin: 0 0 16px; }
.flg-page.flg-bio .recog__q { font-family: var(--serif); font-size: clamp(1.35rem, 2.5vw, 2.05rem); line-height: 1.38; color: var(--bone); max-width: 24ch; margin: 0 auto; }
.flg-page.flg-bio .recog__q em { font-style: normal; color: var(--accent); }
.flg-page.flg-bio .recog__sub { font-size: .95rem; color: rgba(247,243,236,.72); max-width: 56ch; margin: 18px auto 0; line-height: 1.6; }
.flg-page.flg-bio .recog__link { display: inline-block; margin-top: 22px; font-size: .76rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); text-decoration: none; border-bottom: 1.5px solid var(--accent); padding-bottom: 6px; }
.flg-page.flg-bio .story { max-width: 760px; margin: 0 auto; }
.flg-page.flg-bio .story h2 { font-size: clamp(1.6rem, 2.4vw, 2rem); margin: 0 0 14px; }
.flg-page.flg-bio .story h3 { font-family: var(--sans); font-size: .72rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--primary); margin: 38px 0 10px; }
.flg-page.flg-bio .story h3:first-of-type { margin-top: 26px; }
.flg-page.flg-bio .story p { color: var(--gray70); line-height: 1.72; margin: 0 0 1.1em; }
.flg-page.flg-bio .story p a { color: var(--primary); text-decoration: underline; text-underline-offset: 3px; }
.flg-page.flg-bio .story .callout { border-left: 2px solid var(--primary); background: var(--bone-2); padding: 20px 24px; margin: 26px 0; }
.flg-page.flg-bio .story .callout p { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 1.14rem; line-height: 1.5; }
.flg-page.flg-bio .credlist { max-width: 760px; margin: clamp(42px, 5vw, 62px) auto 0; border-top: 1px solid var(--line); }
.flg-page.flg-bio .credrow { display: grid; grid-template-columns: 186px minmax(0, 1fr); gap: 30px; padding: 26px 0; border-bottom: 1px solid var(--line-soft); }
.flg-page.flg-bio .credrow dt { margin: 0; padding-top: 5px; font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--primary); }
.flg-page.flg-bio .credrow dd { margin: 0; display: flex; flex-direction: column; gap: 15px; }
.flg-page.flg-bio .credentry b { display: block; font-family: var(--serif); font-weight: 500; font-size: 1.1rem; color: var(--ink); line-height: 1.3; }
.flg-page.flg-bio .credentry span { display: block; font-size: .88rem; color: var(--gray55); line-height: 1.45; margin-top: 3px; }
@media (max-width: 640px) {
  .flg-page.flg-bio .credrow { grid-template-columns: 1fr; gap: 12px; padding: 22px 0; }
  .flg-page.flg-bio .credrow dt { padding-top: 0; }
}
@media (max-width: 860px) {
  .flg-page.flg-bio .bio__cols { grid-template-columns: 1fr; }
  .flg-page.flg-bio .bio__photo { max-width: 380px; }
}
.flg-page.flg-bio .consult__grid { max-width: 1280px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; }
.flg-page.flg-bio .offices { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 30px; }
 .flg-page.flg-bio .biohero > .elementor-widget, .flg-page.flg-bio .biohero > .elementor-widget > .elementor-widget-container { display: contents; }
 .elementor.elementor .flg-page.flg-bio .recog__q { max-width: 24ch; }
.elementor.elementor .flg-page.flg-bio .recog__sub { max-width: 56ch; }
.elementor.elementor .flg-page.flg-bio .credlist { max-width: 760px; }
.elementor.elementor .flg-page.flg-bio .bio__photo { max-width: 380px; }
.elementor.elementor .flg-page.flg-bio .consult .lead { max-width: 48ch; }
 .flg-page.flg-bio .elementor-widget-heading .elementor-heading-title { color: inherit; }
/* bio pages built without the .bio wrapper (container sits right under .flg-page): give it the same spacing as .bio */
.elementor.elementor .flg-page.flg-bio > .crumbbar + .container { padding-top: 54px; padding-bottom: 68px; }
@media (max-width: 640px){ .elementor.elementor .flg-page.flg-bio > .crumbbar + .container { padding-top: 34px; padding-bottom: 44px; } }


.flg-page.flg-bio .creds li::before { content: ""; flex: none; width: 30px; height: 7px; margin-top: 11px; color: var(--primary); background: linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor), linear-gradient(currentColor,currentColor); background-size: 100% 1px, 70% 1px, 40% 1px; background-position: right top, right center, right bottom; background-repeat: no-repeat; }

.elementor.elementor .flg-page.flg-bio .credrow { display: grid; grid-template-columns: 186px minmax(0, 1fr); gap: 30px; }
.flg-page.flg-bio .credrow .credlabel .elementor-heading-title { padding-top: 5px; font-family: var(--sans); font-size: .68rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--primary); margin: 0; }
.flg-page.flg-bio .credentry { margin: 0; }
.flg-page.flg-bio .credentry + .credentry { margin-top: 15px; }
.flg-page.flg-bio .attstrip__list .elementor-image-box-img img { width: 58px; height: 76px; object-fit: cover; border-radius: var(--radius); }
.flg-page.flg-bio .attstrip__list .elementor-image-box-wrapper { display: flex; flex-direction: row; align-items: center; gap: 13px; }
.elementor.elementor .flg-page.flg-bio .attstrip__list .elementor-image-box-img { margin: 0; }
.flg-page.flg-bio .attstrip__list .elementor-image-box-content { text-align: left; }
.flg-page.flg-bio .attstrip__list a:hover .elementor-image-box-title { color: var(--primary); }
@media (max-width: 640px){ .elementor.elementor .flg-page.flg-bio .credrow { grid-template-columns: 1fr; gap: 12px; } }

@media (max-width: 767px){ .flg-page.flg-bio .attstrip__list .elementor-image-box-img img { width: 72px; height: 95px; } .flg-page.flg-bio .attstrip__list { row-gap: 22px; } .flg-page.flg-bio .attstrip__list .elementor-image-box-wrapper { gap: 16px; } }

.flg-page.flg-bio .bio__profiles img { display: block; border-radius: 4px; }
.flg-page.flg-bio .bio__profiles .elementor-widget-image a { display: block; opacity: .9; transition: opacity .16s; }
.flg-page.flg-bio .bio__profiles .elementor-widget-image a:hover { opacity: 1; }
.flg-page.flg-bio .bio__profiles .elementor-social-icons-wrapper { gap: 8px; }

@media (max-width: 900px) {
  .elementor.elementor .consult__grid, .elementor.elementor .offices,
  .elementor.elementor .flg-page.flg-sub .consult__grid, .elementor.elementor .flg-page.flg-sub .offices { grid-template-columns: 1fr; }
}
.city > .elementor-widget-html { display: contents; }
/* fix: mobile nav-open menu must stay bone-colored even when header is also in scrolled state */
.flg-header.flg-scrolled.nav-open .nav>a,.flg-header.flg-scrolled.nav-open .has-menu>a{color:var(--bone);}
.flg-header.flg-scrolled.nav-open .burger{color:var(--bone);}/* End custom CSS */