:root{--editorial-copy:#45525e;--editorial-panel:#fff;--editorial-soft:#f8f7f2}

/* Stable premium header */
.site-utility{z-index:121;border-bottom:1px solid rgba(245,206,102,.18);background:linear-gradient(90deg,#030a11,#071722 58%,#0a2229)}
.site-utility-inner{min-height:38px}
.site-utility-actions .utility-whatsapp{color:var(--ffm-gold-light);font-weight:800}
.site-header,.home-page .site-header,.internal-page .site-header{position:sticky!important;inset:auto 0 auto 0!important;top:0!important;z-index:120;width:100%;margin:0!important;border:0!important;border-bottom:1px solid rgba(7,19,31,.1)!important;background:rgba(255,255,255,.965)!important;box-shadow:0 15px 42px rgba(7,19,31,.1)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important}
.site-header::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--ffm-gold),var(--ffm-gold-light) 31%,rgba(226,173,47,.08) 72%,transparent)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:22px;padding-top:9px;padding-bottom:9px}
.brand-primary{display:flex;flex:0 0 auto;align-items:center;gap:12px;min-width:260px;width:auto!important;height:auto!important;margin:0!important;padding:0!important;color:#10202e!important}
.site-brand-emblem{display:grid;flex:0 0 72px;width:72px;height:72px;place-items:center;border:1px solid rgba(204,151,27,.19);border-radius:21px;background:linear-gradient(145deg,#fff,#fffaf0);box-shadow:0 12px 30px rgba(114,76,5,.12)}
.site-brand-logo{display:block;width:62px!important;max-width:62px!important;height:62px!important;max-height:62px!important;object-fit:contain;object-position:center}
.site-brand-copy{display:flex;align-items:flex-start;flex-direction:column;gap:3px;white-space:nowrap}
.site-brand-copy strong{color:#142633;font-size:.86rem;font-weight:850;line-height:1.08;letter-spacing:-.015em}
.site-brand-copy small{color:#8a6a23;font-size:.57rem;font-weight:760;line-height:1.2;letter-spacing:.075em;text-transform:uppercase}
.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:1px;margin-left:auto;padding:5px;border:1px solid rgba(7,19,31,.055);border-radius:17px;background:rgba(7,19,31,.025)}
.primary-nav a{display:inline-flex;align-items:center;min-height:42px;padding:11px 9px!important;border-radius:11px;color:#263540!important;font-size:.76rem!important;font-weight:760!important;line-height:1.1;white-space:nowrap;text-shadow:none!important}
.primary-nav a:hover,.primary-nav a:focus-visible,.primary-nav a.is-active{color:#07131f!important;background:#fff7e2;box-shadow:inset 0 0 0 1px rgba(226,173,47,.15)}
.primary-nav a:not(.nav-cta)::after{right:10px;bottom:5px;left:10px}
.primary-nav .nav-cta{min-height:44px;margin-left:8px;padding:12px 19px!important;border:1px solid #bd8712!important;border-radius:13px!important;color:#17130a!important;background:linear-gradient(135deg,var(--ffm-gold-light),var(--ffm-gold))!important;box-shadow:0 10px 26px rgba(187,129,8,.2)}
.primary-nav .nav-cta:hover,.primary-nav .nav-cta:focus-visible{transform:translateY(-1px);box-shadow:0 13px 30px rgba(187,129,8,.28)}
.menu-toggle{color:#07131f!important;border-color:rgba(7,19,31,.12)!important;border-radius:14px!important;background:#fffaf0!important;box-shadow:0 8px 22px rgba(7,19,31,.08)}
.page-hero{margin-top:0!important;overflow:hidden}

/* Managed-building editorial profiles */
.building-pillar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.building-pillar-grid article{display:flex;flex-direction:column;min-height:260px;padding:28px;border:1px solid var(--ffm-line);border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(7,19,31,.06)}
.building-pillar-grid article>span,.section-number{display:grid;place-items:center;width:42px;height:42px;margin:0 0 38px;border-radius:13px;color:#17130a;background:linear-gradient(135deg,var(--ffm-gold-light),var(--ffm-gold));font-size:.72rem;font-weight:900}
.building-pillar-grid h3{margin:auto 0 12px;font-size:1.3rem;letter-spacing:-.025em}
.building-pillar-grid p{margin:0;color:var(--ffm-muted);line-height:1.75}
.building-editorial-section{background:linear-gradient(180deg,#f8f7f2,#fff)}
.building-editorial-layout{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,820px);justify-content:space-between;gap:clamp(44px,8vw,120px);align-items:start}
.building-contents{position:sticky;top:110px;display:grid;gap:4px;padding:24px!important;border-color:rgba(226,173,47,.25)!important;background:#fff!important}
.building-contents .eyebrow{margin-bottom:8px}
.building-contents a{padding:10px 11px;border-radius:10px;color:#53616e;font-size:.78rem;line-height:1.45}
.building-contents a:hover,.building-contents a:focus-visible{color:#6f4e07;background:#fff7df}
.building-copy-section{padding:0 0 58px;margin:0 0 58px;border-bottom:1px solid var(--ffm-line);scroll-margin-top:125px}
.building-copy-section:last-child{margin-bottom:0;border-bottom:0}
.building-copy-section .section-number,.longform-section .section-number{margin-bottom:22px}
.building-copy-section h2{max-width:760px;margin:0 0 24px;font-size:clamp(2rem,4vw,3.7rem);line-height:1.02;letter-spacing:-.05em}
.building-copy-section p{margin:0 0 20px;color:var(--editorial-copy);font-size:1.04rem;line-height:1.92}
.directory-detail-main .audience-list a{padding:10px 13px;border:1px solid rgba(226,173,47,.26);border-radius:999px;color:#765308;background:#fffbef;font-size:.78rem;font-weight:760}
.directory-detail-main .audience-list a:hover,.directory-detail-main .audience-list a:focus-visible{border-color:#d09a1e;background:#fff4cc}
.faq-container{max-width:1000px}
.editorial-faq-list{display:grid;gap:12px}
.editorial-faq-list details{border:1px solid var(--ffm-line);border-radius:17px;background:#fff;box-shadow:0 12px 38px rgba(7,19,31,.04)}
.editorial-faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:21px 23px;list-style:none;color:#132230;font-weight:820;cursor:pointer}
.editorial-faq-list summary::-webkit-details-marker{display:none}
.editorial-faq-list summary span{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:50%;color:#765308;background:#fff5d4;font-size:1.2rem;transition:transform .18s ease}
.editorial-faq-list details[open] summary span{transform:rotate(45deg)}
.editorial-faq-list details>p{padding:0 23px 23px;margin:0;color:var(--ffm-muted);line-height:1.8}

/* Long-form SEO insight articles */
.enhanced-article-section .article-layout{grid-template-columns:minmax(0,850px) minmax(280px,350px);gap:clamp(44px,7vw,100px);align-items:start}
.enhanced-article-section .article-main{max-width:none}
.article-deck{margin:18px 0 34px!important;color:#334454!important;font-size:clamp(1.15rem,2.3vw,1.48rem)!important;line-height:1.65!important}
.article-takeaway-list{padding:28px 30px}
.article-takeaway-list ul{display:grid;gap:12px;padding:0;margin:14px 0 0;list-style:none}
.article-takeaway-list li{position:relative;padding-left:25px;color:#514a3f;line-height:1.7}
.article-takeaway-list li::before{content:"✓";position:absolute;left:0;color:#8a6209;font-weight:900}
.article-toc{padding:28px 30px;margin:30px 0 60px;border:1px solid var(--ffm-line);border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(7,19,31,.06)}
.article-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 26px;padding:0;margin:18px 0 0;counter-reset:toc;list-style:none}
.article-toc li{counter-increment:toc}
.article-toc a{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:8px 0;color:#4d5b67;font-size:.78rem;line-height:1.45}
.article-toc a::before{content:counter(toc,decimal-leading-zero);color:#9a6e0c;font-weight:900}
.article-toc a:hover,.article-toc a:focus-visible{color:#07131f}
.longform-section{padding:0 0 54px;margin:0 0 54px;border-bottom:1px solid var(--ffm-line);scroll-margin-top:125px}
.longform-section h2{margin:0 0 24px;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.08;letter-spacing:-.045em}
.longform-section p{margin:0 0 20px;color:var(--editorial-copy);font-size:1.035rem;line-height:1.93}
.article-inline-cta{padding:clamp(28px,5vw,48px);margin:0 0 58px;border:1px solid rgba(245,206,102,.28);border-radius:24px;color:#fff;background:radial-gradient(circle at 85% 10%,rgba(226,173,47,.22),transparent 34%),#07131f;box-shadow:0 24px 70px rgba(7,19,31,.18)}
.article-inline-cta h2{max-width:620px;margin:8px 0 16px;font-size:clamp(1.8rem,3.6vw,3.1rem);line-height:1.04}
.article-inline-cta>p:not(.eyebrow){max-width:650px;color:rgba(255,255,255,.7);line-height:1.75}
.article-inline-cta .button{margin-top:12px}
.article-faq-section{padding-top:10px;scroll-margin-top:125px}
.article-faq-section>h2{margin:8px 0 28px;font-size:clamp(2rem,4vw,3.5rem);line-height:1.03;letter-spacing:-.05em}
.article-aside{position:sticky;top:110px}
.article-aside .detail-cta{margin-top:16px}
.guide-length{display:inline-flex;width:max-content;margin:0 0 14px!important;padding:7px 10px;border:1px solid rgba(226,173,47,.28);border-radius:999px;color:#795608!important;background:#fff8e5;font-size:.68rem!important;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.article-related-services{padding-top:58px;margin-top:58px;border-top:1px solid var(--ffm-line)}
.article-related-services h2{max-width:650px;margin:8px 0 24px;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.06;letter-spacing:-.045em}
.article-related-services>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.article-related-services a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--ffm-line);border-radius:14px;color:#34434f;background:#fff;font-size:.8rem;font-weight:760}
.article-related-services a:hover,.article-related-services a:focus-visible{border-color:rgba(226,173,47,.55);color:#6f4e07;transform:translateY(-2px)}

/* Verified Friends Group team directory */
.team-founder-section{background:linear-gradient(180deg,#f7f4ec,#fff)}
.team-founder-spotlight{display:grid;grid-template-columns:minmax(300px,.76fr) minmax(0,1.24fr);gap:clamp(38px,7vw,96px);align-items:center;padding:clamp(24px,4vw,46px);border:1px solid var(--ffm-line);border-radius:30px;background:#fff;box-shadow:0 28px 90px rgba(7,19,31,.1)}
.team-founder-portrait{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;border-radius:24px;background:#10202f}
.team-founder-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.team-founder-portrait:hover img,.team-founder-portrait:focus-visible img{transform:scale(1.035)}
.team-founder-portrait>span,.team-location-pill{position:absolute;right:18px;bottom:18px;z-index:2;display:inline-flex;align-items:center;min-height:32px;padding:7px 13px;border-radius:999px;color:#07131f;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(7,19,31,.16);font-size:.66rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.team-founder-spotlight article h2{margin:12px 0 8px;font-size:clamp(2.8rem,6vw,5.7rem);line-height:.95;letter-spacing:-.06em}
.team-founder-spotlight article h3{margin:0 0 22px;color:#8a6209;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.team-founder-spotlight article>p:not(.eyebrow){max-width:720px;color:var(--editorial-copy);font-size:1.04rem;line-height:1.85}
.team-founder-spotlight blockquote{padding:20px 22px;margin:26px 0;border-left:3px solid var(--ffm-gold);border-radius:0 14px 14px 0;color:#4d4639;background:#fff9e8;font-size:1rem;line-height:1.7}
.group-team-directory{background:#f7f4ec}
.team-source-note{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 25px!important;margin:0 0 32px;background:#fff!important}
.team-source-note span,.group-team-card small{display:block;color:#90650a;font-size:.66rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.team-source-note strong{display:block;margin:5px 0;color:#172431;font-size:1rem}
.team-source-note p{margin:0;color:var(--ffm-muted);font-size:.8rem;line-height:1.55}
.group-team-card{position:relative;isolation:isolate;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.group-team-card:hover{transform:translateY(-8px);border-color:rgba(226,173,47,.5);box-shadow:0 30px 80px rgba(7,19,31,.14)}
.group-team-card .team-member-image{position:relative;overflow:hidden}
.group-team-card .team-member-image img{transition:transform .55s cubic-bezier(.2,.8,.2,1),filter .3s ease}
.group-team-card:hover .team-member-image img{transform:scale(1.04);filter:saturate(1.04) contrast(1.02)}
.group-team-card .team-member-copy{position:relative;z-index:2;display:flex;flex:1 1 auto;flex-direction:column}
.group-team-card .team-member-copy>span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}
.group-team-card small{margin:16px 0 0}
.group-team-card .text-link{position:relative;z-index:5;margin-top:20px}
.team-card-full-link{position:absolute;inset:0;z-index:3;border-radius:inherit}
.team-card-full-link:focus-visible{outline:4px solid rgba(226,173,47,.75);outline-offset:-6px}
.facilities-team-structure{color:#fff;background:radial-gradient(circle at 82% 12%,rgba(226,173,47,.16),transparent 30%),#07131f}
.facilities-team-structure .section-heading h2{color:#fff}
.facilities-team-structure .section-heading>p{color:rgba(255,255,255,.63)}
.facilities-function-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.facilities-function-grid article{min-height:270px;padding:30px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025))}
.facilities-function-grid article>span{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#17130a;background:linear-gradient(135deg,var(--ffm-gold-light),var(--ffm-gold));font-size:.72rem;font-weight:900}
.facilities-function-grid h2{max-width:430px;margin:62px 0 13px;color:#fff;font-size:clamp(1.45rem,2.8vw,2.25rem);line-height:1.08;letter-spacing:-.04em}
.facilities-function-grid p{max-width:560px;margin:0;color:rgba(255,255,255,.64);line-height:1.75}
.team-profile-copy .profile-source-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;margin:24px 0;border:1px solid rgba(226,173,47,.28);border-radius:15px;background:#fff9e8}
.team-profile-copy .profile-source-panel span{display:block;color:#6d6251;font-size:.76rem;line-height:1.5}
.team-profile-copy .profile-source-panel a{flex:0 0 auto;color:#765308;font-size:.75rem;font-weight:850}

@media (min-width:981px){.menu-toggle{display:none!important}}
@media (max-width:1280px){.brand-primary{min-width:auto}.site-brand-copy{display:none}}
@media (max-width:1180px){.primary-nav a{padding-right:7px!important;padding-left:7px!important;font-size:.72rem!important}.primary-nav .nav-cta{padding-right:14px!important;padding-left:14px!important}.building-pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.header-inner{min-height:82px}.brand-primary{gap:10px}.site-brand-emblem{flex-basis:62px;width:62px;height:62px;border-radius:18px}.site-brand-logo{width:54px!important;max-width:54px!important;height:54px!important;max-height:54px!important}.site-brand-copy{display:flex}.site-brand-copy strong{font-size:.8rem}.site-brand-copy small{font-size:.52rem}.menu-toggle{display:grid!important}.primary-nav{position:absolute!important;top:100%!important;right:18px!important;left:18px!important;display:none;max-height:calc(100vh - 120px);padding:15px!important;border:1px solid rgba(7,19,31,.1);border-radius:0 0 20px 20px;background:#fff!important;box-shadow:0 26px 70px rgba(7,19,31,.18);overflow:auto}.primary-nav.is-open,.primary-nav[data-open="true"]{display:grid!important}.primary-nav a{padding:14px!important;font-size:.86rem!important}.primary-nav .nav-cta{justify-content:center;margin:8px 0 0!important;text-align:center}.building-editorial-layout,.enhanced-article-section .article-layout,.team-founder-spotlight{grid-template-columns:1fr}.building-contents{position:relative;top:auto}.article-aside{position:relative;top:auto}.article-toc ol{grid-template-columns:1fr}.team-founder-portrait{max-width:620px}.team-source-note{align-items:flex-start;flex-direction:column}.team-profile-copy .profile-source-panel{align-items:flex-start;flex-direction:column}}
@media (max-width:760px){.header-inner{min-height:76px}.site-brand-emblem{flex-basis:56px;width:56px;height:56px;border-radius:16px}.site-brand-logo{width:49px!important;max-width:49px!important;height:49px!important;max-height:49px!important}.building-pillar-grid,.facilities-function-grid{grid-template-columns:1fr}.building-pillar-grid article{min-height:220px}.building-copy-section h2{font-size:2.2rem}.building-copy-section p,.longform-section p{font-size:1rem;line-height:1.82}.article-toc,.article-takeaway-list{padding:22px 19px}.article-inline-cta{padding:28px 21px}.article-related-services>div{grid-template-columns:1fr}.team-founder-spotlight{padding:18px;border-radius:22px}.team-founder-spotlight article{padding:4px 3px 12px}.team-founder-spotlight article h2{font-size:3rem}.facilities-function-grid article{min-height:230px}.facilities-function-grid h2{margin-top:44px}}
@media (max-width:430px){.site-brand-copy small{display:none}.site-brand-copy strong{font-size:.76rem}}

/* Homepage and portfolio visual redesign */
.home-service-mosaic{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:18px!important}
.home-service-mosaic .photo-service-card{grid-column:span 4!important;border-radius:24px!important;box-shadow:0 22px 60px rgba(7,19,31,.09);overflow:hidden}
.home-service-mosaic .photo-service-card:nth-child(1){grid-column:span 8!important}
.home-service-mosaic .photo-service-card:nth-child(2){grid-column:span 4!important}
.home-service-mosaic .photo-service-media{height:270px!important}
.home-service-mosaic .photo-service-card:nth-child(-n+2) .photo-service-media{height:420px!important}
.home-service-mosaic .photo-service-copy{padding:25px 25px 27px!important}
.home-service-mosaic .photo-service-card:first-child .photo-service-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr);gap:28px;align-items:end}
.home-service-mosaic .photo-service-card:first-child .photo-service-copy h2{grid-row:1/3;margin:0;font-size:clamp(2rem,4vw,3.8rem);line-height:.95}
.home-service-mosaic .photo-service-card:first-child .photo-service-copy p{margin:0}

.property-showcase-section{position:relative;color:#fff;background:radial-gradient(circle at 85% 0,rgba(27,142,139,.22),transparent 30%),radial-gradient(circle at 15% 90%,rgba(226,173,47,.14),transparent 28%),#07131f;overflow:hidden}
.property-showcase-section::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,black,transparent 84%);pointer-events:none}
.property-showcase-section>.container{position:relative;z-index:1}
.property-showcase-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:clamp(36px,8vw,120px);align-items:end;margin-bottom:42px}
.property-showcase-heading .eyebrow{color:#34cab9}
.property-showcase-heading h2{max-width:850px;margin:8px 0 0;color:#fff;font-size:clamp(3rem,6vw,6.4rem);line-height:.9;letter-spacing:-.065em}
.property-showcase-heading>p{max-width:520px;margin:0 0 8px;color:rgba(255,255,255,.68);font-size:1.03rem;line-height:1.75}
.property-editorial-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(340px,.85fr);grid-template-rows:repeat(2,minmax(350px,1fr));gap:18px}
.property-visual-card{display:grid;grid-template-rows:minmax(250px,1fr) auto;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(255,255,255,.07);box-shadow:0 26px 80px rgba(0,0,0,.24);overflow:hidden}
.property-visual-featured{grid-row:1/3}
.property-visual-media{position:relative;display:block;min-height:0;overflow:hidden}
.property-visual-media::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,19,31,.48),transparent 55%)}
.property-visual-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .7s ease}
.property-visual-card:hover .property-visual-media img{transform:scale(1.035);filter:saturate(1.08)}
.property-visual-featured .property-visual-media{min-height:620px}
.property-visual-number,.property-photo-label{position:absolute;z-index:2;top:20px;display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(7,19,31,.7);backdrop-filter:blur(14px);font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.property-visual-number{left:20px;color:#fff}
.property-photo-label{right:20px;color:#f7d97c}
.property-visual-copy{padding:26px 28px 30px}
.property-visual-copy>p{margin:0 0 9px;color:#f0c95e;font-size:.68rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.property-visual-copy h3{margin:0;color:#fff;font-size:clamp(1.65rem,3vw,3rem);line-height:1;letter-spacing:-.045em}
.property-visual-copy h3 a{color:inherit}
.property-visual-copy>span{display:block;margin-top:13px;color:rgba(255,255,255,.62);line-height:1.6}
.property-visual-copy .text-link{margin-top:17px;color:#4ad2c2}
.property-visual-featured .property-visual-copy{padding:32px 34px 36px}
.property-visual-featured .property-visual-copy h3{font-size:clamp(2.5rem,5vw,5.2rem)}
.property-image-ribbon{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px}
.property-image-ribbon a{position:relative;display:block;height:215px;border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden}
.property-image-ribbon img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.property-image-ribbon a:hover img{transform:scale(1.06)}
.property-image-ribbon span{position:absolute;right:9px;bottom:9px;left:9px;padding:8px 10px;border-radius:10px;color:#fff;background:rgba(7,19,31,.7);backdrop-filter:blur(10px);font-size:.68rem;font-weight:750}
.property-showcase-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.12)}
.property-showcase-footer p{max-width:720px;margin:0;color:rgba(255,255,255,.62);line-height:1.65}
.property-showcase-footer strong{color:#fff}

.home-team-showcase{position:relative;color:#fff;background:linear-gradient(145deg,#07131f,#0b202a 62%,#0c2b31);overflow:hidden}
.home-team-showcase::after{content:"";position:absolute;right:-12vw;bottom:-20vw;width:48vw;height:48vw;border:1px solid rgba(68,210,193,.12);border-radius:50%;box-shadow:0 0 0 8vw rgba(68,210,193,.025),0 0 0 16vw rgba(68,210,193,.02);pointer-events:none}
.home-team-showcase>.container{position:relative;z-index:1}
.home-team-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.7fr);gap:clamp(36px,8vw,120px);align-items:end;margin-bottom:42px}
.home-team-heading .eyebrow{color:#42d2c1}
.home-team-heading h2{max-width:850px;margin:8px 0 0;color:#fff;font-size:clamp(3rem,6vw,6rem);line-height:.92;letter-spacing:-.06em}
.home-team-heading>div:last-child>p{margin:0;color:rgba(255,255,255,.66);line-height:1.75}
.home-team-heading .text-link{margin-top:18px}
.home-team-editorial{display:grid;grid-template-columns:minmax(360px,.88fr) minmax(0,1.35fr);gap:18px}
.home-team-lead{display:grid;grid-template-rows:minmax(560px,1fr) auto;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:rgba(255,255,255,.07);box-shadow:0 28px 90px rgba(0,0,0,.24);overflow:hidden}
.home-team-lead-image,.home-team-card-image{position:relative;display:block;overflow:hidden}
.home-team-lead-image img,.home-team-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.home-team-lead:hover img,.home-team-card:hover img{transform:scale(1.035)}
.home-team-lead-image>span,.home-team-card-image>span{position:absolute;top:16px;left:16px;display:inline-flex;padding:8px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;background:rgba(7,19,31,.68);backdrop-filter:blur(12px);font-size:.66rem;font-weight:850}
.home-team-lead>div{padding:28px 30px 32px}
.home-team-lead>div>p,.home-team-card>div>p{margin:0 0 9px;color:#e7bd52;font-size:.66rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.home-team-lead h3,.home-team-card h3{margin:0;color:#fff;letter-spacing:-.045em}
.home-team-lead h3{font-size:clamp(2.4rem,4vw,4.4rem);line-height:.95}
.home-team-lead>div>span,.home-team-card>div>span{display:-webkit-box;margin-top:13px;color:rgba(255,255,255,.62);line-height:1.6;-webkit-box-orient:vertical;overflow:hidden}
.home-team-lead>div>span{-webkit-line-clamp:4}
.home-team-lead .text-link{margin-top:18px}
.home-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.home-team-card{display:grid;grid-template-rows:330px auto;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(255,255,255,.065);overflow:hidden}
.home-team-card>div{display:flex;flex-direction:column;padding:20px 21px 23px}
.home-team-card h3{font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1}
.home-team-card>div>span{margin-bottom:16px;-webkit-line-clamp:2}
.home-team-card>div>a{margin-top:auto;color:#42d2c1;font-size:.75rem;font-weight:800}
.home-team-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.home-team-footer>span{color:rgba(255,255,255,.58);font-size:.78rem}

.project-photo-story{padding-top:0;background:#f1f5f4}
.project-photo-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.72fr);gap:clamp(30px,7vw,100px);align-items:end;margin-bottom:34px}
.project-photo-heading h2{max-width:820px;margin:7px 0 0;font-size:clamp(2.8rem,5.6vw,5.8rem);line-height:.92;letter-spacing:-.06em}
.project-photo-heading>p{margin:0;color:var(--editorial-copy);line-height:1.75}
.project-photo-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.65fr);gap:16px}
.project-photo-layout figure{position:relative;margin:0;border-radius:26px;background:#dfe7e5;box-shadow:0 24px 70px rgba(7,19,31,.12);overflow:hidden}
.project-photo-layout img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.project-photo-layout figure:hover img{transform:scale(1.025)}
.project-photo-primary{height:760px}
.project-photo-primary figcaption{position:absolute;right:18px;bottom:18px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;border:1px solid rgba(255,255,255,.2);border-radius:16px;color:#fff;background:rgba(7,19,31,.72);backdrop-filter:blur(15px)}
.project-photo-primary figcaption span{color:#f0ca63;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.project-photo-primary figcaption strong{font-size:.9rem;text-align:right}
.project-photo-stack{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:16px}
.project-photo-stack figure{height:372px}
.project-photo-stack figcaption{position:absolute;right:12px;bottom:12px;padding:8px 10px;border-radius:10px;color:#fff;background:rgba(7,19,31,.72);font-size:.68rem;font-weight:800}
.project-media-credit{margin:16px 0 0;color:#77838d;font-size:.72rem;text-align:right}
.project-media-credit a{color:#5c686f;text-decoration:underline;text-underline-offset:3px}

@media (max-width:1100px){
  .home-service-mosaic .photo-service-card,.home-service-mosaic .photo-service-card:nth-child(1),.home-service-mosaic .photo-service-card:nth-child(2){grid-column:span 6!important}
  .home-service-mosaic .photo-service-card:last-child{grid-column:1/-1!important}
  .home-service-mosaic .photo-service-card:first-child .photo-service-copy{display:block}
  .home-service-mosaic .photo-service-card:first-child .photo-service-copy p{margin-top:14px}
  .property-editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .property-visual-featured{grid-column:1/-1;grid-row:auto}
  .property-visual-featured .property-visual-media{min-height:560px}
  .property-image-ribbon{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-team-editorial{grid-template-columns:1fr}
  .home-team-lead{grid-template-columns:minmax(320px,.85fr) minmax(0,1fr);grid-template-rows:none}
  .home-team-lead-image{min-height:580px}
}
@media (max-width:820px){
  .property-showcase-heading,.home-team-heading,.project-photo-heading{grid-template-columns:1fr;gap:22px}
  .property-showcase-heading h2,.home-team-heading h2{font-size:clamp(3rem,12vw,5.5rem)}
  .property-editorial-grid,.project-photo-layout{grid-template-columns:1fr}
  .property-visual-featured{grid-column:auto}
  .property-visual-featured .property-visual-media{min-height:480px}
  .property-image-ribbon{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
  .property-image-ribbon a{flex:0 0 270px;scroll-snap-align:start}
  .home-team-lead{grid-template-columns:1fr;grid-template-rows:540px auto}
  .home-team-lead-image{min-height:0}
  .project-photo-primary{height:580px}
  .project-photo-stack{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
  .project-photo-stack figure{height:320px}
}
@media (max-width:620px){
  .home-service-mosaic{grid-template-columns:1fr!important}
  .home-service-mosaic .photo-service-card,.home-service-mosaic .photo-service-card:nth-child(1),.home-service-mosaic .photo-service-card:nth-child(2),.home-service-mosaic .photo-service-card:last-child{grid-column:auto!important}
  .home-service-mosaic .photo-service-media,.home-service-mosaic .photo-service-card:nth-child(-n+2) .photo-service-media{height:290px!important}
  .property-visual-media,.property-visual-featured .property-visual-media{min-height:390px}
  .property-photo-label{top:auto;right:13px;bottom:13px;left:13px;justify-content:center}
  .property-visual-number{top:13px;left:13px}
  .property-visual-copy,.property-visual-featured .property-visual-copy{padding:23px 20px 27px}
  .property-showcase-footer,.home-team-footer{align-items:stretch;flex-direction:column}
  .property-showcase-footer .button,.home-team-footer .button{width:100%}
  .home-team-grid{grid-template-columns:1fr}
  .home-team-lead{grid-template-rows:480px auto}
  .home-team-card{grid-template-rows:440px auto}
  .project-photo-primary{height:480px}
  .project-photo-stack{grid-template-columns:1fr}
  .project-photo-stack figure{height:360px}
  .project-photo-primary figcaption{align-items:flex-start;flex-direction:column}
  .project-photo-primary figcaption strong{text-align:left}
}

/* Global contact launcher and guided facility assistant */
.facility-assistant{position:fixed;right:22px;bottom:82px;z-index:105;display:flex;align-items:flex-end;flex-direction:column;gap:13px;font-family:inherit}
.facility-assistant [hidden]{display:none!important}
.facility-assistant-toggle{display:grid;place-items:center;width:64px;height:64px;padding:0;border:2px solid rgba(255,255,255,.9);border-radius:50%;color:#fff;background:linear-gradient(145deg,#174f86,#0b2f57);box-shadow:0 0 0 4px #0b2f57,0 18px 48px rgba(7,19,31,.28);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.facility-assistant-toggle:hover,.facility-assistant-toggle:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 4px #0b2f57,0 24px 54px rgba(7,19,31,.34)}
.facility-assistant-toggle i{font-size:1.45rem;font-style:normal;transition:transform .22s ease}
.facility-assistant-toggle[aria-expanded="true"] i{transform:rotate(45deg)}
.facility-assistant-menu{display:grid;gap:10px;width:230px;padding:16px;border:1px solid rgba(255,255,255,.13);border-radius:24px;color:#fff;background:linear-gradient(160deg,#123f70,#082b50);box-shadow:0 28px 80px rgba(7,19,31,.3)}
.facility-assistant-menu>a,.facility-assistant-menu>button{display:grid;grid-template-columns:1fr 48px;align-items:center;gap:12px;min-height:50px;padding:0 0 0 16px;border:0;border-radius:13px;color:#fff;background:rgba(4,22,40,.18);font:inherit;font-size:.78rem;font-weight:800;text-align:left;cursor:pointer;transition:background .18s ease,transform .18s ease}
.facility-assistant-menu>a:hover,.facility-assistant-menu>a:focus-visible,.facility-assistant-menu>button:hover,.facility-assistant-menu>button:focus-visible{transform:translateX(-3px);background:rgba(255,255,255,.1)}
.assistant-action-icon{display:grid;place-items:center;width:48px;height:48px;border:2px solid rgba(255,255,255,.75);border-radius:50%;color:#fff;font-size:1.1rem;font-style:normal;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.assistant-icon-blue{background:#218bc8}.assistant-icon-green{background:#19bc65}.assistant-icon-purple{background:#7651c8}.assistant-icon-navy{background:#164d7f}.assistant-icon-gold{color:#15202a;background:#f2c34f}.assistant-icon-teal{background:#149a96}
.facility-assistant-panel{width:min(390px,calc(100vw - 28px));border:1px solid rgba(255,255,255,.15);border-radius:25px;background:#f7f8f6;box-shadow:0 30px 90px rgba(7,19,31,.32);overflow:hidden}
.facility-assistant-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 22px 20px;color:#fff;background:radial-gradient(circle at 90% 0,rgba(226,173,47,.25),transparent 36%),#0a3159}
.facility-assistant-panel>header>div{position:relative;padding-left:15px}.assistant-status-dot{position:absolute;top:6px;left:0;width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 5px rgba(52,211,153,.13)}
.facility-assistant-panel header p{margin:0 0 4px;color:rgba(255,255,255,.7);font-size:.67rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.facility-assistant-panel header h2{margin:0;color:#fff;font-size:1.3rem;letter-spacing:-.025em}
.facility-assistant-panel>header button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;background:rgba(255,255,255,.08);font-size:1.5rem;cursor:pointer}
.assistant-conversation{display:flex;flex-direction:column;gap:10px;max-height:250px;padding:20px 18px 10px;overflow:auto;scroll-behavior:smooth}
.assistant-message{max-width:89%;padding:12px 14px;border-radius:15px;font-size:.79rem;line-height:1.55}.assistant-message-bot{align-self:flex-start;color:#33424f;background:#fff;box-shadow:0 8px 22px rgba(7,19,31,.07)}.assistant-message-user{align-self:flex-end;color:#fff;background:#0b477c}.assistant-message a{display:inline-flex;margin-top:8px;color:#795608;font-weight:850}.assistant-message-user a{color:#fff}
.assistant-quick-topics{display:flex;gap:7px;padding:10px 18px 12px;overflow-x:auto;scrollbar-width:thin}.assistant-quick-topics button{flex:0 0 auto;padding:8px 10px;border:1px solid rgba(11,71,124,.16);border-radius:999px;color:#245170;background:#eef5fa;font:inherit;font-size:.66rem;font-weight:800;cursor:pointer}
.assistant-question-form{display:grid;grid-template-columns:1fr 42px;gap:8px;padding:12px 14px;border-top:1px solid rgba(7,19,31,.08);background:#fff}.assistant-question-form input{min-width:0;height:44px;padding:0 13px;border:1px solid rgba(7,19,31,.14);border-radius:12px;color:#142332;background:#f7f8f6;font:inherit;font-size:.78rem}.assistant-question-form input:focus{outline:3px solid rgba(226,173,47,.2);border-color:#c18c1b}.assistant-question-form button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:12px;color:#17130a;background:linear-gradient(135deg,var(--ffm-gold-light),var(--ffm-gold));font-size:1.1rem;font-weight:900;cursor:pointer}
.facility-assistant-panel>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px 13px;border-top:1px solid rgba(7,19,31,.06);background:#fff}.facility-assistant-panel>footer p{max-width:240px;margin:0;color:#7b858d;font-size:.57rem;line-height:1.45}.facility-assistant-panel>footer nav{display:flex;gap:5px}.facility-assistant-panel>footer a{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;color:#fff;background:#0c3a65;font-size:.55rem;font-weight:900;text-transform:uppercase}
.contact-community-panel{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(30px,6vw,90px);align-items:center;padding:clamp(28px,5vw,52px)!important;margin-top:24px;background:linear-gradient(145deg,#07131f,#12314a)!important}
.contact-community-heading h2{margin:7px 0 14px;color:#fff;font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:-.05em}.contact-community-heading>p:last-child{margin:0;color:rgba(255,255,255,.64);line-height:1.75}
.contact-social-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.contact-social-grid a{position:relative;display:flex;flex-direction:column;min-height:128px;padding:20px;border:1px solid rgba(255,255,255,.11);border-radius:17px;color:#fff;background:rgba(255,255,255,.055);transition:transform .18s ease,border-color .18s ease,background .18s ease}.contact-social-grid a:hover,.contact-social-grid a:focus-visible{transform:translateY(-4px);border-color:rgba(245,206,102,.5);background:rgba(255,255,255,.09)}.contact-social-grid span{color:#f1cc68;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.contact-social-grid strong{max-width:85%;margin-top:auto;font-size:.8rem;line-height:1.35;overflow-wrap:anywhere}.contact-social-grid i{position:absolute;right:16px;bottom:16px;font-style:normal}
.site-utility-copy .utility-location{color:inherit}.site-utility-copy .utility-location:hover,.site-utility-copy .utility-location:focus-visible{color:var(--ffm-gold-light)}.footer-address{line-height:1.55!important}
@media (max-width:820px){.contact-community-panel{grid-template-columns:1fr}.facility-assistant{right:16px;bottom:88px}.facility-assistant-toggle{width:58px;height:58px}.back-to-top{right:88px}}
@media (max-width:760px){.facility-assistant{bottom:86px}.facility-assistant-menu{width:min(230px,calc(100vw - 32px))}.facility-assistant-panel{max-height:calc(100vh - 118px)}.assistant-conversation{max-height:210px}.contact-social-grid{grid-template-columns:1fr}}
@media (max-width:430px){.facility-assistant{right:10px}.facility-assistant-panel{width:calc(100vw - 20px)}.facility-assistant-menu{width:220px}.assistant-quick-topics{padding-right:14px;padding-left:14px}}

/* Advanced 2026 homepage experience */
.home-page{background:#f2f6f5}
.home-page .section{padding-top:clamp(78px,9vw,138px);padding-bottom:clamp(78px,9vw,138px)}
.home-page .section-heading{margin-bottom:clamp(34px,5vw,62px)}
.home-page .section-heading h2{max-width:900px;font-size:clamp(2.65rem,5.5vw,5.8rem);line-height:.93;letter-spacing:-.06em}
.home-hero-advanced{position:relative;min-height:clamp(780px,calc(100svh - 40px),980px);padding:0 0 30px;background:#07131f;isolation:isolate;overflow:hidden}
.home-hero-advanced::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 78% 28%,rgba(29,201,177,.2),transparent 28%),linear-gradient(90deg,rgba(5,15,24,.9),rgba(5,15,24,.42) 58%,rgba(5,15,24,.62));pointer-events:none}
.home-hero-advanced::after{content:"";position:absolute;z-index:1;right:-8vw;bottom:-22vw;width:54vw;height:54vw;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 9vw rgba(255,255,255,.018),0 0 0 18vw rgba(255,255,255,.012);pointer-events:none}
.home-hero-advanced .photo-hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;filter:saturate(.92) contrast(1.04);transform:scale(1.015)}
.home-hero-advanced .photo-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(to bottom,rgba(3,11,18,.05),rgba(3,11,18,.48))}
.home-hero-advanced .photo-hero-content{position:relative;z-index:3;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.65fr);gap:clamp(28px,5vw,80px);align-items:end;padding-top:clamp(118px,15vh,180px);padding-bottom:38px}
.home-hero-advanced .photo-hero-copy{max-width:830px;padding:clamp(30px,4vw,56px);border:1px solid rgba(255,255,255,.17);border-radius:32px;background:linear-gradient(145deg,rgba(4,17,28,.84),rgba(4,17,28,.62));box-shadow:0 34px 100px rgba(0,0,0,.3);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.home-hero-advanced .photo-hero-copy .eyebrow{color:#41d2bf}
.home-hero-advanced .photo-hero-copy h1{max-width:800px;margin:12px 0 24px;color:#fff;font-size:clamp(3.5rem,5.7vw,6.4rem);line-height:.89;letter-spacing:-.068em;text-wrap:balance}
.home-hero-advanced .photo-hero-copy>p:not(.eyebrow){max-width:710px;margin:0;color:rgba(255,255,255,.72);font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.75}
.home-hero-advanced .hero-actions{margin-top:28px}
.home-hero-advanced .photo-hero-tags{gap:8px;margin-top:26px}
.home-hero-advanced .photo-hero-tags span{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.055);backdrop-filter:blur(12px)}
.home-hero-advanced .hero-command{position:relative;max-width:none;padding:clamp(24px,3vw,34px);border:1px solid rgba(255,255,255,.17);border-radius:28px;background:linear-gradient(145deg,rgba(7,25,37,.82),rgba(10,31,42,.62));box-shadow:0 28px 85px rgba(0,0,0,.28);backdrop-filter:blur(22px);overflow:hidden}
.home-hero-advanced .hero-command::before{content:"";position:absolute;right:-55px;top:-65px;width:160px;height:160px;border-radius:50%;background:rgba(42,207,187,.12);filter:blur(3px)}
.home-hero-advanced .hero-command h2{position:relative;max-width:390px;margin:48px 0 16px;color:#fff;font-size:clamp(2rem,3.2vw,3.25rem);line-height:.94;letter-spacing:-.055em}
.home-hero-advanced .hero-command>p{color:rgba(255,255,255,.66);line-height:1.72}
.home-hero-advanced .hero-command-grid{gap:8px;margin-top:22px}
.home-hero-advanced .hero-command-grid>div{min-height:102px;padding:15px 13px;border:1px solid rgba(255,255,255,.11);border-radius:15px;background:rgba(255,255,255,.055)}
.hero-property-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}
.hero-property-preview a{position:relative;display:block;height:92px;border:1px solid rgba(255,255,255,.13);border-radius:14px;overflow:hidden}
.hero-property-preview img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.hero-property-preview a:hover img,.hero-property-preview a:focus-visible img{transform:scale(1.07)}
.hero-property-preview span{position:absolute;inset:auto 5px 5px;padding:6px 7px;border-radius:8px;color:#fff;background:rgba(4,15,24,.76);font-size:.55rem;font-weight:800;line-height:1.2;backdrop-filter:blur(10px)}
.home-hero-advanced .hero-proof-bar{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:rgba(6,20,31,.68);box-shadow:0 24px 70px rgba(0,0,0,.2);backdrop-filter:blur(20px);overflow:hidden}
.home-hero-advanced .hero-proof-bar>div{min-height:100px;padding:22px 26px;border-right:1px solid rgba(255,255,255,.1)}
.home-hero-advanced .hero-proof-bar>div:last-child{border-right:0}
.home-hero-advanced .hero-proof-bar strong{display:block;color:#f4ce69;font-size:1.25rem}
.home-hero-advanced .hero-proof-bar span{display:block;margin-top:7px;color:rgba(255,255,255,.6);font-size:.7rem;line-height:1.4}

.home-pathways-section{position:relative;background:linear-gradient(180deg,#eef4f3,#fff);overflow:hidden}
.home-pathways-section::before{content:"";position:absolute;left:-14vw;top:8vw;width:38vw;height:38vw;border-radius:50%;background:rgba(29,201,177,.07);filter:blur(2px)}
.home-pathways-section>.container{position:relative}
.home-pathways-visual-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}
.home-pathways-visual-grid .home-pathway-visual{position:relative;display:block;min-height:590px;padding:0!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:30px!important;color:#fff!important;background:#102330!important;box-shadow:0 26px 80px rgba(7,19,31,.15)!important;overflow:hidden;isolation:isolate}
.home-pathway-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .7s ease}
.home-pathway-visual:hover>img,.home-pathway-visual:focus-visible>img{transform:scale(1.045);filter:saturate(1.08)}
.home-pathway-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(4,14,23,.97) 4%,rgba(4,14,23,.72) 48%,rgba(4,14,23,.04) 82%)}
.home-pathway-number{position:absolute!important;z-index:2;top:20px;left:20px;display:grid!important;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.34);border-radius:50%;color:#fff!important;background:rgba(6,20,31,.55);font-size:.7rem!important;backdrop-filter:blur(12px)}
.home-pathway-visual>div{position:absolute;right:0;bottom:0;left:0;z-index:2;padding:clamp(24px,3vw,34px)}
.home-pathway-visual small{color:#45d3c1;font-size:.67rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.home-pathway-visual h2{max-width:440px;margin:12px 0 14px!important;color:#fff;font-size:clamp(2rem,3.3vw,3.35rem)!important;line-height:.96;letter-spacing:-.052em}
.home-pathway-visual p{margin:0!important;color:rgba(255,255,255,.66)!important;line-height:1.65}
.home-pathway-visual strong{display:inline-flex;margin-top:22px!important;color:#f3ce6b!important;font-size:.74rem!important}

.home-process-command{position:relative;color:#fff;background:radial-gradient(circle at 85% 10%,rgba(31,208,185,.14),transparent 28%),radial-gradient(circle at 8% 92%,rgba(226,173,47,.14),transparent 26%),#06131f;overflow:hidden}
.home-process-command::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to bottom,black,transparent 88%)}
.home-process-command>.container{position:relative}
.home-process-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.68fr);gap:clamp(34px,8vw,110px);align-items:end;margin-bottom:46px}
.home-process-heading .eyebrow{color:#43d3c1}
.home-process-heading h2{max-width:860px;margin:8px 0 0;color:#fff;font-size:clamp(3rem,6vw,6.4rem);line-height:.89;letter-spacing:-.065em}
.home-process-heading>p{margin:0 0 8px;color:rgba(255,255,255,.64);font-size:1rem;line-height:1.75}
.home-process-layout{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);gap:clamp(30px,5vw,70px);align-items:stretch}
.home-process-visual{position:relative;min-height:780px;margin:0;border:1px solid rgba(255,255,255,.13);border-radius:30px;box-shadow:0 30px 90px rgba(0,0,0,.28);overflow:hidden}
.home-process-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,17,27,.88),transparent 55%)}
.home-process-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.home-process-visual:hover img{transform:scale(1.035)}
.home-process-visual figcaption{position:absolute;right:20px;bottom:20px;left:20px;z-index:2;padding:20px;border:1px solid rgba(255,255,255,.16);border-radius:17px;background:rgba(5,17,27,.65);backdrop-filter:blur(16px)}
.home-process-visual figcaption span{display:block;margin-bottom:8px;color:#efc862;font-size:.65rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.home-process-visual figcaption strong{display:block;color:#fff;font-size:1.1rem;line-height:1.45}
.home-process-timeline{display:flex;flex-direction:column}
.home-process-timeline article{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:27px 0;border-top:1px solid rgba(255,255,255,.12)}
.home-process-timeline article:first-child{border-top:0}
.home-process-timeline article>span{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(245,206,102,.35);border-radius:15px;color:#f4ce69;background:rgba(245,206,102,.07);font-size:.72rem;font-weight:900}
.home-process-timeline h3{margin:3px 0 9px;color:#fff;font-size:clamp(1.35rem,2.4vw,2.15rem);letter-spacing:-.035em}
.home-process-timeline p{max-width:660px;margin:0;color:rgba(255,255,255,.61);line-height:1.7}
.home-process-timeline .button{width:max-content;margin-top:auto}

.home-assurance-section{background:linear-gradient(180deg,#f2f6f5,#fff)}
.home-assurance-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:clamp(40px,8vw,120px);align-items:center;margin-bottom:70px}
.home-assurance-copy h2{max-width:720px;margin:10px 0 22px;font-size:clamp(3rem,5.4vw,5.8rem);line-height:.9;letter-spacing:-.065em}
.home-assurance-copy>p:not(.eyebrow){max-width:660px;color:#52606c;font-size:1.05rem;line-height:1.8}
.home-assurance-points{display:grid;gap:9px;margin-top:30px}
.home-assurance-points span{display:flex;align-items:center;gap:15px;padding:15px 17px;border:1px solid var(--ffm-line);border-radius:14px;background:#fff;color:#34424d;font-size:.82rem;font-weight:760}
.home-assurance-points strong{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;color:#6e4d06;background:#fff3cb;font-size:.65rem}
.home-assurance-photos{display:grid;grid-template-columns:1.1fr .9fr;gap:15px;align-items:end}
.home-assurance-photos figure{position:relative;height:650px;margin:0;border-radius:28px;box-shadow:0 28px 80px rgba(7,19,31,.14);overflow:hidden}
.home-assurance-photos figure:last-child{height:520px}
.home-assurance-photos img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.home-assurance-photos figure:hover img{transform:scale(1.035)}
.home-assurance-photos figcaption{position:absolute;right:13px;bottom:13px;left:13px;padding:11px 12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;background:rgba(5,18,28,.7);font-size:.7rem;font-weight:800;backdrop-filter:blur(12px)}
.home-environment-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-top:30px;border-top:1px solid var(--ffm-line)}
.home-environment-heading span{color:#172633;font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.home-environment-heading p{max-width:620px;margin:0;color:#77828b;font-size:.7rem;line-height:1.55;text-align:right}
.home-assurance-section .developer-marquee{margin-top:22px}
.home-assurance-section .developer-marquee span{min-width:150px;border-color:rgba(7,19,31,.08);background:#fff;box-shadow:0 13px 36px rgba(7,19,31,.06)}

.home-insights-section{position:relative;background:#edf3f2;overflow:hidden}
.home-insights-section::after{content:"";position:absolute;right:-16vw;top:-18vw;width:46vw;height:46vw;border-radius:50%;background:rgba(28,199,178,.07);pointer-events:none}
.home-insights-section>.container{position:relative;z-index:1}
.home-insight-grid{display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr)!important;grid-template-rows:repeat(2,minmax(0,1fr));gap:18px!important}
.home-insight-card{display:grid!important;grid-template-columns:220px 1fr;border-radius:24px!important;overflow:hidden}
.home-insight-featured{grid-row:1/3;grid-template-columns:1fr!important;grid-template-rows:minmax(480px,1.1fr) auto}
.home-insight-card .blog-image{height:100%!important;min-height:290px}
.home-insight-card .blog-image img{width:100%;height:100%;object-fit:cover}
.home-insight-featured .blog-image{min-height:520px}
.home-insight-card .blog-card-body{padding:26px!important}
.home-insight-featured .blog-card-body{padding:34px!important}
.home-insight-featured h2{font-size:clamp(2rem,4vw,4rem)!important;line-height:.98!important;letter-spacing:-.05em}
.home-insight-card:not(.home-insight-featured) h2{font-size:clamp(1.25rem,2vw,1.75rem)!important;line-height:1.08!important}
.home-insight-card:not(.home-insight-featured) .blog-card-body>p:not(.blog-meta):not(.guide-length){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.premium-close-card{min-height:680px!important;border-radius:34px!important}
.premium-close-copy{max-width:800px!important}
.premium-close-copy h2{font-size:clamp(3.3rem,6vw,6.8rem)!important;line-height:.88!important;letter-spacing:-.065em!important}
.premium-contact-line{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.premium-contact-line a{padding:10px 13px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.74);background:rgba(255,255,255,.07);font-size:.7rem;font-weight:750;backdrop-filter:blur(12px)}
.premium-contact-line a:hover,.premium-contact-line a:focus-visible{color:#fff;border-color:rgba(245,206,102,.5)}

@media (max-width:1180px){
  .home-hero-advanced .photo-hero-content{grid-template-columns:minmax(0,1.08fr) minmax(330px,.7fr)}
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(3.4rem,5.8vw,5.7rem)}
  .home-pathways-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-pathways-visual-grid .home-pathway-visual:last-child{grid-column:1/-1;min-height:500px}
  .home-assurance-grid{grid-template-columns:1fr 1fr;gap:50px}
  .home-insight-grid{grid-template-columns:1fr 1fr!important}
  .home-insight-card{grid-template-columns:1fr!important;grid-template-rows:300px auto}
}
@media (max-width:980px){
  .home-hero-advanced{min-height:auto}
  .home-hero-advanced .photo-hero-content{grid-template-columns:1fr;padding-top:90px}
  .home-hero-advanced .hero-command{max-width:760px}
  .home-hero-advanced .hero-proof-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-hero-advanced .hero-proof-bar>div:nth-child(2){border-right:0}
  .home-hero-advanced .hero-proof-bar>div:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.1)}
  .home-process-heading,.home-process-layout,.home-assurance-grid{grid-template-columns:1fr}
  .home-process-visual{min-height:640px}
  .home-process-timeline .button{margin-top:28px}
  .home-assurance-copy{max-width:760px}
  .home-assurance-photos{max-width:760px}
  .home-insight-grid{grid-template-columns:1fr!important;grid-template-rows:auto}
  .home-insight-featured{grid-row:auto}
  .home-insight-card{grid-template-columns:260px 1fr!important;grid-template-rows:none}
  .home-insight-featured{grid-template-columns:1fr!important;grid-template-rows:480px auto}
}
@media (max-width:760px){
  .home-page .section{padding-top:72px;padding-bottom:72px}
  .home-page .section-heading h2{font-size:clamp(2.6rem,12vw,4.3rem)}
  .home-hero-advanced{padding-bottom:14px}
  .home-hero-advanced .photo-hero-content{padding-top:58px;padding-bottom:20px}
  .home-hero-advanced .photo-hero-copy{padding:27px 21px;border-radius:24px}
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(3.2rem,15.5vw,5rem);line-height:.88}
  .home-hero-advanced .hero-command{padding:23px 19px;border-radius:22px}
  .home-hero-advanced .hero-command h2{margin-top:35px}
  .home-hero-advanced .hero-command-grid{grid-template-columns:1fr}
  .home-hero-advanced .hero-command-grid>div{min-height:74px}
  .hero-property-preview a{height:82px}
  .home-hero-advanced .hero-proof-bar{border-radius:18px}
  .home-hero-advanced .hero-proof-bar>div{min-height:88px;padding:18px}
  .home-pathways-visual-grid{grid-template-columns:1fr!important}
  .home-pathways-visual-grid .home-pathway-visual,.home-pathways-visual-grid .home-pathway-visual:last-child{grid-column:auto;min-height:520px}
  .home-process-heading h2,.home-assurance-copy h2{font-size:clamp(2.8rem,13vw,4.5rem)}
  .home-process-visual{min-height:520px}
  .home-process-timeline article{grid-template-columns:48px 1fr;gap:14px;padding:22px 0}
  .home-process-timeline article>span{width:44px;height:44px}
  .home-assurance-photos{grid-template-columns:1fr 1fr;gap:9px}
  .home-assurance-photos figure{height:460px;border-radius:20px}
  .home-assurance-photos figure:last-child{height:390px}
  .home-environment-heading{align-items:flex-start;flex-direction:column}
  .home-environment-heading p{text-align:left}
  .home-insight-card,.home-insight-featured{grid-template-columns:1fr!important;grid-template-rows:300px auto}
  .home-insight-featured{grid-template-rows:400px auto}
  .home-insight-featured .blog-image{min-height:0}
  .premium-close-card{min-height:620px!important;border-radius:24px!important}
  .premium-close-copy h2{font-size:clamp(3rem,13vw,4.7rem)!important}
}
@media (max-width:520px){
  .home-hero-advanced .hero-proof-bar{grid-template-columns:1fr}
  .home-hero-advanced .hero-proof-bar>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
  .home-hero-advanced .hero-proof-bar>div:last-child{border-bottom:0!important}
  .hero-property-preview{grid-template-columns:1fr}
  .hero-property-preview a{height:110px}
  .home-assurance-photos{grid-template-columns:1fr}
  .home-assurance-photos figure,.home-assurance-photos figure:last-child{height:420px}
  .premium-contact-line{display:grid}
}

/* Refined compact homepage scale */
.home-page .section{padding-top:clamp(64px,7vw,104px);padding-bottom:clamp(64px,7vw,104px)}
.home-page .section-heading{margin-bottom:clamp(28px,4vw,44px)}
.home-page .section-heading h2{max-width:820px;font-size:clamp(2.25rem,4vw,4.35rem);line-height:.98;letter-spacing:-.05em}

.home-hero-advanced{min-height:clamp(700px,calc(100svh - 40px),860px)}
.home-hero-advanced .photo-hero-content{grid-template-columns:minmax(0,1.12fr) minmax(340px,.66fr);gap:clamp(26px,4vw,58px);padding-top:clamp(92px,12vh,140px);padding-bottom:30px}
.home-hero-advanced .photo-hero-copy{max-width:790px;padding:clamp(27px,3.5vw,43px);border-radius:27px}
.home-hero-advanced .photo-hero-copy h1{max-width:730px;margin:11px 0 20px;font-size:clamp(3.05rem,4.75vw,5.05rem);line-height:.93;letter-spacing:-.058em}
.home-hero-advanced .hero-command{padding:clamp(22px,2.5vw,29px);border-radius:24px}
.home-hero-advanced .hero-command h2{margin:38px 0 13px;font-size:clamp(1.75rem,2.45vw,2.45rem);line-height:.98;letter-spacing:-.045em}
.home-hero-advanced .hero-command-grid>div{min-height:88px;padding:13px 12px}
.hero-property-preview a{height:78px}
.home-hero-advanced .hero-proof-bar>div{min-height:86px;padding:18px 23px}

.home-pathways-visual-grid{gap:16px!important}
.home-pathways-visual-grid .home-pathway-visual,
.home-pathways-visual-grid .home-pathway-visual:last-child{display:grid;grid-template-rows:230px auto;grid-column:auto;min-height:0;padding:0!important;border:1px solid rgba(7,19,31,.09)!important;border-radius:23px!important;color:#172633!important;background:#fff!important;box-shadow:0 20px 58px rgba(7,19,31,.09)!important}
.home-pathway-visual>img{position:relative;inset:auto;display:block;width:100%;height:230px;object-fit:cover}
.home-pathway-shade{inset:0 0 auto;height:230px;background:linear-gradient(to top,rgba(4,14,23,.42),rgba(4,14,23,.03) 62%)}
.home-pathway-number{top:15px;left:15px;width:40px;height:40px}
.home-pathway-visual>div{position:relative;right:auto;bottom:auto;left:auto;display:flex;flex-direction:column;padding:23px 24px 25px;background:#fff}
.home-pathway-visual small{color:#008b79;font-size:.62rem}
.home-pathway-visual h2{max-width:360px;margin:9px 0 11px!important;color:#172633;font-size:clamp(1.55rem,2.25vw,2rem)!important;line-height:1.05;letter-spacing:-.042em}
.home-pathway-visual p{color:#60707d!important;font-size:.84rem;line-height:1.62}
.home-pathway-visual strong{margin-top:17px!important;color:#795608!important;font-size:.7rem!important}

.home-service-mosaic{gap:16px!important}
.home-service-mosaic .photo-service-card{border-radius:21px!important}
.home-service-mosaic .photo-service-media{height:235px!important}
.home-service-mosaic .photo-service-card:nth-child(-n+2) .photo-service-media{height:320px!important}
.home-service-mosaic .photo-service-copy{padding:21px 22px 23px!important}
.home-service-mosaic .photo-service-card:first-child .photo-service-copy{gap:22px}
.home-service-mosaic .photo-service-card:first-child .photo-service-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1}

.property-showcase-heading{gap:clamp(32px,6vw,80px);margin-bottom:34px}
.property-showcase-heading h2{max-width:760px;font-size:clamp(2.5rem,4.35vw,4.7rem);line-height:.95;letter-spacing:-.055em}
.property-editorial-grid{grid-template-rows:repeat(2,minmax(280px,1fr));gap:15px}
.property-visual-card{grid-template-rows:minmax(205px,1fr) auto;border-radius:23px}
.property-visual-featured .property-visual-media{min-height:470px}
.property-visual-copy{padding:21px 23px 24px}
.property-visual-copy h3{font-size:clamp(1.45rem,2.35vw,2.25rem)}
.property-visual-featured .property-visual-copy{padding:26px 28px 29px}
.property-visual-featured .property-visual-copy h3{font-size:clamp(2.15rem,3.8vw,3.75rem)}
.property-image-ribbon{gap:10px;margin-top:15px}
.property-image-ribbon a{height:155px;border-radius:16px}
.property-showcase-footer{margin-top:23px;padding-top:21px}

.home-process-heading{gap:clamp(32px,6vw,80px);margin-bottom:36px}
.home-process-heading h2{max-width:760px;font-size:clamp(2.55rem,4.45vw,4.75rem);line-height:.94;letter-spacing:-.055em}
.home-process-layout{grid-template-columns:minmax(310px,.7fr) minmax(0,1.3fr);gap:clamp(28px,4vw,52px)}
.home-process-visual{min-height:560px;border-radius:24px}
.home-process-visual figcaption{right:15px;bottom:15px;left:15px;padding:16px}
.home-process-timeline article{grid-template-columns:54px 1fr;gap:17px;padding:20px 0}
.home-process-timeline article>span{width:46px;height:46px;border-radius:13px}
.home-process-timeline h3{font-size:clamp(1.25rem,1.8vw,1.72rem)}

.operational-story-grid{min-height:0!important}
.operational-story .story-photo{height:560px!important;min-height:0!important}
.operational-story .story-photo img{width:100%;height:100%;object-fit:cover}
.operational-story .story-copy h2{font-size:clamp(2.45rem,4.2vw,4.45rem)!important;line-height:.97!important;letter-spacing:-.052em!important}
.operational-story .story-principles>div{padding-top:17px!important;padding-bottom:17px!important}

.home-assurance-grid{grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:clamp(36px,6vw,82px);margin-bottom:54px}
.home-assurance-copy h2{max-width:650px;font-size:clamp(2.5rem,4.25vw,4.5rem);line-height:.95;letter-spacing:-.055em}
.home-assurance-copy>p:not(.eyebrow){font-size:1rem;line-height:1.72}
.home-assurance-points{margin-top:24px}
.home-assurance-points span{padding:12px 14px}
.home-assurance-photos{gap:12px}
.home-assurance-photos figure{height:460px;border-radius:23px}
.home-assurance-photos figure:last-child{height:365px}

.home-team-heading{gap:clamp(34px,6vw,82px);margin-bottom:34px}
.home-team-heading h2{max-width:760px;font-size:clamp(2.5rem,4.3vw,4.55rem);line-height:.97;letter-spacing:-.052em}
.home-team-editorial{grid-template-columns:minmax(330px,.78fr) minmax(0,1.4fr);gap:15px}
.home-team-lead{grid-template-rows:430px auto;border-radius:23px}
.home-team-lead>div{padding:23px 25px 26px}
.home-team-lead h3{font-size:clamp(2rem,3.2vw,3.25rem);line-height:.98}
.home-team-grid{gap:15px}
.home-team-card{grid-template-rows:260px auto;border-radius:20px}
.home-team-card>div{padding:18px 19px 20px}
.home-team-card h3{font-size:clamp(1.35rem,1.9vw,1.75rem)}

.home-insight-grid{gap:15px!important}
.home-insight-card{grid-template-columns:190px 1fr;border-radius:21px!important}
.home-insight-featured{grid-template-rows:minmax(360px,.9fr) auto}
.home-insight-card .blog-image{min-height:235px}
.home-insight-featured .blog-image{min-height:390px}
.home-insight-card .blog-card-body{padding:21px!important}
.home-insight-featured .blog-card-body{padding:27px!important}
.home-insight-featured h2{font-size:clamp(1.85rem,3vw,3rem)!important;line-height:1.02!important}
.home-insight-card:not(.home-insight-featured) h2{font-size:clamp(1.15rem,1.6vw,1.48rem)!important}

.premium-close-card{min-height:500px!important;border-radius:28px!important}
.premium-close-copy{max-width:690px!important}
.premium-close-copy h2{font-size:clamp(2.7rem,4.5vw,4.65rem)!important;line-height:.94!important;letter-spacing:-.055em!important}

@media (max-width:1180px){
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(3rem,4.9vw,4.65rem)}
  .home-pathways-visual-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .property-visual-featured .property-visual-media{min-height:440px}
  .home-team-lead{grid-template-columns:minmax(280px,.78fr) minmax(0,1fr);grid-template-rows:none}
  .home-team-lead-image{min-height:440px}
  .home-insight-card{grid-template-columns:1fr!important;grid-template-rows:220px auto}
}

@media (max-width:980px){
  .home-hero-advanced .photo-hero-content{grid-template-columns:1fr;padding-top:78px}
  .home-hero-advanced .hero-command{max-width:720px}
  .home-pathways-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .home-pathways-visual-grid .home-pathway-visual:last-child{grid-column:1/-1;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);grid-template-rows:230px}
  .home-pathways-visual-grid .home-pathway-visual:last-child>img{height:230px}
  .home-pathways-visual-grid .home-pathway-visual:last-child .home-pathway-shade{right:auto;width:42%;height:230px}
  .home-process-visual{min-height:500px}
  .home-assurance-grid{grid-template-columns:1fr}
  .home-assurance-photos{max-width:720px}
  .home-team-lead{grid-template-columns:minmax(300px,.8fr) minmax(0,1fr);grid-template-rows:none}
  .home-team-lead-image{min-height:420px}
  .home-insight-card{grid-template-columns:220px 1fr!important;grid-template-rows:none}
  .home-insight-featured{grid-template-columns:1fr!important;grid-template-rows:360px auto}
}

@media (max-width:760px){
  .home-page .section{padding-top:58px;padding-bottom:58px}
  .home-page .section-heading h2{font-size:clamp(2.15rem,9.5vw,3.25rem)}
  .home-hero-advanced .photo-hero-content{padding-top:52px}
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(2.75rem,12vw,4rem);line-height:.94}
  .home-pathways-visual-grid{grid-template-columns:1fr!important}
  .home-pathways-visual-grid .home-pathway-visual,
  .home-pathways-visual-grid .home-pathway-visual:last-child{grid-template-columns:1fr;grid-template-rows:210px auto;grid-column:auto;min-height:0}
  .home-pathway-visual>img,.home-pathways-visual-grid .home-pathway-visual:last-child>img{height:210px}
  .home-pathway-shade,.home-pathways-visual-grid .home-pathway-visual:last-child .home-pathway-shade{right:0;width:auto;height:210px}
  .home-pathway-visual h2{font-size:clamp(1.5rem,7vw,1.85rem)!important}
  .home-service-mosaic .photo-service-media,.home-service-mosaic .photo-service-card:nth-child(-n+2) .photo-service-media{height:245px!important}
  .property-showcase-heading h2,.home-team-heading h2,.home-process-heading h2,.home-assurance-copy h2{font-size:clamp(2.35rem,10.5vw,3.45rem)}
  .property-visual-media,.property-visual-featured .property-visual-media{min-height:340px}
  .property-image-ribbon a{height:145px}
  .home-process-visual{min-height:420px}
  .operational-story .story-photo{height:400px!important}
  .home-assurance-photos figure{height:350px}
  .home-assurance-photos figure:last-child{height:300px}
  .home-team-lead{grid-template-columns:1fr;grid-template-rows:390px auto}
  .home-team-lead-image{min-height:0}
  .home-team-card{grid-template-rows:300px auto}
  .home-insight-card,.home-insight-featured{grid-template-columns:1fr!important;grid-template-rows:230px auto}
  .home-insight-featured{grid-template-rows:300px auto}
  .premium-close-card{min-height:450px!important}
  .premium-close-copy h2{font-size:clamp(2.55rem,10.5vw,3.6rem)!important}
}

@media (max-width:520px){
  .home-pathway-visual>div{padding:21px 20px 23px}
  .home-assurance-photos{grid-template-columns:1fr}
  .home-assurance-photos figure,.home-assurance-photos figure:last-child{height:300px}
  .home-team-lead{grid-template-rows:340px auto}
  .home-team-card{grid-template-rows:280px auto}
}

/* Final proportion pass after live visual review */
.home-page .section-heading h2{font-size:clamp(2.15rem,3.35vw,3.8rem)}
.home-hero-advanced .photo-hero-copy h1{font-size:clamp(2.95rem,4.2vw,4.55rem)}
.home-pathways-visual-grid .home-pathway-visual,
.home-pathways-visual-grid .home-pathway-visual:last-child{grid-template-rows:205px auto}
.home-pathway-visual>img,.home-pathway-shade{height:205px}
.home-pathway-visual h2{font-size:clamp(1.4rem,1.9vw,1.75rem)!important}
.property-showcase-heading h2,.home-process-heading h2,.home-assurance-copy h2,.home-team-heading h2{font-size:clamp(2.4rem,3.65vw,4.1rem)}
.premium-close-copy h2{font-size:clamp(2.55rem,3.8vw,4.1rem)!important}

@media (min-width:1101px){
  .property-editorial-grid{grid-template-rows:repeat(2,350px)}
  .property-visual-featured{height:715px;grid-template-rows:470px 1fr}
  .property-visual-featured .property-visual-media{height:470px;min-height:0}
  .property-editorial-grid .property-visual-card:not(.property-visual-featured){grid-template-columns:minmax(175px,.82fr) minmax(0,1.18fr);grid-template-rows:1fr}
  .property-editorial-grid .property-visual-card:not(.property-visual-featured) .property-visual-media{height:100%;min-height:0}
  .property-editorial-grid .property-visual-card:not(.property-visual-featured) .property-visual-copy{display:flex;flex-direction:column;justify-content:center}
}

@media (max-width:980px){
  .home-pathways-visual-grid .home-pathway-visual:last-child{grid-template-rows:205px}
  .home-pathways-visual-grid .home-pathway-visual:last-child>img,
  .home-pathways-visual-grid .home-pathway-visual:last-child .home-pathway-shade{height:205px}
}

@media (max-width:760px){
  .home-page .section-heading h2{font-size:clamp(2.05rem,8.8vw,3rem)}
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(2.65rem,11vw,3.65rem)}
  .home-pathways-visual-grid .home-pathway-visual,
  .home-pathways-visual-grid .home-pathway-visual:last-child{grid-template-rows:195px auto}
  .home-pathway-visual>img,.home-pathway-shade,
  .home-pathways-visual-grid .home-pathway-visual:last-child>img,
  .home-pathways-visual-grid .home-pathway-visual:last-child .home-pathway-shade{height:195px}
  .property-showcase-heading h2,.home-team-heading h2,.home-process-heading h2,.home-assurance-copy h2{font-size:clamp(2.2rem,9.5vw,3.1rem)}
  .premium-close-copy h2{font-size:clamp(2.35rem,9.5vw,3.25rem)!important}
}

/* Header service directory and featured leadership portrait */
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown::after{content:"";position:absolute;top:100%;right:0;left:0;height:14px}
.nav-dropdown summary{position:relative;display:flex;align-items:center;gap:5px;padding:12px 9px;border-radius:10px;color:#1b2935;font-size:.78rem;font-weight:760;line-height:1.1;white-space:nowrap;list-style:none;cursor:pointer;transition:color .16s ease,background .16s ease}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary::after{content:"";position:absolute;right:10px;bottom:5px;left:10px;height:2px;transform:scaleX(0);transform-origin:center;background:var(--ffm-gold);transition:transform .16s ease}
.nav-dropdown:hover summary,.nav-dropdown:focus-within summary,.nav-dropdown.is-active summary{color:#07131f;background:rgba(226,173,47,.1)}
.nav-dropdown:hover summary::after,.nav-dropdown:focus-within summary::after,.nav-dropdown.is-active summary::after{transform:scaleX(1)}
.nav-dropdown-caret{display:inline-block;color:#9b6e0b;font-size:.8rem;transition:transform .18s ease}
.nav-dropdown[open] .nav-dropdown-caret{transform:rotate(180deg)}
.nav-dropdown-menu{position:absolute;top:calc(100% + 13px);left:50%;z-index:125;display:grid;width:390px;padding:11px;transform:translate(-50%,10px);border:1px solid rgba(7,19,31,.11);border-radius:19px;background:rgba(255,255,255,.985);box-shadow:0 28px 75px rgba(7,19,31,.2);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown[open] .nav-dropdown-menu{transform:translate(-50%,0);opacity:1;visibility:visible;pointer-events:auto}
.primary-nav .nav-dropdown-menu a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:54px;padding:10px 12px!important;border-radius:12px;color:#22313d!important;background:transparent;font-size:.75rem!important;line-height:1.25;white-space:normal;transition:background .16s ease,transform .16s ease}
.primary-nav .nav-dropdown-menu a::after{display:none!important}
.primary-nav .nav-dropdown-menu a:hover,.primary-nav .nav-dropdown-menu a:focus-visible,.primary-nav .nav-dropdown-menu a.is-active{transform:translateX(3px);color:#07131f!important;background:#f7f2e4!important}
.nav-dropdown-menu a>span{display:grid;grid-template-columns:25px 1fr;align-items:center;gap:5px 8px;min-width:0}
.nav-dropdown-menu a b{grid-row:1/3;color:#a67409;font-size:.59rem;letter-spacing:.06em}
.nav-dropdown-menu a strong{font-size:.73rem;line-height:1.28}
.nav-dropdown-menu a i{flex:0 0 auto;color:#a67409;font-size:.78rem;font-style:normal}
.nav-dropdown-menu .nav-dropdown-all{min-height:65px!important;margin-bottom:6px;border-bottom:1px solid var(--ffm-line);border-radius:12px 12px 8px 8px!important;background:#f5f8f7!important}
.nav-dropdown-menu .nav-dropdown-all>span{display:flex;align-items:flex-start;flex-direction:column;gap:3px}
.nav-dropdown-menu .nav-dropdown-all strong{font-size:.8rem}
.nav-dropdown-menu .nav-dropdown-all small{color:#6c7882;font-size:.61rem;line-height:1.35}

@media (min-width:1181px){
  .home-team-lead{grid-template-rows:minmax(610px,1fr) auto}
}

@media (max-width:1180px){
  .nav-dropdown summary{padding-right:7px;padding-left:7px;font-size:.72rem}
}

@media (max-width:980px){
  .nav-dropdown{display:block;width:100%}
  .nav-dropdown::after{display:none}
  .nav-dropdown summary{justify-content:space-between;width:100%;padding:14px!important;font-size:.86rem}
  .nav-dropdown summary::after{right:14px;left:14px}
  .nav-dropdown-menu{position:static;display:none;width:100%;padding:8px;margin:5px 0 8px;transform:none!important;border-radius:15px;background:#f5f7f6;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;backdrop-filter:none;-webkit-backdrop-filter:none}
  .nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{display:none}
  .nav-dropdown[open] .nav-dropdown-menu{display:grid}
  .primary-nav .nav-dropdown-menu a{min-height:51px;padding:9px 11px!important;font-size:.78rem!important}
  .nav-dropdown-menu .nav-dropdown-all{min-height:60px!important}
}

/* Managed-property operating scope */
.directory-detail-main{position:relative;overflow:clip;background:linear-gradient(145deg,#f4f8f7 0%,#eef4f3 58%,#f7f4eb 100%)}
.directory-detail-main::before{content:"";position:absolute;top:80px;right:-170px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(32,188,156,.14),rgba(32,188,156,0) 70%);pointer-events:none}
.project-operations-layout{position:relative;display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)!important;align-items:start;gap:clamp(25px,3vw,44px)!important}
.project-operations-content{display:grid;gap:24px;min-width:0}
.project-operations-block{padding:clamp(24px,3vw,38px);border:1px solid rgba(18,44,56,.11);border-radius:28px;background:rgba(255,255,255,.82);box-shadow:0 22px 55px rgba(18,44,56,.07);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.project-operations-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(210px,.65fr);align-items:end;gap:24px;margin-bottom:25px}
.project-operations-heading .eyebrow{margin:0 0 9px;color:#159f84;font-size:.69rem;letter-spacing:.14em}
.project-operations-heading h2{max-width:580px;margin:0;color:#102231;font-size:clamp(2rem,3vw,3rem);line-height:1.02;letter-spacing:-.045em}
.project-operations-heading>p{max-width:320px;margin:0;color:#62727f;font-size:.9rem;line-height:1.65}
.project-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.project-scope-card{position:relative;display:grid;grid-template-columns:43px 1fr;align-items:center;gap:15px;min-height:104px;padding:17px 18px;overflow:hidden;border:1px solid #dce6e3;border-radius:18px;background:#fff;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.project-scope-card::after{content:"";position:absolute;right:-28px;bottom:-34px;width:86px;height:86px;border-radius:50%;background:rgba(31,183,151,.08)}
.project-scope-card:hover{transform:translateY(-3px);border-color:rgba(31,183,151,.45);box-shadow:0 14px 30px rgba(15,65,57,.09)}
.project-card-number{position:relative;z-index:1;display:grid;width:43px;height:43px;place-items:center;border-radius:14px;background:#e5f7f2;color:#0a806a;font-size:.71rem;font-weight:850;letter-spacing:.05em}
.project-scope-card div{position:relative;z-index:1}
.project-scope-card small,.project-system-card small{display:block;margin-bottom:6px;color:#8b98a1;font-size:.58rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.project-scope-card h3,.project-system-card h3{margin:0;color:#142735;font-size:clamp(.91rem,1.1vw,1.02rem);font-weight:720;line-height:1.38;letter-spacing:-.01em}
.project-systems-block{border-color:rgba(255,255,255,.1);background:linear-gradient(145deg,#071722,#0b2931);box-shadow:0 26px 65px rgba(7,23,34,.18)}
.project-systems-block .project-operations-heading h2{color:#fff}
.project-systems-block .project-operations-heading>p{color:#a8bac1}
.project-systems-block .project-operations-heading .eyebrow{color:#4cdec1}
.project-systems-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.project-system-card{position:relative;display:grid;grid-template-columns:39px minmax(0,1fr) 25px;align-items:center;gap:13px;min-height:101px;padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(255,255,255,.055);transition:background .2s ease,border-color .2s ease,transform .2s ease}
.project-system-card:hover{transform:translateY(-2px);border-color:rgba(76,222,193,.35);background:rgba(255,255,255,.09)}
.project-system-card .project-card-number{width:39px;height:39px;border:1px solid rgba(76,222,193,.24);border-radius:50%;background:rgba(76,222,193,.09);color:#65e4ca}
.project-system-card small{color:#77919a}
.project-system-card h3{color:#f7fbfa;font-weight:650}
.project-system-mark{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:rgba(226,173,47,.13);color:#f2c458;font-size:.7rem}
.project-related-services{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1fr);align-items:start;gap:30px;padding:27px clamp(24px,3vw,34px);border:1px solid rgba(18,44,56,.11);border-radius:24px;background:#fff}
.project-related-services .eyebrow{margin:0 0 7px;font-size:.65rem}
.project-related-services h2{margin:0;color:#102231;font-size:clamp(1.5rem,2.15vw,2.05rem);line-height:1.08;letter-spacing:-.035em}
.project-service-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;margin:0!important}
.directory-detail-main .project-service-links a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:10px 13px!important;border:1px solid #e1e8e6!important;border-radius:12px!important;background:#f7faf9!important;color:#1b3240!important;font-size:.74rem!important;font-weight:700!important}
.directory-detail-main .project-service-links a:hover{transform:translateX(2px);border-color:rgba(31,183,151,.45)!important;color:#087c67!important}
.project-service-links a span{color:#b27c06}
.project-detail-extras{padding:27px clamp(24px,3vw,34px);border:1px solid rgba(18,44,56,.1);border-radius:24px;background:rgba(255,255,255,.7)}
.project-detail-extras h2{margin:0 0 18px;color:#102231;font-size:clamp(1.6rem,2.1vw,2rem)}
.project-operations-aside{position:sticky;top:112px;display:grid;gap:18px;min-width:0}
.project-operations-visual{position:relative;height:clamp(530px,52vw,650px)!important;min-height:0!important;margin:0;overflow:hidden;border:1px solid rgba(18,44,56,.18)!important;border-radius:28px!important;background:#0b1f2a;box-shadow:0 25px 55px rgba(17,41,52,.17)}
.project-operations-visual::after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(180deg,rgba(5,20,29,0),rgba(5,20,29,.82))}
.project-operations-visual img{width:100%;height:100%!important;object-fit:cover;object-position:center;transition:transform .65s ease}
.project-operations-visual:hover img{transform:scale(1.025)}
.project-visual-kicker{position:absolute;z-index:2;top:18px;left:18px;padding:9px 12px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(7,23,34,.72);color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.project-operations-visual figcaption{position:absolute;z-index:2;right:20px;bottom:20px;left:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:17px 18px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:rgba(7,23,34,.66);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.project-operations-visual figcaption span{font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:790;line-height:1.15}
.project-operations-visual figcaption small{max-width:125px;color:#bed0d5;font-size:.68rem;line-height:1.35;text-align:right}
.project-operations-aside .detail-cta{padding:25px;border-radius:23px!important;background:#fff!important}
.project-operations-aside .detail-cta h2{font-size:clamp(1.55rem,2vw,2rem);line-height:1.08}
.project-operations-content .scope-notice{margin-top:0}

@media (max-width:1080px){
  .project-operations-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)!important;gap:22px!important}
  .project-operations-heading{grid-template-columns:1fr;gap:10px}
  .project-operations-heading>p{max-width:620px}
  .project-scope-grid,.project-systems-grid{grid-template-columns:1fr}
  .project-related-services{grid-template-columns:1fr;gap:18px}
  .project-operations-visual{height:580px!important}
}

@media (max-width:800px){
  .project-operations-layout{grid-template-columns:1fr!important}
  .project-operations-aside{position:static;grid-template-columns:minmax(0,1.1fr) minmax(270px,.9fr);align-items:stretch}
  .project-operations-visual{height:470px!important}
  .project-operations-aside .detail-cta{display:flex;align-items:flex-start;justify-content:center;flex-direction:column}
}

@media (max-width:620px){
  .project-operations-block{padding:21px 17px;border-radius:22px}
  .project-operations-heading h2{font-size:clamp(1.9rem,9vw,2.5rem)}
  .project-scope-grid,.project-systems-grid,.project-service-links{grid-template-columns:1fr!important}
  .project-scope-card{min-height:92px;padding:14px}
  .project-system-card{min-height:94px;padding:13px}
  .project-related-services,.project-detail-extras{padding:22px 18px;border-radius:21px}
  .project-operations-aside{grid-template-columns:1fr}
  .project-operations-visual{height:410px!important;border-radius:22px!important}
  .project-operations-visual figcaption{right:14px;bottom:14px;left:14px;padding:14px}
  .project-operations-visual figcaption small{max-width:100px}
}

/* Unified interior-page redesign */
.internal-page .page-hero{position:relative;min-height:0!important;padding:clamp(58px,7vw,88px) 0 clamp(62px,7vw,92px);isolation:isolate;color:#fff;background:radial-gradient(circle at 82% 12%,rgba(31,180,157,.2),transparent 30%),radial-gradient(circle at 10% 88%,rgba(226,173,47,.1),transparent 26%),linear-gradient(145deg,#06141f,#071d28 62%,#092a30);overflow:hidden}
.internal-page .page-hero::before{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:68px 68px;mask-image:linear-gradient(to bottom,black,transparent 90%)}
.internal-page .page-hero::after{content:"";position:absolute;z-index:-1;right:-10vw;bottom:-20vw;width:45vw;height:45vw;border:1px solid rgba(73,218,193,.1);border-radius:50%;box-shadow:0 0 0 7vw rgba(73,218,193,.022),0 0 0 14vw rgba(73,218,193,.015)}
.internal-page .page-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(350px,.72fr);align-items:center;gap:clamp(40px,7vw,104px)}
.internal-page .page-hero-copy{max-width:780px}
.internal-page .breadcrumbs{margin-bottom:27px}
.internal-page .breadcrumbs ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}
.internal-page .breadcrumbs li{color:rgba(255,255,255,.48);font-size:.68rem}
.internal-page .breadcrumbs li+li::before{content:"/";margin-right:8px;color:rgba(226,173,47,.55)}
.internal-page .breadcrumbs a{color:rgba(255,255,255,.62)}
.internal-page .page-hero-copy>.eyebrow{margin:0 0 18px;color:#48d5bd;font-size:.68rem;letter-spacing:.15em}
.internal-page .page-hero-copy h1{max-width:820px;margin:0;color:#fff;font-size:clamp(2.85rem,4.25vw,4rem);line-height:.98;letter-spacing:-.052em;text-wrap:balance}
.internal-page .page-hero-lead{max-width:690px;margin:22px 0 0;color:rgba(255,255,255,.68);font-size:clamp(.98rem,1.4vw,1.1rem);line-height:1.75}
.internal-page .page-hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.internal-page .page-hero-actions .button{min-height:48px;padding:13px 20px}
.internal-page .page-hero-facts{gap:8px;margin-top:22px}
.internal-page .page-hero-facts span{min-height:32px;padding:6px 10px;border-color:rgba(255,255,255,.13);font-size:.66rem}
.internal-page .page-hero-visual{position:relative;height:clamp(390px,36vw,470px);min-height:0!important;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.16)!important;border-radius:32px!important;background:#102732;box-shadow:0 32px 80px rgba(0,0,0,.28);transform:rotate(.7deg)}
.internal-page .page-hero-visual::after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(180deg,transparent,rgba(4,15,22,.72));pointer-events:none}
.internal-page .page-hero-visual img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1)}
.internal-page .page-hero-visual:hover img{transform:scale(1.035)}
.page-hero-visual-badge{position:absolute;z-index:3;top:18px;left:18px;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:8px 12px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#fff;background:rgba(5,20,28,.7);font-size:.6rem;font-weight:820;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.page-hero-visual-badge i{display:block;width:7px;height:7px;border-radius:50%;background:#43d7bd;box-shadow:0 0 0 4px rgba(67,215,189,.12)}
.internal-page .page-hero-visual figcaption{position:absolute;z-index:3;right:18px;bottom:18px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-color:rgba(255,255,255,.17);border-radius:15px;color:#fff;background:rgba(5,20,28,.7);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}
.internal-page .page-hero-visual figcaption span{font-size:.68rem;font-weight:790;letter-spacing:.035em}
.internal-page .page-hero-visual figcaption small{color:#b7cad0;font-size:.62rem}
.interior-route-bar{position:relative;z-index:8;border-bottom:1px solid rgba(7,19,31,.09);background:rgba(255,255,255,.97);box-shadow:0 12px 35px rgba(7,19,31,.055)}
.interior-route-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;min-height:66px}
.interior-route-inner>span{color:#8a650f;font-size:.63rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.interior-route-inner>div{display:flex;align-items:center;gap:4px}
.interior-route-inner>div a{padding:9px 11px;border-radius:10px;color:#596874;font-size:.7rem;font-weight:720;white-space:nowrap}
.interior-route-inner>div a:hover,.interior-route-inner>div a:focus-visible,.interior-route-inner>div a.is-active{color:#102330;background:#f6f0de}
.interior-route-quote{display:inline-flex;align-items:center;gap:8px;color:#0c7f6b;font-size:.7rem;font-weight:820;white-space:nowrap}
.interior-route-quote span{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;color:#fff;background:#159f85}

.internal-page main>.section:not(.page-hero){padding-top:clamp(68px,7vw,96px);padding-bottom:clamp(68px,7vw,96px)}
.internal-page .section-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(270px,.65fr);align-items:end;gap:clamp(32px,7vw,90px);margin-bottom:38px}
.internal-page .section-heading .eyebrow{margin:0 0 10px;color:#129b82;font-size:.66rem;letter-spacing:.14em}
.internal-page .section-heading h2{max-width:760px;margin:0;color:#102331;font-size:clamp(2.25rem,3.8vw,3.7rem);line-height:1;letter-spacing:-.05em;text-wrap:balance}
.internal-page .section-heading>p{max-width:500px;margin:0;color:#687783;font-size:.92rem;line-height:1.72}
.internal-page .soft-section{background:linear-gradient(180deg,#f3f7f6,#f8f6ef)}
.internal-page .glass-card,.internal-page .glass-panel{border-color:rgba(14,38,51,.11)}
.internal-page .process-section{position:relative;background:radial-gradient(circle at 85% 0,rgba(42,198,173,.18),transparent 31%),linear-gradient(145deg,#071722,#0b2b32);overflow:hidden}
.internal-page .process-section::after{content:"";position:absolute;right:-100px;bottom:-180px;width:430px;height:430px;border:1px solid rgba(255,255,255,.06);border-radius:50%}
.internal-page .process-grid{position:relative;z-index:1;gap:12px}
.internal-page .process-card{min-height:225px;padding:25px;border-radius:20px}
.internal-page .process-card h3{margin:42px 0 10px;font-size:1.16rem}
.internal-page .process-card p{font-size:.83rem;line-height:1.68}
.internal-page .related-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.internal-page .related-link-card{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:82px;padding:18px 20px;border:1px solid rgba(15,42,55,.11);border-radius:16px;color:#19303e;background:#fff;box-shadow:0 12px 35px rgba(7,19,31,.045);font-size:.8rem;font-weight:730;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.internal-page .related-link-card strong{display:grid;flex:0 0 31px;width:31px;height:31px;place-items:center;border-radius:50%;color:#8b650e;background:#fff5d8}
.internal-page .related-link-card:hover{transform:translateY(-3px);border-color:rgba(226,173,47,.48);box-shadow:0 18px 45px rgba(7,19,31,.08)}

/* About page */
.about-story-section{position:relative;background:linear-gradient(160deg,#f8faf9,#edf5f3);overflow:hidden}
.about-story-section::before{content:"";position:absolute;top:-180px;left:-140px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(48,204,176,.13),rgba(48,204,176,0) 70%)}
.about-story-layout{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);align-items:center;gap:clamp(45px,7vw,100px)}
.about-story-copy h2{max-width:650px;margin:10px 0 24px;color:#102331;font-size:clamp(2.55rem,4.4vw,4.25rem);line-height:.97;letter-spacing:-.055em}
.about-story-copy>p:not(.eyebrow){max-width:640px;margin:0 0 18px;color:#536571;line-height:1.82}
.about-story-copy .about-story-lead{color:#263b48!important;font-size:1.04rem}
.about-story-copy blockquote{padding:19px 21px;margin:27px 0;border-left:3px solid var(--ffm-gold);border-radius:0 14px 14px 0;color:#494337;background:rgba(255,255,255,.82);font-size:.91rem;font-weight:640;line-height:1.7;box-shadow:0 12px 35px rgba(7,19,31,.045)}
.about-story-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:25px}
.about-story-gallery{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(200px,.72fr);grid-template-rows:290px 320px;gap:14px;min-width:0}
.about-story-photo{position:relative;display:block;overflow:hidden;border:1px solid rgba(15,42,55,.14);border-radius:25px;background:#102733;box-shadow:0 22px 55px rgba(8,34,45,.14)}
.about-story-photo-primary{grid-row:1/3}
.about-story-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.about-story-photo:hover img{transform:scale(1.04)}
.about-story-photo::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(5,20,28,.82))}
.about-story-photo>span{position:absolute;z-index:2;right:18px;bottom:17px;left:18px;color:#fff;font-size:.87rem;font-weight:780;line-height:1.25}
.about-story-photo>span small{display:block;margin-bottom:5px;color:#53d9c2;font-size:.57rem;letter-spacing:.1em;text-transform:uppercase}
.about-leadership-card{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:stretch;overflow:hidden;border:1px solid rgba(226,173,47,.24);border-radius:22px;color:#fff;background:linear-gradient(145deg,#091b26,#11323a);box-shadow:0 18px 45px rgba(7,19,31,.14)}
.about-leadership-card>img{width:105px;height:100%;object-fit:cover;object-position:center 20%}
.about-leadership-card>span{position:relative;display:flex;justify-content:center;flex-direction:column;padding:18px}
.about-leadership-card small{margin-bottom:7px;color:#e5bb4d;font-size:.56rem;font-weight:820;letter-spacing:.09em;text-transform:uppercase}
.about-leadership-card strong{font-size:.91rem;line-height:1.35}
.about-leadership-card i{position:absolute;right:14px;bottom:14px;display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:rgba(255,255,255,.09);color:#55ddc6;font-size:.66rem;font-style:normal}
.about-story-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:42px;overflow:hidden;border:1px solid rgba(14,38,51,.11);border-radius:21px;background:#fff;box-shadow:0 18px 50px rgba(7,19,31,.06)}
.about-story-metrics>div{display:grid;align-content:center;min-height:112px;padding:22px 25px;border-right:1px solid rgba(14,38,51,.09)}
.about-story-metrics>div:last-child{border-right:0}
.about-story-metrics strong{color:#102331;font-size:1.25rem;line-height:1}
.about-story-metrics span{margin-top:8px;color:#6b7a84;font-size:.67rem;line-height:1.45}
.about-principle-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important}
.about-principle-grid article{position:relative;display:flex;flex-direction:column;min-height:300px;padding:25px!important;overflow:hidden;border-radius:21px!important;background:#fff!important;box-shadow:0 16px 45px rgba(7,19,31,.055)!important;transition:transform .2s ease,border-color .2s ease}
.about-principle-grid article:hover{transform:translateY(-5px);border-color:rgba(31,183,151,.4)}
.about-principle-grid article>span{display:grid;width:43px;height:43px;place-items:center;border-radius:14px;color:#087763;background:#e3f7f2;font-size:.68rem;font-weight:850}
.about-principle-grid article>small{margin-top:auto;color:#9a7118;font-size:.57rem;font-weight:820;letter-spacing:.1em;text-transform:uppercase}
.about-principle-grid h3{margin:9px 0 10px;font-size:1.22rem;line-height:1.2}
.about-principle-grid p{margin:0;color:#6a7882;font-size:.84rem;line-height:1.68}
.about-expectation-section{background:linear-gradient(145deg,#071722,#0a2a31);color:#fff}
.about-expectation-section .section-heading h2{color:#fff}
.about-expectation-section .section-heading>p{color:rgba(255,255,255,.62)}
.about-expectation-section .section-heading .eyebrow{color:#4cdec1}
.about-expectation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.about-expectation-grid article{position:relative;min-height:185px;padding:25px;border-color:rgba(255,255,255,.1);border-radius:19px;background:rgba(255,255,255,.055)}
.about-expectation-grid article>span{display:inline-flex;margin-bottom:35px;color:#53dbc3;font-size:.62rem;font-weight:850;letter-spacing:.08em}
.about-expectation-grid strong{color:#fff;font-size:1.08rem}
.about-expectation-grid p{color:rgba(255,255,255,.61);font-size:.83rem}

/* Services, directories, insights and contact */
.page-services .photographic-services{background:#f3f7f6}
.page-services .photo-service-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.page-services .photo-service-card{grid-column:auto!important;display:flex!important;flex-direction:column;overflow:hidden;border:1px solid rgba(15,42,55,.11)!important;border-radius:23px!important;background:#fff;box-shadow:0 18px 50px rgba(7,19,31,.065)!important}
.page-services .photo-service-card:first-child{grid-column:span 2!important}
.page-services .photo-service-media{height:255px!important;min-height:0!important}
.page-services .photo-service-card:first-child .photo-service-media{height:330px!important}
.page-services .photo-service-copy{padding:23px 24px 26px!important}
.page-services .photo-service-card:first-child .photo-service-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.65fr);align-items:end;gap:24px}
.page-services .photo-service-card:first-child .photo-service-copy h2{grid-row:1/3;margin:0;font-size:clamp(2rem,3.1vw,3.15rem)}
.page-services .photo-service-copy h2{font-size:1.42rem;line-height:1.12}
.page-services .photo-service-copy p{font-size:.83rem;line-height:1.68}
.service-selector-grid>article,.portfolio-standard-grid>article,.team-workflow-grid>article,.careers-process-grid>article,.quote-next-grid>article{border-radius:19px;box-shadow:0 14px 40px rgba(7,19,31,.045);transition:transform .2s ease,border-color .2s ease}
.service-selector-grid>article:hover,.portfolio-standard-grid>article:hover,.team-workflow-grid>article:hover,.careers-process-grid>article:hover,.quote-next-grid>article:hover{transform:translateY(-4px);border-color:rgba(31,183,151,.35)}
.directory-section,.home-insights-section,.topic-paths-section{background:linear-gradient(180deg,#f8faf9,#f1f6f4)}
.directory-card,.group-team-card,.photographic-blog-card{border-radius:23px!important;box-shadow:0 18px 52px rgba(7,19,31,.07)!important}
.directory-browser-tools{border-radius:20px!important;box-shadow:0 16px 44px rgba(7,19,31,.06)}
.photographic-blog-grid{gap:16px!important}
.photographic-blog-card .blog-image{height:250px!important}
.photographic-blog-card .blog-card-body{padding:24px!important}
.photographic-blog-card h2{font-size:1.42rem!important;line-height:1.14!important}
.topic-paths-grid>a{min-height:170px;border-radius:20px;background:linear-gradient(145deg,#fff,#f8fbfa)}
.enhanced-contact-layout,.enhanced-quote-layout{gap:clamp(30px,6vw,80px)}
.contact-information>h2,.quote-checklist>h2{max-width:650px;font-size:clamp(2.4rem,4.2vw,4rem);line-height:.98;letter-spacing:-.05em}
.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.contact-method{min-height:132px;padding:21px!important;border-radius:18px!important;background:#fff!important;box-shadow:0 13px 35px rgba(7,19,31,.05)}
.contact-community-panel{border-radius:25px!important;background:linear-gradient(145deg,#071722,#0d3036)!important;color:#fff}
.contact-community-panel h2{color:#fff}
.contact-social-grid a{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important;color:#fff!important}
.enhanced-quote-layout .quote-checklist,.enhanced-quote-layout .server-enquiry-form{border-radius:25px!important;box-shadow:0 20px 60px rgba(7,19,31,.075)}
.faq-layout,.faq-directory-layout{align-items:start;gap:clamp(30px,5vw,65px)}
.faq-item,.faq-directory-item{border-radius:16px!important;box-shadow:0 10px 32px rgba(7,19,31,.04)}
.faq-aside{position:sticky;top:112px;overflow:hidden;border-radius:24px!important;background:#fff!important;box-shadow:0 20px 60px rgba(7,19,31,.08)}
.faq-aside img{width:100%;height:280px;object-fit:cover}

/* Detail and policy pages */
.service-snapshot-section,.project-profile-intro{background:linear-gradient(180deg,#f3f8f6,#fff)}
.service-snapshot-grid,.project-profile-grid{padding:clamp(25px,4vw,42px);border:1px solid rgba(14,38,51,.1);border-radius:27px;background:#fff;box-shadow:0 20px 60px rgba(7,19,31,.06)}
.service-snapshot-grid h2,.project-profile-grid h2{font-size:clamp(2.2rem,3.8vw,3.55rem);line-height:1;letter-spacing:-.05em}
.enhanced-detail-section{background:#f3f7f6}
.enhanced-detail-section .detail-content{padding:clamp(25px,4vw,40px);border:1px solid rgba(14,38,51,.1);border-radius:26px;background:#fff;box-shadow:0 18px 50px rgba(7,19,31,.055)}
.enhanced-detail-section .detail-content>h2{margin:0 0 20px;font-size:clamp(1.8rem,2.8vw,2.55rem);line-height:1.05}
.enhanced-detail-section .detail-content>h2:not(:first-child){margin-top:40px}
.enhanced-detail-section .detail-image{height:520px;border-radius:25px!important;box-shadow:0 20px 60px rgba(7,19,31,.12)}
.enhanced-detail-section .detail-image img{width:100%;height:100%;object-fit:cover}
.enhanced-detail-section .detail-cta{padding:25px;border-radius:22px!important;background:#fff!important}
.enhanced-article-section{background:linear-gradient(180deg,#f7f9f8,#fff)}
.enhanced-article-section .article-main{padding:clamp(26px,4vw,48px);border:1px solid rgba(14,38,51,.09);border-radius:27px;background:#fff;box-shadow:0 18px 55px rgba(7,19,31,.055)}
.enhanced-article-section .article-image{height:430px;border-radius:24px!important}
.enhanced-article-section .article-image img{width:100%;height:100%;object-fit:cover}
.enhanced-policy{position:relative;padding:clamp(28px,5vw,60px)!important;border:1px solid rgba(14,38,51,.1);border-radius:28px;background:#fff;box-shadow:0 22px 65px rgba(7,19,31,.06)}
.enhanced-policy>header{border-radius:19px;background:linear-gradient(145deg,#fff7df,#fffdf7)}
.enhanced-policy .policy-index{position:sticky;top:112px;z-index:5;padding:12px;margin:0 0 40px;border:1px solid rgba(14,38,51,.09);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:0 12px 35px rgba(7,19,31,.06);backdrop-filter:blur(14px)}
.enhanced-policy>h2{scroll-margin-top:180px;font-size:clamp(1.65rem,2.6vw,2.25rem)}

@media (max-width:1100px){
  .internal-page .page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(310px,.72fr);gap:35px}
  .interior-route-inner>span{display:none}
  .interior-route-inner{grid-template-columns:minmax(0,1fr) auto}
  .about-story-layout{grid-template-columns:1fr}
  .about-story-copy{max-width:780px}
  .about-story-gallery{grid-template-rows:270px 300px}
  .about-principle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-services .photo-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .page-services .photo-service-card:first-child{grid-column:span 2!important}
  .about-expectation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:800px){
  .internal-page .page-hero{padding-top:52px}
  .internal-page .page-hero-grid{grid-template-columns:1fr}
  .internal-page .page-hero-copy h1{max-width:680px}
  .internal-page .page-hero-visual{height:390px;transform:none}
  .interior-route-inner{display:block;min-height:0;padding-top:11px;padding-bottom:11px;overflow:hidden}
  .interior-route-inner>div{overflow-x:auto;padding-bottom:3px;scrollbar-width:none}
  .interior-route-inner>div::-webkit-scrollbar{display:none}
  .interior-route-quote{display:none}
  .internal-page .section-heading{grid-template-columns:1fr;gap:14px}
  .internal-page .section-heading>p{max-width:700px}
  .about-story-gallery{grid-template-columns:minmax(0,1fr) minmax(190px,.72fr)}
  .about-story-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about-story-metrics>div:nth-child(2){border-right:0}
  .about-story-metrics>div:nth-child(-n+2){border-bottom:1px solid rgba(14,38,51,.09)}
  .contact-methods{grid-template-columns:1fr}
  .internal-page .related-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .enhanced-policy .policy-index{position:static}
}

@media (max-width:620px){
  .internal-page .page-hero{padding-top:44px;padding-bottom:55px}
  .internal-page .page-hero-copy h1{font-size:clamp(2.5rem,11vw,3.4rem)}
  .internal-page .page-hero-lead{font-size:.94rem}
  .internal-page .page-hero-visual{height:330px;border-radius:24px!important}
  .page-hero-visual-badge{top:13px;left:13px}
  .internal-page .page-hero-visual figcaption{right:13px;bottom:13px;left:13px}
  .internal-page .section-heading h2{font-size:clamp(2.05rem,9.5vw,2.75rem)}
  .about-story-copy h2{font-size:clamp(2.35rem,10vw,3.25rem)}
  .about-story-gallery{grid-template-columns:1fr;grid-template-rows:360px 230px auto}
  .about-story-photo-primary{grid-row:auto}
  .about-leadership-card{min-height:175px}
  .about-story-metrics{grid-template-columns:1fr}
  .about-story-metrics>div{min-height:90px;border-right:0;border-bottom:1px solid rgba(14,38,51,.09)}
  .about-story-metrics>div:last-child{border-bottom:0}
  .about-principle-grid,.about-expectation-grid{grid-template-columns:1fr}
  .about-principle-grid article{min-height:245px}
  .about-expectation-grid article{min-height:165px}
  .page-services .photo-service-grid{grid-template-columns:1fr!important}
  .page-services .photo-service-card:first-child{grid-column:auto!important}
  .page-services .photo-service-card:first-child .photo-service-media,.page-services .photo-service-media{height:240px!important}
  .page-services .photo-service-card:first-child .photo-service-copy{display:block}
  .page-services .photo-service-card:first-child .photo-service-copy h2{margin-bottom:12px;font-size:1.65rem}
  .internal-page .related-link-grid{grid-template-columns:1fr}
  .enhanced-detail-section .detail-image,.enhanced-article-section .article-image{height:360px}
}

/* Premium quotation workspace */
.page-quote .page-hero{padding-top:clamp(50px,6vw,76px);padding-bottom:clamp(54px,6vw,78px)}
.page-quote .page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);gap:clamp(38px,6vw,82px)}
.page-quote .page-hero-copy h1{max-width:720px;font-size:clamp(2.7rem,4vw,3.65rem)}
.page-quote .page-hero-visual{height:420px}
.page-quote .page-hero-visual::after{inset:55% 0 0;background:linear-gradient(180deg,transparent,rgba(4,15,22,.58))}
.page-quote .page-hero-visual img{filter:saturate(.94) contrast(.98)}
.page-quote .interior-route-quote{color:#102f39}

.quote-workspace-section{position:relative;background:linear-gradient(155deg,#f7faf9 0%,#edf5f3 58%,#f8f4e9 100%);overflow:hidden}
.quote-workspace-section::before{content:"";position:absolute;top:210px;right:-170px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(35,184,158,.11),rgba(35,184,158,0) 70%);pointer-events:none}
.quote-workspace-heading{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);align-items:end;gap:clamp(34px,7vw,105px);margin-bottom:30px}
.quote-workspace-heading h2{max-width:690px;margin:9px 0 0;color:#102330;font-size:clamp(2.25rem,3.8vw,3.45rem);line-height:1;letter-spacing:-.05em}
.quote-workspace-heading>p{max-width:520px;margin:0;color:#5f6f79;font-size:.91rem;line-height:1.78}
.quote-assurance-strip{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px;overflow:hidden;border:1px solid rgba(14,40,52,.1);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 16px 48px rgba(7,19,31,.055);backdrop-filter:blur(12px)}
.quote-assurance-strip>div{display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:14px;align-content:center;min-height:94px;padding:19px 24px;border-right:1px solid rgba(14,40,52,.09)}
.quote-assurance-strip>div:last-child{border-right:0}
.quote-assurance-strip span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#0e6e5f;background:#e5f6f2;font-size:.68rem;font-weight:880}
.quote-assurance-strip strong{align-self:end;color:#142a36;font-size:.84rem}
.quote-assurance-strip small{align-self:start;margin-top:3px;color:#77848c;font-size:.65rem;line-height:1.35}
.quote-workspace-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.14fr) minmax(360px,.72fr);align-items:start;gap:18px}
.quote-form-column{min-width:0}
.page-quote .server-enquiry-form{padding:clamp(27px,3.4vw,42px);border:1px solid rgba(15,42,55,.11)!important;border-radius:26px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 24px 70px rgba(7,19,31,.08)!important}
.page-quote .dynamic-form-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.55fr);align-items:end;column-gap:34px;max-width:none;margin-bottom:20px}
.page-quote .dynamic-form-heading .eyebrow{grid-column:1/3;margin:0 0 9px}
.page-quote .dynamic-form-heading h2{max-width:520px;font-size:clamp(2rem,3vw,2.65rem);line-height:1.02}
.page-quote .dynamic-form-heading>p:last-child{margin:0;color:#71808a;font-size:.72rem;line-height:1.58}
.quote-form-progress{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:12px;padding:11px 14px;margin:0 0 21px;border:1px solid rgba(24,139,119,.15);border-radius:13px;background:#eff9f6;color:#28685d}
.quote-form-progress span,.quote-form-progress small{font-size:.64rem;font-weight:760}
.quote-form-progress i{display:block;height:3px;border-radius:99px;background:linear-gradient(90deg,#22ae95,#58d2bd)}
.page-quote .dynamic-form-grid{gap:14px}
.page-quote .dynamic-form-grid label>span{font-size:.67rem;font-weight:760}
.page-quote .dynamic-form-grid input,.page-quote .dynamic-form-grid select{min-height:52px;border-radius:12px;background:#fbfcfb}
.page-quote .dynamic-form-grid textarea{min-height:150px;border-radius:14px;background:#fbfcfb}
.page-quote .dynamic-form-footer{align-items:center;margin-top:20px}
.page-quote .dynamic-form-footer p{max-width:500px;font-size:.65rem;line-height:1.5}
.page-quote .dynamic-form-footer .button{min-width:165px;min-height:48px}

.quote-brief-panel{position:sticky;top:104px;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:26px;color:#fff;background:linear-gradient(155deg,#071722,#0d2d34);box-shadow:0 25px 70px rgba(7,19,31,.17)}
.quote-brief-image{position:relative;height:285px;margin:0;overflow:hidden}
.quote-brief-image::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(5,19,27,.9))}
.quote-brief-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1)}
.quote-brief-panel:hover .quote-brief-image img{transform:scale(1.035)}
.quote-brief-image figcaption{position:absolute;z-index:2;right:20px;bottom:18px;left:20px;display:flex;align-items:end;justify-content:space-between;gap:16px;color:#fff}
.quote-brief-image figcaption span{color:#60ddc7;font-size:.58rem;font-weight:820;letter-spacing:.09em;text-transform:uppercase}
.quote-brief-image figcaption strong{max-width:180px;text-align:right;font-size:.73rem}
.quote-brief-content{padding:26px 27px 28px}
.quote-brief-content>.eyebrow{margin:0 0 8px;color:#57d8c1}
.quote-brief-content>h2{max-width:350px;margin:0;color:#fff;font-size:1.7rem;line-height:1.05;letter-spacing:-.04em}
.quote-brief-content ol{display:grid;gap:0;padding:0;margin:21px 0 0;list-style:none}
.quote-brief-content li{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:13px 0;border-top:1px solid rgba(255,255,255,.1)}
.quote-brief-content li>span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;color:#f3cf72;background:rgba(226,173,47,.12);font-size:.58rem;font-weight:850}
.quote-brief-content li strong{display:block;color:#fff;font-size:.75rem}
.quote-brief-content li p{margin:3px 0 0;color:rgba(255,255,255,.57);font-size:.66rem;line-height:1.48}
.quote-brief-content .quote-scope-note{padding:15px 16px;margin-top:6px;border-color:rgba(226,173,47,.24);background:rgba(226,173,47,.09)}
.quote-brief-content .quote-scope-note strong{color:#f3cf72;font-size:.72rem}
.quote-brief-content .quote-scope-note p{color:rgba(255,255,255,.6);font-size:.64rem;line-height:1.55}
.quote-direct-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}
.quote-direct-actions a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:43px;padding:10px 12px;border:1px solid rgba(255,255,255,.12);border-radius:11px;color:#fff;background:rgba(255,255,255,.06);font-size:.63rem;font-weight:760}
.quote-direct-actions a:first-child{color:#07231e;background:#58d7c0}

.quote-journey-section{position:relative;color:#fff;background:radial-gradient(circle at 82% 8%,rgba(42,198,173,.17),transparent 30%),linear-gradient(145deg,#06141f,#0a2931);overflow:hidden}
.quote-journey-section .section-heading h2{max-width:780px;color:#fff;font-size:clamp(2.25rem,3.8vw,3.5rem)}
.quote-journey-section .section-heading>p{color:rgba(255,255,255,.61)}
.quote-journey-section .quote-next-grid{position:relative;gap:10px}
.quote-journey-section .quote-next-grid article{position:relative;min-height:210px;padding:22px;border-color:rgba(255,255,255,.1);color:#fff;background:rgba(255,255,255,.055);box-shadow:none;overflow:hidden}
.quote-journey-section .quote-next-grid article::after{content:"";position:absolute;right:-44px;bottom:-55px;width:120px;height:120px;border:1px solid rgba(88,215,192,.13);border-radius:50%}
.quote-journey-section .quote-next-grid span{width:38px;height:38px;color:#06211c;background:#58d7c0;font-size:.65rem;font-weight:850}
.quote-journey-section .quote-next-grid h3{margin:36px 0 9px;color:#fff;font-size:1.06rem}
.quote-journey-section .quote-next-grid p{color:rgba(255,255,255,.58);font-size:.74rem;line-height:1.55}

@media (max-width:1050px){
  .page-quote .page-hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.68fr)}
  .quote-workspace-grid{grid-template-columns:1fr}
  .quote-brief-panel{position:relative;top:auto;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1fr)}
  .quote-brief-image{height:100%}
}

@media (max-width:800px){
  .page-quote .page-hero-grid,.quote-workspace-heading{grid-template-columns:1fr}
  .page-quote .page-hero-visual{height:370px}
  .quote-workspace-heading{gap:16px}
  .quote-assurance-strip{grid-template-columns:1fr}
  .quote-assurance-strip>div{min-height:82px;border-right:0;border-bottom:1px solid rgba(14,40,52,.09)}
  .quote-assurance-strip>div:last-child{border-bottom:0}
  .quote-brief-panel{grid-template-columns:1fr}
  .quote-brief-image{height:300px}
  .page-quote .dynamic-form-heading{display:block}
  .page-quote .dynamic-form-heading .eyebrow{margin-bottom:9px}
  .page-quote .dynamic-form-heading>p:last-child{margin-top:10px}
}

@media (max-width:620px){
  .page-quote .page-hero-copy h1{font-size:clamp(2.35rem,10.5vw,3rem)}
  .page-quote .page-hero-visual{height:315px}
  .quote-workspace-heading h2{font-size:clamp(2rem,9.5vw,2.65rem)}
  .quote-assurance-strip>div{padding:16px 18px}
  .page-quote .server-enquiry-form{padding:23px 17px}
  .quote-form-progress{grid-template-columns:1fr auto}
  .quote-form-progress i{grid-row:2;grid-column:1/3}
  .quote-brief-image{height:250px}
  .quote-brief-content{padding:23px 19px}
  .quote-direct-actions{grid-template-columns:1fr}
  .quote-journey-section .quote-next-grid article{min-height:175px}
}

/* Whole-site completion layer · compact, photographic and template-safe */
.internal-page [data-reveal]{opacity:1!important;transform:none!important}
.home-hero-advanced{min-height:clamp(650px,calc(100svh - 115px),760px)}
.home-hero-advanced .photo-hero-content{padding-top:clamp(72px,9vh,105px)}
.home-hero-advanced .photo-hero-copy h1{max-width:680px;font-size:clamp(2.75rem,3.65vw,4rem);line-height:.96;letter-spacing:-.052em}
.internal-page .page-hero{padding-top:clamp(48px,5.5vw,70px);padding-bottom:clamp(50px,5.7vw,74px)}
.internal-page .page-hero-grid{gap:clamp(34px,5vw,68px)}
.internal-page .page-hero-copy h1{max-width:760px;font-size:clamp(2.55rem,3.7vw,3.45rem);line-height:1.01;letter-spacing:-.047em}
.internal-page .page-hero-lead{max-width:680px;font-size:.96rem;line-height:1.72}
.internal-page .page-hero-visual{height:clamp(350px,31vw,410px);border-radius:27px!important}
.internal-page .page-hero-visual::after{inset:56% 0 0;background:linear-gradient(180deg,transparent,rgba(4,15,22,.64))}
.internal-page main>.section:not(.page-hero){padding-top:clamp(60px,6vw,82px);padding-bottom:clamp(60px,6vw,82px)}
.internal-page .section-heading{margin-bottom:32px}
.internal-page .section-heading h2{max-width:720px;font-size:clamp(2.05rem,3.3vw,3.15rem);line-height:1.02;letter-spacing:-.045em}
.internal-page .section-heading>p{font-size:.87rem;line-height:1.68}

/* Brand and partner directories */
.brand-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.directory-identity-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid rgba(14,38,51,.1);border-radius:22px;background:#fff;box-shadow:0 17px 48px rgba(7,19,31,.065);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.directory-identity-card:hover{transform:translateY(-4px);border-color:rgba(27,174,146,.36);box-shadow:0 23px 58px rgba(7,19,31,.1)}
.directory-identity-image{display:block;height:238px;overflow:hidden;background:#dfe9e7}
.directory-identity-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.directory-identity-card:hover .directory-identity-image img{transform:scale(1.04)}
.directory-identity-card>div{display:flex;min-height:240px;flex-direction:column;padding:23px}
.directory-identity-card>div>span{color:#118f79;font-size:.6rem;font-weight:820;letter-spacing:.1em;text-transform:uppercase}
.directory-identity-card h2{margin:9px 0 10px;color:#102331;font-size:1.35rem;line-height:1.12;letter-spacing:-.03em}
.directory-identity-card p{margin:0;color:#687782;font-size:.79rem;line-height:1.67}
.directory-identity-card .text-link{margin-top:auto;padding-top:18px}
.directory-standard-section{position:relative;color:#fff;background:radial-gradient(circle at 10% 15%,rgba(34,193,165,.2),transparent 31%),linear-gradient(145deg,#06151f,#0b2b32);overflow:hidden}
.directory-standard-layout{display:grid;grid-template-columns:minmax(390px,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(42px,7vw,92px)}
.directory-standard-photos{position:relative;min-height:540px}
.directory-standard-photos figure{position:absolute;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:#15313b;box-shadow:0 25px 65px rgba(0,0,0,.26)}
.directory-standard-primary{inset:0 20% 8% 0}
.directory-standard-secondary{right:0;bottom:0;width:49%;height:52%}
.directory-standard-photos img{display:block;width:100%;height:100%;object-fit:cover}
.directory-standard-photos figure::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(180deg,transparent,rgba(4,15,22,.76))}
.directory-standard-photos figcaption{position:absolute;z-index:2;right:16px;bottom:15px;left:16px;color:#fff;font-size:.68rem;font-weight:780}
.directory-standard-copy>.eyebrow{color:#4dd8bf}
.directory-standard-copy>h2{max-width:700px;margin:9px 0 20px;color:#fff;font-size:clamp(2.1rem,3.5vw,3.3rem);line-height:1;letter-spacing:-.048em}
.directory-standard-copy>p:not(.eyebrow){max-width:680px;margin:0;color:rgba(255,255,255,.64);font-size:.9rem;line-height:1.75}
.directory-standard-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:27px 0}
.directory-standard-cards>div{min-height:188px;padding:18px;border:1px solid rgba(255,255,255,.11);border-radius:17px;background:rgba(255,255,255,.055)}
.directory-standard-cards span{display:inline-grid;width:34px;height:34px;place-items:center;border-radius:10px;color:#062019;background:#54d5bd;font-size:.58rem;font-weight:850}
.directory-standard-cards strong{display:block;margin:24px 0 8px;color:#fff;font-size:.91rem}
.directory-standard-cards p{margin:0;color:rgba(255,255,255,.57);font-size:.7rem;line-height:1.57}

/* Careers */
.careers-intro-section{background:linear-gradient(160deg,#f4f8f7,#fff)}
.careers-intro-layout{display:grid;grid-template-columns:minmax(420px,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(40px,7vw,94px)}
.careers-intro-image{position:relative;height:470px;margin:0;overflow:hidden;border:1px solid rgba(14,38,51,.13);border-radius:27px;background:#17313b;box-shadow:0 25px 65px rgba(7,19,31,.15)}
.careers-intro-image::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(180deg,transparent,rgba(4,15,22,.8))}
.careers-intro-image img{display:block;width:100%;height:100%;object-fit:cover}
.careers-intro-image figcaption{position:absolute;z-index:2;right:20px;bottom:19px;left:20px;display:flex;align-items:end;justify-content:space-between;gap:15px;color:#fff}
.careers-intro-image figcaption span{color:#53d9c2;font-size:.59rem;font-weight:820;letter-spacing:.1em;text-transform:uppercase}
.careers-intro-image figcaption strong{font-size:.75rem}
.careers-intro-copy h2{max-width:660px;margin:10px 0 20px;color:#102331;font-size:clamp(2.15rem,3.7vw,3.35rem);line-height:1;letter-spacing:-.048em}
.careers-intro-copy>p:not(.eyebrow){max-width:670px;color:#61717c;font-size:.9rem;line-height:1.77}
.careers-status-card{display:flex;align-items:center;gap:14px;padding:16px 17px;margin:24px 0;border:1px solid rgba(26,170,143,.18);border-radius:16px;background:#eef9f6}
.careers-status-card i{display:block;width:10px;height:10px;border-radius:50%;background:#20b597;box-shadow:0 0 0 5px rgba(32,181,151,.12)}
.careers-status-card strong,.careers-status-card span{display:block}
.careers-status-card strong{color:#17303d;font-size:.77rem}
.careers-status-card span{margin-top:3px;color:#65757f;font-size:.69rem}
.careers-role-section{background:#f1f6f4}
.careers-role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.careers-role-grid article{overflow:hidden;border:1px solid rgba(14,38,51,.1);border-radius:20px;background:#fff;box-shadow:0 16px 44px rgba(7,19,31,.055);transition:transform .2s ease}
.careers-role-grid article:hover{transform:translateY(-4px)}
.careers-role-grid img{display:block;width:100%;height:190px;object-fit:cover}
.careers-role-grid article>div{padding:20px}
.careers-role-grid span{color:#10947c;font-size:.61rem;font-weight:840}
.careers-role-grid h3{margin:18px 0 8px;color:#102331;font-size:1.08rem}
.careers-role-grid p{margin:0;color:#687781;font-size:.75rem;line-height:1.62}
.careers-process-section{background:#fff}
.careers-safety-note{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:19px 21px;margin-top:13px;border:1px solid rgba(226,173,47,.25);border-radius:16px;background:#fff8e4}
.careers-safety-note strong{color:#795706;font-size:.82rem;white-space:nowrap}
.careers-safety-note p{max-width:830px;margin:0;color:#615849;font-size:.75rem;line-height:1.55}

/* Consistent media proportions across every detail template */
.enhanced-detail-section .detail-image{height:440px}
.enhanced-article-section .article-image{height:390px}
.project-operations-visual{height:clamp(470px,45vw,560px)!important}
.team-founder-portrait{max-height:610px;overflow:hidden}
.team-founder-portrait img{height:100%;object-fit:cover}

@media (max-width:1050px){
  .brand-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .directory-standard-layout{grid-template-columns:1fr}
  .directory-standard-photos{min-height:500px;max-width:760px;width:100%}
  .careers-intro-layout{grid-template-columns:1fr}
  .careers-intro-image{height:420px}
  .careers-role-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:800px){
  .internal-page .page-hero-copy h1{font-size:clamp(2.35rem,7vw,3rem)}
  .internal-page .page-hero-visual{height:350px}
  .directory-standard-cards{grid-template-columns:1fr}
  .directory-standard-cards>div{min-height:0}
  .careers-safety-note{display:block}
  .careers-safety-note p{margin-top:7px}
}

@media (max-width:620px){
  .home-hero-advanced{min-height:680px}
  .home-hero-advanced .photo-hero-copy h1{font-size:clamp(2.35rem,10vw,3rem)}
  .internal-page .page-hero-copy h1{font-size:clamp(2.1rem,9.6vw,2.75rem)}
  .internal-page .page-hero-visual{height:300px}
  .brand-directory-grid,.careers-role-grid{grid-template-columns:1fr}
  .directory-identity-image{height:220px}
  .directory-identity-card>div{min-height:220px}
  .directory-standard-photos{min-height:390px}
  .directory-standard-primary{inset:0 12% 14% 0}
  .directory-standard-secondary{width:51%;height:47%}
  .directory-standard-copy>h2{font-size:clamp(2rem,9vw,2.65rem)}
  .careers-intro-image{height:340px}
  .careers-role-grid img{height:220px}
  .enhanced-detail-section .detail-image,.enhanced-article-section .article-image{height:330px}
  .project-operations-visual{height:390px!important}
}


/* ==========================================================================
   FFM DAYLIGHT REDESIGN 2026
   Clean, photographic system for Home, About, Contact, Brands and Services
   ========================================================================== */

:root {
    --ffm-daylight: #f4f7f6;
    --ffm-paper: #ffffff;
    --ffm-ink: #092131;
    --ffm-muted: #5b6972;
    --ffm-line: rgba(9, 33, 49, .12);
    --ffm-gold: #e4ad27;
    --ffm-radius: 26px;
    --ffm-shadow: 0 24px 65px rgba(10, 35, 48, .11);
}

.home-hero-advanced {
    min-height: 720px;
    padding: clamp(96px, 11vw, 142px) 0 44px;
    display: flex;
    align-items: flex-end;
    background: #17384a;
    overflow: hidden;
}
.home-hero-advanced .photo-hero-background {
    object-position: 50% 54%;
    filter: saturate(.96) contrast(1.02);
}
.home-hero-advanced .photo-hero-shade {
    background:
        linear-gradient(90deg, rgba(3, 22, 34, .78) 0%, rgba(3, 22, 34, .49) 44%, rgba(3, 22, 34, .13) 78%),
        linear-gradient(0deg, rgba(3, 18, 29, .52), transparent 52%);
}
.home-hero-advanced .photo-hero-content {
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .78fr);
    gap: 24px;
    align-items: end;
}
.home-hero-advanced .photo-hero-copy,
.home-hero-advanced .hero-command,
.home-hero-advanced .hero-proof-bar {
    background: rgba(4, 25, 38, .72);
    border: 1px solid rgba(255, 255, 255, .2);
    box-shadow: 0 24px 70px rgba(1, 12, 20, .22);
    backdrop-filter: blur(18px);
}
.home-hero-advanced .photo-hero-copy {
    max-width: 760px;
    padding: clamp(28px, 4vw, 48px);
    border-radius: 30px;
}
.home-hero-advanced .photo-hero-copy h1 {
    max-width: 680px;
    font-size: clamp(2.8rem, 5.3vw, 4.6rem);
    line-height: .98;
    letter-spacing: -.055em;
}
.home-hero-advanced .photo-hero-copy > p:not(.eyebrow) {
    max-width: 640px;
    font-size: clamp(1rem, 1.45vw, 1.16rem);
    line-height: 1.65;
}
.home-hero-advanced .hero-command {
    padding: 26px;
    border-radius: 26px;
}
.home-hero-advanced .hero-command h2 {
    font-size: clamp(1.65rem, 2.5vw, 2.35rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}
.home-hero-advanced .hero-command-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}
.home-hero-advanced .hero-command-grid > div {
    min-height: 86px;
    padding: 13px;
    border-radius: 15px;
}
.home-hero-advanced .hero-property-preview img {
    width: 52px;
    height: 52px;
    object-fit: cover;
}
.home-hero-advanced .hero-proof-bar {
    margin-top: 20px;
    border-radius: 22px;
}
.home-hero-advanced .hero-proof-bar > div {
    min-height: 74px;
}

.home-pathways-section,
.photographic-services,
.home-process-section,
.home-property-showcase,
.home-assurance-section,
.home-team-showcase {
    scroll-margin-top: 120px;
}
.operational-story .story-photo {
    min-height: 0;
    aspect-ratio: 4 / 3;
}
.operational-story .story-photo img {
    height: 100%;
    object-fit: cover;
}
.premium-close-card {
    min-height: 430px;
}
.premium-close-card > img {
    object-position: 50% 46%;
}

/* Shared internal hero: shorter, cleaner and more photographic */
.internal-page .page-hero {
    padding: clamp(72px, 8vw, 108px) 0 72px;
    background:
        radial-gradient(circle at 82% 18%, rgba(227, 174, 41, .12), transparent 29%),
        linear-gradient(180deg, #f7faf9 0%, #eef3f2 100%);
}
.internal-page .page-hero-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(360px, .88fr);
    gap: clamp(34px, 6vw, 78px);
    align-items: center;
}
.internal-page .page-hero-copy h1 {
    max-width: 780px;
    font-size: clamp(2.7rem, 5vw, 4.55rem);
    line-height: 1;
    letter-spacing: -.052em;
}
.internal-page .page-hero-lead {
    max-width: 680px;
    font-size: clamp(1rem, 1.35vw, 1.16rem);
    line-height: 1.7;
}
.internal-page .page-hero-visual {
    min-height: 0;
    aspect-ratio: 4 / 3;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: var(--ffm-shadow);
}
.internal-page .page-hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.internal-page .page-hero-visual figcaption {
    background: linear-gradient(180deg, transparent, rgba(3, 22, 34, .86));
}
.internal-page .interior-route-bar {
    background: rgba(255, 255, 255, .92);
    border-block: 1px solid var(--ffm-line);
}

/* About */
.page-about-us .about-story-section {
    background: var(--ffm-paper);
}
.page-about-us .about-story-layout {
    grid-template-columns: minmax(0, .92fr) minmax(520px, 1.08fr);
    gap: clamp(44px, 7vw, 94px);
}
.page-about-us .about-story-copy h2 {
    font-size: clamp(2.25rem, 4.2vw, 3.8rem);
    line-height: 1.03;
    letter-spacing: -.045em;
}
.page-about-us .about-story-gallery {
    min-height: 620px;
}
.page-about-us .about-story-photo,
.page-about-us .about-leadership-card {
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(8, 31, 43, .14);
}
.page-about-us .about-leadership-card img {
    object-position: center;
}
.page-about-us .about-story-metrics {
    margin-top: 64px;
    border-radius: 24px;
    background: #0b2939;
}
.about-proof-gallery {
    display: grid;
    grid-template-columns: 1.25fr .78fr 1fr;
    gap: 18px;
    margin-top: 20px;
}
.about-proof-gallery figure {
    position: relative;
    min-height: 330px;
    margin: 0;
    overflow: hidden;
    border-radius: 24px;
    background: #dfe7e5;
}
.about-proof-gallery figure:nth-child(2) {
    min-height: 390px;
}
.about-proof-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.about-proof-gallery figcaption {
    position: absolute;
    inset: auto 14px 14px;
    padding: 14px 16px;
    display: grid;
    gap: 3px;
    color: #fff;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 16px;
    background: rgba(4, 25, 38, .74);
    backdrop-filter: blur(12px);
}
.about-proof-gallery figcaption span {
    color: #f3c651;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

/* Contact */
.page-contact-us .content-section {
    background: var(--ffm-daylight);
}
.page-contact-us .enhanced-contact-layout {
    grid-template-columns: minmax(0, 1.04fr) minmax(400px, .96fr);
    gap: clamp(34px, 6vw, 76px);
    align-items: start;
}
.page-contact-us .contact-information h2 {
    max-width: 680px;
    font-size: clamp(2.3rem, 4.2vw, 3.75rem);
    line-height: 1.03;
    letter-spacing: -.045em;
}
.contact-brief-points {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 22px 0 4px;
}
.contact-brief-points span {
    padding: 9px 13px;
    border: 1px solid var(--ffm-line);
    border-radius: 999px;
    background: rgba(255,255,255,.76);
    color: var(--ffm-ink);
    font-size: .8rem;
    font-weight: 750;
}
.page-contact-us .contact-methods {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.page-contact-us .contact-method {
    min-height: 148px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(9, 33, 49, .07);
}
.page-contact-us .contact-visual {
    position: sticky;
    top: 118px;
    min-height: 0;
    aspect-ratio: 4 / 3;
    border-radius: 28px;
    overflow: hidden;
}
.page-contact-us .contact-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.page-contact-us .contact-visual figcaption {
    display: grid;
    gap: 3px;
    inset: auto 16px 16px;
    padding: 15px 17px;
    border-radius: 16px;
    background: rgba(4, 25, 38, .78);
    color: #fff;
    backdrop-filter: blur(12px);
}
.page-contact-us .contact-visual figcaption span {
    color: #f3c651;
    font-size: .7rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
}
.page-contact-us .contact-community-panel,
.page-contact-us .form-container {
    margin-top: 26px;
    border-radius: 26px;
}
.page-contact-us .contact-community-panel {
    background: #0b2939;
    color: #fff;
}
.page-contact-us .contact-social-grid a {
    border-color: rgba(255,255,255,.15);
    background: rgba(255,255,255,.06);
}

/* Brands: clean category directory */
.page-brands .directory-section {
    background: var(--ffm-daylight);
}
.page-brands .directory-browser-tools {
    margin-top: 34px;
    padding: 18px;
    border: 1px solid var(--ffm-line);
    border-radius: 22px;
    background: rgba(255,255,255,.84);
}
.page-brands .brand-directory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 24px;
}
.page-brands .directory-identity-card {
    display: grid;
    grid-template-columns: minmax(220px, .86fr) 1.14fr;
    min-height: 270px;
    border: 1px solid var(--ffm-line);
    border-radius: 25px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 14px 38px rgba(9, 33, 49, .07);
}
.page-brands .directory-identity-image {
    min-height: 100%;
    border-radius: 0;
}
.page-brands .directory-identity-image img {
    width: 100%;
    height: 100%;
    min-height: 270px;
    object-fit: cover;
}
.page-brands .directory-identity-card > div:last-child {
    padding: 28px;
}
.page-brands .directory-identity-card h2 {
    font-size: clamp(1.35rem, 2vw, 1.8rem);
    line-height: 1.12;
}
.page-brands .directory-standard-layout {
    gap: clamp(44px, 7vw, 92px);
}
.page-brands .directory-standard-primary,
.page-brands .directory-standard-secondary {
    border-radius: 24px;
    overflow: hidden;
}
.page-brands .directory-standard-primary img,
.page-brands .directory-standard-secondary img {
    object-fit: cover;
}

/* Service detail category navigation and content */
.service-detail-nav {
    position: relative;
    z-index: 2;
    border-bottom: 1px solid var(--ffm-line);
    background: #fff;
}
.service-detail-nav-inner {
    display: flex;
    gap: 8px;
    padding-block: 14px;
    overflow-x: auto;
    scrollbar-width: thin;
}
.service-detail-nav a {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 14px;
    border: 1px solid var(--ffm-line);
    border-radius: 999px;
    color: var(--ffm-ink);
    background: #f7f9f8;
    font-size: .78rem;
    font-weight: 760;
    text-decoration: none;
}
.service-detail-nav a span {
    color: #9b720e;
    font-size: .68rem;
    letter-spacing: .08em;
}
.service-detail-nav a:hover,
.service-detail-nav a.is-active {
    border-color: #0b3145;
    background: #0b3145;
    color: #fff;
}
.service-detail-nav a.is-active span {
    color: #f3c651;
}
[class*="page-services-"] .service-snapshot-section {
    padding: 82px 0;
    background: var(--ffm-daylight);
}
[class*="page-services-"] .service-snapshot-grid {
    grid-template-columns: minmax(0, 1.04fr) minmax(360px, .78fr);
    gap: clamp(40px, 7vw, 90px);
}
[class*="page-services-"] .service-snapshot-grid h2,
[class*="page-services-"] .detail-content > h2 {
    letter-spacing: -.038em;
}
[class*="page-services-"] .service-snapshot-cards {
    gap: 10px;
}
[class*="page-services-"] .service-snapshot-cards article {
    min-height: 104px;
    border: 1px solid var(--ffm-line);
    border-radius: 18px;
    background: #fff;
}
[class*="page-services-"] .enhanced-detail-section {
    background: #fff;
}
[class*="page-services-"] .detail-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
    gap: clamp(42px, 7vw, 92px);
}
[class*="page-services-"] .enhanced-check-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
[class*="page-services-"] .enhanced-check-list li,
[class*="page-services-"] .audience-list span {
    border-radius: 17px;
}
[class*="page-services-"] .detail-image {
    min-height: 0;
    aspect-ratio: 4 / 3;
    border-radius: 25px;
}
[class*="page-services-"] .detail-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
[class*="page-services-"] .detail-cta {
    border-radius: 22px;
    background: #0b2939;
    color: #fff;
}
[class*="page-services-"] .related-link-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
[class*="page-services-"] .related-link-card {
    min-height: 116px;
    border-radius: 18px;
    background: #fff;
}

@media (max-width: 1100px) {
    .home-hero-advanced .photo-hero-content,
    .internal-page .page-hero-grid,
    .page-about-us .about-story-layout,
    .page-contact-us .enhanced-contact-layout,
    [class*="page-services-"] .service-snapshot-grid,
    [class*="page-services-"] .detail-grid {
        grid-template-columns: 1fr;
    }
    .home-hero-advanced .hero-command {
        max-width: 760px;
    }
    .internal-page .page-hero-visual {
        max-width: 760px;
    }
    .page-about-us .about-story-gallery {
        max-width: 760px;
    }
    .page-contact-us .contact-visual {
        position: relative;
        top: auto;
        max-width: 760px;
    }
    .page-brands .brand-directory-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .home-hero-advanced {
        min-height: 0;
        padding: 78px 0 26px;
        align-items: start;
    }
    .home-hero-advanced .photo-hero-background {
        object-position: 60% 50%;
    }
    .home-hero-advanced .photo-hero-shade {
        background: linear-gradient(180deg, rgba(3,22,34,.5), rgba(3,22,34,.86) 76%);
    }
    .home-hero-advanced .photo-hero-copy,
    .home-hero-advanced .hero-command {
        padding: 23px;
        border-radius: 22px;
    }
    .home-hero-advanced .photo-hero-copy h1 {
        font-size: clamp(2.55rem, 12vw, 3.75rem);
    }
    .home-hero-advanced .hero-command-grid {
        grid-template-columns: 1fr;
    }
    .home-hero-advanced .hero-command-grid > div {
        min-height: 68px;
    }
    .home-hero-advanced .hero-proof-bar {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .internal-page .page-hero {
        padding: 54px 0 48px;
    }
    .internal-page .page-hero-copy h1 {
        font-size: clamp(2.45rem, 11vw, 3.55rem);
    }
    .internal-page .page-hero-visual {
        aspect-ratio: 1 / 1;
        border-radius: 22px;
    }
    .about-proof-gallery {
        grid-template-columns: 1fr;
    }
    .about-proof-gallery figure,
    .about-proof-gallery figure:nth-child(2) {
        min-height: 280px;
    }
    .page-about-us .about-story-gallery {
        min-height: 520px;
    }
    .page-contact-us .contact-methods {
        grid-template-columns: 1fr;
    }
    .page-contact-us .contact-visual {
        aspect-ratio: 1 / 1;
    }
    .page-brands .directory-identity-card {
        grid-template-columns: 1fr;
    }
    .page-brands .directory-identity-image,
    .page-brands .directory-identity-image img {
        min-height: 220px;
    }
    [class*="page-services-"] .enhanced-check-list,
    [class*="page-services-"] .related-link-grid {
        grid-template-columns: 1fr;
    }
}


/* Live hero layout correction */
.home-hero-advanced {
    flex-direction: column;
    justify-content: flex-end;
}
.home-hero-advanced .photo-hero-content {
    width: 100%;
    padding-block: 0;
}
.home-hero-advanced .hero-proof-bar {
    width: 100%;
}
.home-hero-advanced .photo-hero-copy h1 {
    font-size: clamp(2.8rem, 4.8vw, 4rem);
}
@media (max-width: 760px) {
    .home-hero-advanced .photo-hero-copy h1 {
        font-size: clamp(2.45rem, 11vw, 3.4rem);
    }
}


/* Compact internal-page headline scale */
.internal-page .page-hero-copy h1 {
    font-size: clamp(2.5rem, 4.2vw, 3.75rem);
    line-height: .99;
}
@media (max-width: 760px) {
    .internal-page .page-hero-copy h1 {
        font-size: clamp(2.35rem, 10vw, 3.25rem);
    }
}
