/* Full House International Realty — inner pages (loaded after style.css) */

/* nav current state */
.nav>a[aria-current="page"],.nav__drop.is-current>.nav__btn{color:#fff}
.nav>a[aria-current="page"]::after{transform:scaleX(1)}

/* page hero — compact, box beside the title */
.phero{padding:36px 0 72px}
.phero--sm{padding-bottom:60px}
.phero .hero__title{font-size:clamp(36px,4.2vw,60px);margin-bottom:20px}
.phero--sm .hero__title{font-size:clamp(34px,3.8vw,52px)}
.phero .hero__lead{margin-bottom:0;max-width:760px}
.phero .hero__btns{margin-top:28px}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:var(--fs-sm);color:rgba(255,255,255,.62);margin-bottom:28px;animation:heroIn 1s var(--ease) both}
.crumbs a{color:rgba(255,255,255,.82);transition:color .2s}
.crumbs a:hover{color:var(--gold-2)}
.crumbs [data-lucide]{width:14px;height:14px;opacity:.5}
.crumbs [aria-current]{color:var(--gold-2)}
.phero__grid{display:grid;grid-template-columns:1fr;gap:56px;align-items:center}
.phero__grid--aside{grid-template-columns:minmax(0,1fr) 380px}
.phero__grid--aside:has(.hero__card){grid-template-columns:minmax(0,1fr) 440px}
.phero__main>*{animation:heroIn 1s var(--ease) both}
.phero__main .hero__title{animation-delay:.1s}.phero__main .hero__lead{animation-delay:.22s}.phero__main .hero__btns{animation-delay:.32s}
.phero__grid>aside,.phero__grid>form{animation:heroIn 1s var(--ease) .3s both}
.phero__box{background:rgba(0,20,41,.62);border:1px solid rgba(241,199,143,.25);border-top:3px solid var(--gold);border-radius:var(--r);padding:18px 22px 4px;backdrop-filter:blur(10px)}
.phero__box-t{font:600 var(--fs-xs)/1 var(--fh);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin:0 0 6px}
.phero__box ul{list-style:none;margin:0;padding:0}
.phero__box li{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid rgba(255,255,255,.09)}
.phero__box li:first-child{border-top:0}
.phero__box .ic{width:38px;height:38px;background:rgba(241,199,143,.14);color:var(--gold-2)}
.phero__box .ic [data-lucide]{width:18px;height:18px}
.phero__box b{display:block;font:600 var(--fs-sm)/1.35 var(--fh);color:#fff}
.phero__box b a{border-bottom:1px solid rgba(241,199,143,.5);transition:color .2s}
.phero__box b a:hover{color:var(--gold-2)}
.phero__box small{font-size:var(--fs-xs);color:rgba(255,255,255,.65)}

/* areas grid column fit (no orphan cells) */
@media (min-width:981px){.areas--c3{grid-template-columns:repeat(3,1fr)}.areas--c2{grid-template-columns:repeat(2,1fr)}}

/* areas by region — list layout */
.agroups{border-top:1px solid var(--line)}
.agroup{display:grid;grid-template-columns:300px 1fr;gap:48px;padding:34px 0;border-bottom:1px solid var(--line)}
.agroup.is-hidden{display:none}
.agroup__head{position:relative;padding-left:56px}
.agroup__n{position:absolute;left:0;top:2px;font:700 var(--fs-h3)/1 var(--fh);color:var(--gold)}
.agroup__head h3{font-size:var(--fs-h3);margin-bottom:8px}
.agroup__head p{font-size:var(--fs-sm);color:var(--text);margin-bottom:10px}
.agroup__head small{font:600 var(--fs-xs)/1 var(--fh);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.alist{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-content:start}
.arow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.arow.is-hidden{display:none}
.arow__name{display:inline-flex;align-items:center;gap:8px;font:600 var(--fs-body)/1.3 var(--fh);color:var(--ink);transition:color .2s}
.arow__name [data-lucide]{width:16px;height:16px;color:var(--gold);transition:transform .3s var(--ease)}
.arow:hover .arow__name{color:var(--gold-dk)}
.arow:hover .arow__name [data-lucide]{transform:translateX(4px)}
.arow__links{display:flex;gap:6px}
.arow__links a{font:500 var(--fs-xs)/1 var(--fh);padding:6px 9px;border-radius:var(--r);background:var(--cream);color:var(--gold-dk);transition:.2s}
.arow__links a:hover{background:var(--navy);color:#fff}
.sec--cream .arow__links a{background:#fff}

/* sections helpers */
.sec--tight{padding:90px 0}

/* feature cards */
.feats{display:grid;gap:22px}
.feats--3{grid-template-columns:repeat(3,1fr)}
.feats--4{grid-template-columns:repeat(4,1fr)}
.feat{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px 28px 28px;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s;overflow:hidden}
.feat::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.feat:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:transparent}
.feat:hover::before{transform:scaleX(1)}
.feat:hover .ic{background:var(--navy);color:var(--gold-2);transform:rotate(-6deg)}
.feat .ic{margin-bottom:22px}
.feat h3{font-size:var(--fs-h3);margin-bottom:10px}
.feat p{font-size:var(--fs-body);margin-bottom:18px}
.feat .link{margin-top:auto}
.sec--cream .feat{border-color:transparent;box-shadow:var(--sh-sm)}
.feats--dark .feat{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
.feats--dark .feat h3{color:#fff}
.feats--dark .feat p{color:rgba(255,255,255,.72)}

/* image + text */
.isplit{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.isplit--rev .isplit__img{order:2}
.isplit__img{position:relative}
.isplit__img img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:var(--r);box-shadow:var(--sh)}
.split__badge{position:absolute;left:-22px;bottom:30px;background:var(--navy);color:#fff;padding:20px 24px;border-radius:var(--r);box-shadow:var(--sh);border-left:3px solid var(--gold)}
.isplit--rev .split__badge{left:auto;right:-22px}
.split__badge b{display:block;font:700 var(--fs-h3l)/1 var(--fh);color:var(--gold-2);margin-bottom:6px}
.split__badge span{font-size:var(--fs-sm);color:rgba(255,255,255,.75)}
.prose p{font-size:var(--fs-lead);line-height:1.7}
.isplit .ticks{margin-top:6px}
.isplit__btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.hoods__t{font:600 var(--fs-xs)/1 var(--fh);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:8px 0 12px}
.hoods{display:flex;flex-wrap:wrap;gap:8px}
.hoods span{font:500 var(--fs-sm)/1 var(--fh);padding:10px 14px;border:1px solid var(--line);border-radius:var(--r);color:var(--ink);background:var(--cream-2)}

/* sister site banner */
.sister{background:var(--navy-2);color:#fff;padding:64px 0;border-top:1px solid rgba(241,199,143,.18);border-bottom:1px solid rgba(241,199,143,.18)}
.sister__in{display:grid;grid-template-columns:auto 1fr auto;gap:48px;align-items:center}
.sister__in>img{height:96px;width:auto}
.sister__copy .eyebrow{margin-bottom:12px}
.sister__t{color:#fff;font-size:var(--fs-h3l);font-weight:600;line-height:1.25;margin-bottom:16px}
.sister__links{display:flex;flex-wrap:wrap;gap:8px 18px}
.sister__links a{display:inline-flex;align-items:center;gap:4px;font:500 var(--fs-sm) var(--fh);color:rgba(255,255,255,.75);transition:color .2s}
.sister__links a:hover{color:var(--gold-2)}
.sister__links [data-lucide]{width:14px;height:14px}

/* licenses */
.lics{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.lic{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;transition:border-color .3s,transform .3s var(--ease)}
.lic:hover{border-color:var(--gold);transform:translateY(-4px)}
.lic .ic{margin-bottom:6px}
.lic b{font:700 var(--fs-body)/1.2 var(--fh);color:var(--ink)}
.lic small{font-size:var(--fs-xs);color:var(--muted)}

/* stat band */
.sband{background:var(--navy);color:#fff}
.sband__in{display:grid;grid-template-columns:repeat(4,1fr)}
.sband__i{padding:42px 20px;text-align:center;border-left:1px solid rgba(255,255,255,.1)}
.sband__i:first-child{border-left:0}
.sband__i b{display:block;font:700 var(--fs-stat)/1 var(--fh);color:var(--gold-2);margin-bottom:10px}
.sband__i span{font-size:var(--fs-sm);color:rgba(255,255,255,.72)}
.sband--cream{background:var(--cream);color:var(--ink)}
.sband--cream .sband__i{border-color:var(--line)}
.sband--cream .sband__i b{color:var(--gold)}
.sband--cream .sband__i span{color:var(--text)}

/* checklist */
.clists{display:grid;gap:22px}
.clists--2{grid-template-columns:1fr 1fr}.clists--3{grid-template-columns:repeat(3,1fr)}
.clist{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px}
.clist h3{display:flex;align-items:center;gap:12px;font-size:var(--fs-h4);margin-bottom:18px}

/* listings grid */
.props{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.props .prop.is-hidden{display:none}
.ptabs--flt{margin:0}

/* galleries */
.mosaic--3{grid-template-columns:repeat(3,1fr);grid-auto-rows:260px}

/* full FAQ */
.ptabs--faq{justify-content:center;margin-bottom:36px}
.faq--full{max-width:920px;margin:0 auto}
.faq--full details.is-hidden{display:none}
.faq details p a{color:var(--gold);text-decoration:underline}

/* contact */
.ccards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:56px}
.ccard{position:relative;display:flex;flex-direction:column;gap:6px;padding:28px 24px;border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s}
.ccard:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:transparent}
.ccard:hover .ic{background:var(--navy);color:var(--gold-2)}
.ccard .ic{margin-bottom:12px}
.ccard small{font:600 var(--fs-xs)/1 var(--fh);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.ccard b{font:600 var(--fs-h4)/1.4 var(--fh);color:var(--ink);margin-bottom:10px}
.ccard .link{margin-top:auto}
.contact{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}
.contact__form{box-shadow:var(--sh);border:1px solid var(--line)}
.contact__form .h2{font-size:var(--fs-h3l);margin-bottom:22px}
.map{position:relative;min-height:520px;border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);background:var(--cream)}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.35) contrast(1.05)}
.map__card{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:center;gap:14px;background:#fff;padding:12px;border-radius:var(--r);box-shadow:var(--sh-sm)}
.map__card img{width:72px;height:56px;object-fit:cover;border-radius:var(--r)}
.map__card b{display:block;font:600 var(--fs-body) var(--fh);color:var(--ink)}
.map__card small{font-size:var(--fs-sm);color:var(--muted)}

/* legal / rich text */
.legal--narrow{max-width:820px}
.legal h2{font-size:var(--fs-h3);margin:36px 0 12px}
.legal p,.legal li{font-size:var(--fs-body);line-height:1.75}
.legal ul{padding-left:20px}
.legal li{margin-bottom:8px}
.legal__note{padding:14px 18px;border-left:3px solid var(--gold);background:var(--cream);color:var(--ink);border-radius:var(--r)}

/* 404 */
.nf{padding:150px 0 160px;background:radial-gradient(700px 420px at 100% 0%,rgba(157,118,65,.12),transparent 70%),var(--cream)}
.nf__t{font-size:var(--fs-display);font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-bottom:20px}
.nf .lead{margin-bottom:32px}

/* footer additions */
.footer__family a{color:var(--gold-2)}
.footer__legal{display:inline-flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.footer__legal a:hover{color:var(--gold-2)}

/* steps count */
.steps{grid-template-columns:repeat(var(--n,5),1fr)}

/* responsive */
@media (max-width:1180px){
  .lics{grid-template-columns:repeat(3,1fr)}
  .feats--4{grid-template-columns:repeat(2,1fr)}
  .ccards{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
  .phero{padding:32px 0 64px}
  .phero__grid--aside,.phero__grid--aside:has(.hero__card){grid-template-columns:1fr;gap:32px}
  .agroup{grid-template-columns:1fr;gap:18px}
  .feats--3{grid-template-columns:1fr 1fr}
  .isplit{grid-template-columns:1fr;gap:44px}
  .isplit--rev .isplit__img{order:0}
  .split__badge,.isplit--rev .split__badge{left:16px;right:auto}
  .sister__in{grid-template-columns:1fr;gap:24px}
  .sister__in>img{height:80px}
  .sband__in{grid-template-columns:1fr 1fr}
  .sband__i:nth-child(3){border-left:0}
  .sband__i{border-top:1px solid rgba(255,255,255,.08)}
  .props{grid-template-columns:1fr 1fr}
  .mosaic--3{grid-template-columns:1fr 1fr;grid-auto-rows:220px}
  .contact{grid-template-columns:1fr}
  .map{min-height:380px}
  .clists--3{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
}
@media (max-width:640px){
  .crumbs{margin-bottom:22px}
  .feats--3,.feats--4,.props,.ccards,.clists--2{grid-template-columns:1fr}
  .lics{grid-template-columns:1fr 1fr}
  .lic:last-child{grid-column:1/-1}
  .mosaic--3{grid-template-columns:1fr;grid-auto-rows:230px}
  .mosaic--3 .m--wide{grid-column:auto}
  .split__badge{position:relative;left:auto!important;bottom:auto;margin:-36px 16px 0;display:inline-block}
  .alist{grid-template-columns:1fr}
  .ptabs--flt{flex-wrap:wrap}
  .nf{padding:100px 0}
}

/* main menu: uppercase, heavier */
.nav>a,.nav__btn{font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:14.5px}
@media (max-width:980px){.nav>a,.nav__btn{font-size:var(--fs-body);letter-spacing:.1em}}
.nav>a,.nav__btn{white-space:nowrap}
@media (min-width:981px) and (max-width:1120px){.nav>a,.nav__btn{font-size:13px;letter-spacing:.04em;padding:12px 7px}.header__in{gap:18px}.header__cta .btn{padding:13px 16px}}

/* inner hero: inline title, full-width lead */
.phero .hero__title .gold{display:inline}
.phero__grid:not(.phero__grid--aside) .hero__lead{max-width:none}

/* services dropdown — single column list */
.mega{width:270px;grid-template-columns:1fr;gap:2px;padding:8px;left:0;transform:translate(0,8px)}
.nav__drop:hover .mega,.nav__drop.is-open .mega{transform:translate(0,0)}
.mega a{align-items:center;gap:12px;padding:12px 14px;border-left:2px solid transparent}
.mega a:hover,.mega a[aria-current]{background:var(--cream);border-left-color:var(--gold)}
.mega [data-lucide]{width:19px;height:19px;margin:0}
.mega b{font:600 var(--fs-sm)/1.2 var(--fh)}
.nav__head,.nav__foot,.nav-ov{display:none}

/* testimonials — initials instead of photos */
.story__av{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:var(--r);background:var(--cream);color:var(--gold-dk);font:700 var(--fs-body)/1 var(--fh);letter-spacing:.04em;border:1px solid var(--line)}
.story--feat .story__av{background:rgba(241,199,143,.14);color:var(--gold-2);border-color:rgba(241,199,143,.3)}

/* mobile: offcanvas menu + bigger logo */
@media (max-width:980px){
  .header.is-stuck{backdrop-filter:none;background:var(--navy)}
  .header__in,.header.is-stuck .header__in{height:80px}
  .logo img,.header.is-stuck .logo img{height:60px}
  .nav{position:fixed;inset:0 0 0 auto;width:min(380px,88vw);height:100vh;height:100dvh;z-index:300;background:var(--navy-2);flex-direction:column;align-items:stretch;gap:0;padding:0 24px 28px;overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .45s var(--ease),visibility 0s .45s;box-shadow:-30px 0 60px -20px rgba(0,0,0,.6);border-left:1px solid rgba(241,199,143,.18)}
  .nav.is-open{transform:none;visibility:visible;transition:transform .45s var(--ease)}
  .nav-ov{display:block;position:fixed;inset:0;z-index:290;background:rgba(0,10,22,.6);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s .35s}
  .nav-ov.is-open{opacity:1;visibility:visible;transition:opacity .35s}
  .nav__head{display:flex;align-items:center;justify-content:space-between;height:80px;margin-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08)}
  .nav__head img{height:52px;width:auto}
  .nav__close{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);border-radius:var(--r);background:none;color:#fff;cursor:pointer}
  .nav>a,.nav__btn{font-size:15px;letter-spacing:.1em;padding:17px 2px;border-bottom:1px solid rgba(255,255,255,.08);width:100%;justify-content:space-between}
  .nav>a[aria-current="page"]{color:var(--gold-2)}
  .nav__btn [data-lucide]{transition:transform .3s}
  .nav__drop.is-open .nav__btn [data-lucide]{transform:rotate(180deg)}
  .mega{position:static;width:auto;transform:none!important;opacity:1;visibility:visible;display:none;margin:6px 0 10px;padding:4px;background:rgba(255,255,255,.04);box-shadow:none}
  .nav__drop:hover .mega{display:none}
  .nav__drop.is-open .mega{display:grid}
  .mega a{color:rgba(255,255,255,.85)}
  .mega a:hover,.mega a[aria-current]{background:rgba(241,199,143,.08);color:#fff}
  .mega [data-lucide]{color:var(--gold-2)}
  .nav>*{flex-shrink:0}
  .nav__foot{display:block;margin-top:auto;padding-top:28px}
  .nav__foot p{margin:14px 0 0;font-size:var(--fs-sm);color:rgba(255,255,255,.55);text-align:center}
  html.nav-locked,html.nav-locked body{overflow:hidden}
}
@media (max-width:640px){.logo img,.header.is-stuck .logo img{height:56px}.header__in,.header.is-stuck .header__in{height:76px}}

/* forms: honeypot + error state */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.form-ok--err{background:#fdecec;color:#9b1c1c}
/* Elementor editor: no reveal animations */
.fh-editor .rv{opacity:1!important;transform:none!important;clip-path:none!important}
