/*
Theme Name: Benstone Group
Description: Benstone Group website converted 1:1 from the original static HTML site, plus a Blog.
Version: 2.3
Requires at least: 6.0
Requires PHP: 7.4
Author: Benstone Group
Text Domain: benstone-group
*/
:root{
  --navy:#081c38; --navy-2:#102b4d; --gold:#d28c26; --cream:#f3eee5; --paper:#f7f4ee; --ink:#0d1622; --white:#fff; --line:rgba(8,28,56,.15); --sans:'DM Sans',sans-serif; --display:'Manrope',sans-serif; --serif:'Manrope',sans-serif;
  --ease:cubic-bezier(.22,.72,.18,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}.wrap{width:min(1240px,calc(100% - 72px));margin:auto}.page-loader{position:fixed;inset:0;z-index:9999;background:var(--navy);display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;animation:loaderOut .9s 1.15s var(--ease) forwards}.loader-name{font:800 clamp(28px,4vw,58px)/1 var(--display);letter-spacing:.06em}.loader-bar{width:min(280px,50vw);height:2px;background:rgba(255,255,255,.18);margin-top:28px;overflow:hidden}.loader-bar span{display:block;height:100%;background:var(--gold);transform:translateX(-100%);animation:loaderBar 1s .2s var(--ease) forwards}.progress-bar{position:fixed;top:0;left:0;width:100%;height:2px;z-index:1000;pointer-events:none}.progress-bar span{display:block;height:100%;width:0;background:var(--gold)}@keyframes loaderBar{to{transform:translateX(0)}}@keyframes loaderOut{to{opacity:0;visibility:hidden;pointer-events:none}}
.site-header{position:fixed;z-index:99999;top:0;left:0;width:100%;padding:20px 30px;display:flex;align-items:center;justify-content:space-between;color:#fff;background:var(--navy);background-color:var(--navy);background-image:none;mix-blend-mode:normal;opacity:1;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;transition:none}.site-header.scrolled{padding:20px 30px;background:var(--navy);background-color:var(--navy);background-image:none;backdrop-filter:none;-webkit-backdrop-filter:none;mix-blend-mode:normal;box-shadow:none;color:#fff}.wordmark{color:inherit;text-decoration:none;display:flex;flex-direction:column;min-width:270px}.wordmark-main{font:700 18px/1 var(--display);letter-spacing:.08em}.wordmark-main strong{font-weight:800}.wordmark-sub{margin-top:6px;font-size:9px;letter-spacing:.25em;opacity:.72}.desktop-nav{display:flex;align-items:center;gap:22px;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.desktop-nav a{color:inherit;text-decoration:none;position:relative;padding:8px 0;white-space:nowrap}.desktop-nav a:not(.nav-contact)::after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.desktop-nav a:hover::after,.desktop-nav a.active::after{transform:scaleX(1);transform-origin:left}.nav-contact{border:1px solid currentColor;padding:12px 15px!important}.nav-contact span{margin-left:10px;color:var(--gold)}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:24px;height:1px;background:#fff;margin:6px}.mobile-menu{position:fixed;z-index:850;inset:0;background:var(--navy);transform:translateY(-100%);transition:transform .5s var(--ease);display:flex;flex-direction:column;justify-content:center;padding:80px 28px;gap:10px}.mobile-menu.open{transform:translateY(0)}.mobile-menu a{font:700 40px/1.1 var(--display);color:#fff;text-decoration:none}.mobile-menu a:nth-child(2){color:var(--gold)}
.hero{height:100svh;min-height:720px;position:relative;background:#111;overflow:hidden;color:#fff;display:flex;align-items:center}.hero-video{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;filter:saturate(.78) contrast(1.04);transform:scale(1.05);animation:heroZoom 15s ease-in-out infinite alternate}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,16,31,.88) 0%,rgba(8,28,56,.62) 42%,rgba(5,16,31,.28) 100%),linear-gradient(180deg,rgba(0,0,0,.12) 40%,rgba(0,0,0,.62) 100%)}.hero-noise{position:absolute;inset:0;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");mix-blend-mode:screen}.hero-topline{position:absolute;top:118px;left:50%;transform:translateX(-50%);width:min(1240px,calc(100% - 72px));display:flex;justify-content:space-between;font-size:10px;letter-spacing:.2em;text-transform:uppercase;opacity:.76}.hero-title-wrap{position:relative;z-index:2;width:min(1240px,calc(100% - 72px));margin:105px auto 0}.hero-eyebrow{font-size:22px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:25px}.hero-title{margin:0;max-width:1050px;font:800 clamp(54px,8.5vw,150px)/.86 var(--display);letter-spacing:-.06em;text-transform:uppercase}.hero-title .line{display:block;clip-path:inset(0 0 100% 0);animation:revealLine 1.3s .7s var(--ease) forwards}.hero-title .line.delay-1{animation-delay:.86s}.hero-title .line.delay-2{animation-delay:1.02s}.hero-title em{font-family:inherit;font-weight:800;font-style:normal;text-transform:uppercase;letter-spacing:-.085em;color:var(--gold)}.hero-title strong{font-family:inherit;font-weight:800;font-style:normal;text-transform:uppercase;letter-spacing:-.085em;color:var(--gold);-webkit-text-stroke:0}.hero-meta{position:absolute;z-index:2;left:50%;bottom:80px;transform:translateX(-50%);width:min(1240px,calc(100% - 72px));display:flex;justify-content:space-between;align-items:end}.hero-meta p{font-size:14px;line-height:1.65;margin:0;max-width:420px;color:rgba(255,255,255,.78)}.circle-link{display:flex;flex-direction:column;align-items:center;color:#fff;text-decoration:none;gap:9px}.circle-link span{width:58px;height:58px;border:1px solid rgba(210,140,38,.75);display:grid;place-items:center;border-radius:50%;font-size:20px;transition:transform .4s var(--ease),background .4s}.circle-link:hover span{transform:translateY(5px);background:var(--gold)}.circle-link small{font-size:9px;letter-spacing:.2em}.hero-bottom{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;width:min(1240px,calc(100% - 72px));font-size:10px;opacity:.6}.mini-line{height:1px;flex:1;background:rgba(255,255,255,.28)}.hero-corner{position:absolute;bottom:30px;font-size:9px;letter-spacing:.18em;opacity:.55;text-transform:uppercase}.hero-corner-left{left:30px}.hero-corner-right{right:30px}.reveal{opacity:0;transform:translateY(30px);animation:fadeUp 1s 1.25s var(--ease) forwards}@keyframes heroZoom{from{transform:scale(1.05)}to{transform:scale(1.12) translate3d(-1%,-1%,0)}}@keyframes revealLine{from{clip-path:inset(0 0 100% 0);transform:translateY(45px)}to{clip-path:inset(0 0 0 0);transform:translateY(0)}}@keyframes fadeUp{to{opacity:1;transform:none}}
.intro{padding:150px 0 125px;background:var(--paper)}.split-intro{width:min(1240px,calc(100% - 72px));margin:auto;display:grid;grid-template-columns:170px 1fr;gap:50px}.section-index{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);padding-top:8px}.mega-kicker{margin:0 0 18px;font:700 clamp(18px,2.1vw,28px)/1.1 var(--display);letter-spacing:.02em}.mega-kicker em{font-family:var(--serif);color:var(--gold)}.intro-copy h2{font:700 clamp(38px,5vw,74px)/1.02 var(--display);letter-spacing:-.045em;margin:0;max-width:1040px}.intro-copy h2 span{color:#7b7f82;font-weight:600}.intro-bottom{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-top:65px;border-top:1px solid var(--line);padding-top:24px}.intro-bottom p{max-width:570px;color:#525a63;line-height:1.7;margin:0}.text-link{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:inherit;text-decoration:none;white-space:nowrap}.text-link span{color:var(--gold);margin-left:8px}.text-link:hover{text-decoration:underline}.marquee-band{overflow:hidden;border-block:1px solid rgba(255,255,255,.1);background:var(--navy);color:#fff;padding:22px 0}.marquee-track{display:flex;width:max-content;align-items:center;gap:28px;font:800 clamp(24px,4vw,54px)/1 var(--display);letter-spacing:-.04em;animation:marquee 25s linear infinite}.marquee-track b{color:var(--gold);font-size:.45em}@keyframes marquee{to{transform:translateX(-50%)}}
.services{background:#0f1d2d;color:#fff;padding:120px 0 140px;position:relative}.services-head{display:grid;grid-template-columns:170px 1fr;gap:50px}.services-intro{display:grid;grid-template-columns:1fr 320px;align-items:end;gap:50px}.services-intro h2{font:800 clamp(44px,6.2vw,98px)/.9 var(--display);letter-spacing:-.06em;margin:0}.services-intro h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.services-intro h2 strong{font-family:var(--display);font-weight:800;font-style:italic;color:var(--gold);-webkit-text-stroke:0}.services-intro p{margin:0;color:rgba(255,255,255,.62);line-height:1.65;font-size:14px}.panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:75px}.panel{min-height:620px;position:relative;overflow:hidden;padding:32px}.panel-large{min-height:620px}.panel-city{background:#253749}.panel-bg{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,12,22,.08),rgba(4,12,22,.82)),url('assets/hero-poster.svg') center/cover;filter:saturate(.8);transform:scale(1.04);transition:transform .8s var(--ease)}.panel:hover .panel-bg{transform:scale(1.1)}.panel-dark{background:#16263b}.panel-gold{background:var(--gold);color:var(--navy)}.panel-num{position:absolute;top:26px;right:28px;font:700 13px var(--display);opacity:.7}.panel-content{position:absolute;left:32px;right:32px;bottom:32px;z-index:2}.panel-content>span{font-size:10px;letter-spacing:.2em;opacity:.72}.panel-content h3{margin:12px 0 18px;font:700 clamp(35px,4vw,66px)/.92 var(--display);letter-spacing:-.045em}.panel-content p{max-width:430px;line-height:1.65;color:rgba(255,255,255,.68);font-size:14px}.panel-gold .panel-content p{color:rgba(8,28,56,.75)}.round-arrow{width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.35);display:grid;place-items:center;color:#fff;text-decoration:none;margin-top:26px;transition:transform .4s var(--ease),background .4s}.round-arrow:hover{transform:translateX(8px);background:var(--gold)}.panel-gold .round-arrow{border-color:rgba(8,28,56,.35);color:var(--navy)}
.statement-screen{min-height:100svh;background:var(--cream);position:relative;overflow:hidden;display:grid;place-items:center}.statement-orbit{position:absolute;width:min(72vw,920px);aspect-ratio:1;border:1px solid rgba(8,28,56,.08);border-radius:50%;right:-20%;top:-30%;box-shadow:0 0 0 120px rgba(210,140,38,.035),0 0 0 240px rgba(8,28,56,.025)}.statement-inner{display:grid;grid-template-columns:170px 1fr;gap:50px;position:relative;z-index:2}.micro-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}.statement-inner h2{font:800 clamp(58px,8vw,126px)/.8 var(--display);letter-spacing:-.07em;margin:0}.statement-inner h2 span{font-family:var(--display);color:var(--gold);font-weight:500;font-style:italic;-webkit-text-stroke:0}.statement-inner h2 em{font-family:var(--display);color:var(--gold);font-weight:500;font-style:italic;-webkit-text-stroke:0}.statement-desc{max-width:560px;line-height:1.7;color:#536170;margin:35px 0 0}.orbit-label{position:absolute;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);opacity:.55}.l1{right:8%;top:28%}.l2{right:11%;bottom:25%;color:var(--gold)}.l3{left:10%;bottom:20%}
.horizontal-section{background:var(--paper);padding:120px 0 130px;overflow:hidden}.horizontal-intro{display:grid;grid-template-columns:170px 1fr;gap:50px}.horizontal-intro p{font:700 clamp(40px,5vw,72px)/.92 var(--display);letter-spacing:-.055em;max-width:760px;margin:0}.horizontal-rail{display:flex;gap:14px;width:max-content;padding:65px 0 10px 6vw;transition:transform .1s linear;will-change:transform}.lens-card{width:min(560px,72vw);height:560px;position:relative;flex:0 0 auto;overflow:hidden}.dark-card{background:var(--navy);color:#fff;padding:38px}.dark-card small,.lens-overlay small{font-size:11px;letter-spacing:.18em;color:var(--gold)}.lens-card h3{font:800 clamp(45px,5.4vw,80px)/.87 var(--display);letter-spacing:-.065em;margin:22px 0}.lens-card p{font-size:14px;line-height:1.7;max-width:390px;color:rgba(255,255,255,.66)}.dark-card span:last-child{position:absolute;bottom:30px;left:38px;font-size:9px;letter-spacing:.17em;opacity:.55}.image-card{background:#111}.lens-image{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.04);transition:transform .8s var(--ease)}.image-card:hover .lens-image{transform:scale(1.11)}.image-1{background-image:linear-gradient(180deg,rgba(8,28,56,.08),rgba(8,28,56,.82)),url('assets/hero-poster.svg')}.image-2{background-image:linear-gradient(180deg,rgba(210,140,38,.03),rgba(8,28,56,.86)),url('assets/hero-poster.svg');filter:hue-rotate(8deg)}.lens-overlay{position:absolute;inset:auto 34px 34px;color:#fff;z-index:2}.lens-overlay p{max-width:390px}
.numbers-story{background:#141414;color:#fff;padding:130px 0 90px;overflow:hidden}.numbers-wrap{display:grid;grid-template-columns:170px 1fr;gap:50px}.number-copy h2{font:800 clamp(58px,8.3vw,130px)/.82 var(--display);letter-spacing:-.075em;margin:0}.number-copy h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.numbers-run{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;max-width:1100px;margin:120px auto 0;padding-top:50px;border-top:1px solid rgba(255,255,255,.15)}.run-item{display:flex;flex-direction:column}.run-item strong{font:800 clamp(80px,12vw,180px)/.8 var(--display);letter-spacing:-.08em;color:var(--gold)}.run-item span{margin-top:18px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.58);max-width:180px}
.about{background:var(--paper);padding:150px 0}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:center}.portrait-frame{aspect-ratio:4/5;background:linear-gradient(135deg,#c9c2b5,#7f8a92 48%,#1b2c41);overflow:hidden;position:relative}.portrait-frame::after{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.5)}.portrait-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-align:center;background:radial-gradient(circle at 65% 32%,rgba(210,140,38,.5),transparent 18%),linear-gradient(150deg,#18293d,#0a1b30 65%,#2a4b69)}.portrait-placeholder span{font:800 clamp(40px,5vw,70px)/.82 var(--display);letter-spacing:-.07em;opacity:.92}.portrait-placeholder small{position:absolute;bottom:34px;left:34px;font-size:9px;letter-spacing:.2em}.media-caption{display:flex;justify-content:space-between;padding-top:14px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#6c737a}.about-copy h2{font:800 clamp(52px,7vw,104px)/.82 var(--display);letter-spacing:-.07em;margin:22px 0 34px}.about-copy h2 span{font-family:var(--serif);font-weight:500;color:var(--gold)}.about-copy>p{max-width:520px;line-height:1.75;color:#536170}.small-copy{font-size:13px}.button-outline,.button-fill{display:inline-flex;align-items:center;gap:12px;padding:15px 18px;font-size:10px;text-transform:uppercase;letter-spacing:.16em;text-decoration:none;border:1px solid var(--navy);color:var(--navy);transition:.35s var(--ease)}.button-outline:hover{background:var(--navy);color:#fff;transform:translateY(-3px)}.button-fill{background:var(--gold);border-color:var(--gold);color:var(--navy);font-weight:700}.button-fill:hover{transform:translateY(-3px);box-shadow:0 12px 25px rgba(210,140,38,.25)}
.social-preview{background:var(--navy);color:#fff;padding:120px 0}.social-preview-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:35px 0 70px}.social-preview h2{font:800 clamp(55px,7vw,100px)/.86 var(--display);letter-spacing:-.07em;margin:0}.social-preview h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.social-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.social-card{min-height:340px;padding:30px;color:#fff;text-decoration:none;display:flex;flex-direction:column;position:relative;overflow:hidden}.social-card::before{content:"";position:absolute;inset:0;opacity:.0;transition:opacity .45s}.social-card:hover::before{opacity:.16}.social-card.ig{background:#7e346b}.social-card.fb{background:#183e7a}.social-card.tt{background:#141414}.social-card .platform{font-size:9px;letter-spacing:.2em}.social-card strong{font:700 clamp(28px,3vw,46px)/.95 var(--display);margin-top:auto}.social-card small{margin-top:18px;max-width:260px;color:rgba(255,255,255,.7);line-height:1.6}.social-card i{position:absolute;right:28px;top:28px;font-style:normal;font-size:28px;transition:transform .4s var(--ease)}.social-card:hover i{transform:translate(6px,-6px)}
.links-section{background:#e9e4da;padding:130px 0}.links-head{display:grid;grid-template-columns:1fr 360px;gap:55px;align-items:end;margin-top:35px}.links-head h2{font:800 clamp(50px,6.2vw,90px)/.87 var(--display);letter-spacing:-.07em;margin:0}.links-head h2 em{font-family:var(--serif);color:var(--gold);font-weight:500}.links-head p{font-size:13px;line-height:1.75;color:#55606b;margin:0}.link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:60px}.link-tile{min-height:190px;background:#fbf9f4;padding:24px;text-decoration:none;color:var(--navy);display:flex;flex-direction:column;justify-content:space-between;transition:transform .4s var(--ease),background .4s}.link-tile:hover{transform:translateY(-7px);background:#fff}.link-tile .tile-no{font-size:9px;letter-spacing:.18em;color:var(--gold)}.link-tile h3{font:700 22px/1.05 var(--display);margin:0;letter-spacing:-.02em}.link-tile p{font-size:11px;line-height:1.5;color:#6d7379;margin:0;max-width:230px}.link-tile b{align-self:flex-end;font-size:24px;font-weight:400}
.testimonial{background:var(--cream);padding:145px 0}.testimonial-grid{display:grid;grid-template-columns:170px 1fr;gap:50px}.quote-mark{font:600 130px/.7 var(--serif);color:var(--gold);height:75px}.testimonial blockquote{font:600 clamp(36px,5vw,70px)/1.02 var(--display);letter-spacing:-.045em;margin:0;max-width:980px}.quote-source{font-size:9px;letter-spacing:.2em;color:#6d747c;margin-top:35px}
.contact{min-height:720px;background:var(--navy);color:#fff;position:relative;overflow:hidden;display:grid;align-items:center}.contact-video{position:absolute;inset:0;background:radial-gradient(circle at 75% 30%,rgba(210,140,38,.18),transparent 22%),linear-gradient(110deg,var(--navy) 0%,#0e294a 52%,#192c3c 100%)}.contact-video::before,.contact-video::after{content:"";position:absolute;border-radius:50%;filter:blur(1px);border:1px solid rgba(255,255,255,.07)}.contact-video::before{width:55vw;aspect-ratio:1;right:-18%;top:-40%}.contact-video::after{width:38vw;aspect-ratio:1;left:-12%;bottom:-24%;border-color:rgba(210,140,38,.1)}.contact-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,28,56,.92),rgba(8,28,56,.68) 55%,rgba(8,28,56,.28))}.contact-watermark{position:absolute;right:-3%;bottom:-8%;font:800 19vw/.8 var(--display);letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.08)}.contact-content{position:relative;z-index:2}.contact h2{font:800 clamp(66px,9vw,150px)/.82 var(--display);letter-spacing:-.08em;margin:22px 0 30px}.contact h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.contact p{max-width:560px;line-height:1.7;color:rgba(255,255,255,.66)}.contact-actions{display:flex;gap:12px;margin-top:38px}.light-outline{border-color:rgba(255,255,255,.48);color:#fff}.light-outline:hover{background:#fff;color:var(--navy)}
.footer{background:#060f1d;color:#fff;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .7fr;gap:50px}.footer-wordmark{font:800 28px/1 var(--display);letter-spacing:.04em}.footer p{color:rgba(255,255,255,.45);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.footer-social,.footer-contact{display:flex;flex-direction:column;gap:12px}.footer a{color:rgba(255,255,255,.72);text-decoration:none;font-size:12px}.footer a:hover{color:var(--gold)}.footer-contact span{font-size:11px;color:rgba(255,255,255,.42)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.1);margin-top:45px;padding-top:18px;color:rgba(255,255,255,.38);font-size:9px;letter-spacing:.12em;text-transform:uppercase}
/* social page */
.social-hero{min-height:88svh;background:var(--navy);color:#fff;position:relative;overflow:hidden;display:grid;align-items:center}.social-hero-grid{position:absolute;inset:0;background:linear-gradient(135deg,rgba(210,140,38,.18),transparent 34%),repeating-linear-gradient(90deg,transparent 0 100px,rgba(255,255,255,.03) 100px 101px)}.social-hero-title{position:relative;z-index:2;padding-top:115px}.social-hero h1{font:800 clamp(75px,13vw,190px)/.76 var(--display);letter-spacing:-.09em;margin:28px 0}.social-hero h1 em{font-family:var(--serif);color:var(--gold);font-weight:500}.hero-copy{max-width:500px;font-size:14px;line-height:1.7;color:rgba(255,255,255,.62);margin:0 0 30px}.social-float{position:absolute;right:30px;bottom:28px;font-size:9px;letter-spacing:.2em;color:rgba(255,255,255,.58);writing-mode:vertical-rl}.social-platforms{background:var(--paper);padding:125px 0}.platform-stack{margin-top:55px}.platform-row{display:grid;grid-template-columns:70px 150px minmax(200px,1fr) 1.2fr 45px;gap:25px;align-items:center;padding:32px 8px;border-top:1px solid var(--line);text-decoration:none;color:var(--navy);transition:padding .4s var(--ease),background .4s}.platform-row:last-child{border-bottom:1px solid var(--line)}.platform-row:hover{padding-left:18px;padding-right:18px;background:#fff}.platform-no{font-size:11px;color:var(--gold)}.platform-name{font-size:10px;letter-spacing:.18em}.platform-row strong{font:700 28px/1 var(--display);letter-spacing:-.03em}.platform-note{font-size:12px;line-height:1.55;color:#6f747a}.platform-arrow{font-size:25px;transition:transform .35s var(--ease)}.platform-row:hover .platform-arrow{transform:translate(5px,-5px)}.social-links{background:#e9e4da;padding:125px 0}.social-links-intro{display:grid;grid-template-columns:1fr 370px;gap:60px;align-items:end;margin-top:30px}.social-links h2{font:800 clamp(52px,7vw,96px)/.85 var(--display);letter-spacing:-.07em;margin:0}.social-links h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.social-links-intro p{font-size:13px;line-height:1.7;color:#59616a}.social-cta{background:#111;color:#fff;padding:125px 0 160px}.social-cta h2{font:800 clamp(70px,10vw,155px)/.8 var(--display);letter-spacing:-.085em;margin:25px 0 45px}.social-cta h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}
.reveal-section{opacity:0;transform:translateY(45px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal-section.in-view{opacity:1;transform:none}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}
@media (max-width:1100px){.desktop-nav{gap:12px}.desktop-nav a:nth-child(n+3):not(.nav-contact){display:none}.services-intro,.links-head,.social-links-intro{grid-template-columns:1fr 290px}.panel-grid{grid-template-columns:1fr 1fr}.panel-large{grid-column:1/-1;min-height:550px}.link-grid{grid-template-columns:1fr 1fr}.social-cards{grid-template-columns:1fr}.platform-row{grid-template-columns:55px 120px minmax(180px,1fr) 1fr 35px}}
@media (max-width:760px){.wrap,.hero-title-wrap,.hero-meta,.hero-topline,.hero-bottom,.split-intro{width:calc(100% - 34px)}.site-header{padding:16px 17px}.site-header.scrolled{padding:16px 17px;background:var(--navy);mix-blend-mode:normal;box-shadow:none}.wordmark{min-width:0}.wordmark-main{font-size:15px}.wordmark-sub{font-size:7px}.desktop-nav{display:none}.menu-toggle{display:block}.hero{min-height:660px}.hero-topline{top:85px;font-size:8px}.hero-topline span:nth-child(2){display:none}.hero-title-wrap{margin-top:50px}.hero-title{font-size:15vw}.hero-meta{bottom:68px}.hero-meta p{max-width:260px;font-size:11px}.hero-corner{display:none}.hero-bottom{bottom:22px}.intro{padding:90px 0}.split-intro,.services-head,.statement-inner,.horizontal-intro,.numbers-wrap,.testimonial-grid{grid-template-columns:1fr;gap:22px}.intro-copy h2{font-size:39px}.intro-bottom,.social-preview-top{flex-direction:column;align-items:flex-start}.services{padding:90px 0}.services-intro,.links-head,.social-links-intro{grid-template-columns:1fr;gap:28px}.services-intro h2{font-size:55px}.panel-grid{grid-template-columns:1fr}.panel-large{grid-column:auto;min-height:520px}.panel{min-height:470px}.statement-screen{min-height:760px;padding:90px 0}.statement-inner h2{font-size:63px}.orbit-label{display:none}.horizontal-section{padding:90px 0}.horizontal-rail{padding-left:17px}.lens-card{width:78vw;height:470px}.numbers-story{padding:90px 0}.numbers-run{flex-wrap:wrap;gap:50px;margin-top:85px}.run-item{width:42%}.about{padding:90px 0}.about-grid{grid-template-columns:1fr;gap:55px}.about-copy h2{font-size:65px}.social-preview{padding:90px 0}.social-cards{gap:2px}.social-card{min-height:270px}.links-section,.social-links{padding:90px 0}.link-grid{grid-template-columns:1fr 1fr}.link-tile{min-height:175px}.testimonial{padding:90px 0}.contact{min-height:680px}.contact-actions{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column}.social-hero{min-height:780px}.social-hero-title{padding-top:90px}.social-hero h1{font-size:19vw}.platform-row{grid-template-columns:42px 1fr 30px;gap:12px}.platform-row strong{grid-column:2;font-size:24px}.platform-note{grid-column:2}.platform-name{grid-column:2}.platform-arrow{grid-column:3;grid-row:1/4}.social-cta h2{font-size:18vw}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-video,.marquee-track{animation:none}.reveal-section{opacity:1;transform:none}.page-loader{display:none}.hero-title .line{animation:none;clip-path:none}}
/* SCROLL indicator floating animation */
.circle-link span {
  animation: scrollIndicatorFloat 1.8s ease-in-out infinite !important;
}

@keyframes scrollIndicatorFloat {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(7px);
  }
}
  .tony-portrait{
  width:calc(100% - 70px);
  height:calc(100% - 70px);
  margin:35px;
  display:block;
  object-fit:cover;
  object-position:center;
  position:relative;
  z-index:1;
}
/* Final website corrections */
.hero-video{inset:0!important;width:100%!important;height:100%!important;transform:none!important;animation:none!important;will-change:auto!important;backface-visibility:hidden}
.hero-noise{display:none!important}
.social-card{border-radius:4px;min-height:300px;padding:34px;justify-content:flex-end}
.social-card .social-logo{width:72px;height:72px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:18px;margin-bottom:24px}
.social-card .social-logo svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.social-card .social-logo svg .fill{fill:currentColor;stroke:none}
.social-card .platform{font:500 18px/1 var(--display);letter-spacing:-.01em;text-transform:none}
.social-card strong,.social-card small{display:none!important}
.platform-row{grid-template-columns:60px 70px 160px 1fr 45px}
.platform-logo{width:54px;height:54px;border:1px solid var(--line);border-radius:15px;display:grid;place-items:center}
.platform-logo svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}
.platform-logo svg .fill{fill:currentColor;stroke:none}
.platform-name{font:500 18px/1 var(--display);letter-spacing:-.01em;text-transform:none}
.platform-row strong{display:none!important}
.conversation-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:24px}
.conversation-modal.open{display:flex}
.conversation-modal-backdrop{position:absolute;inset:0;background:rgba(3,12,24,.72);backdrop-filter:blur(5px)}
.conversation-modal-panel{position:relative;z-index:1;width:min(560px,100%);background:var(--paper);color:var(--navy);padding:48px;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.conversation-modal-close{position:absolute;top:12px;right:15px;border:0;background:none;font:400 30px/1 var(--sans);color:var(--navy);cursor:pointer}
.conversation-modal-panel h2{font:800 clamp(42px,6vw,72px)/.86 var(--display);letter-spacing:-.06em;margin:24px 0 20px}
.conversation-modal-panel h2 em{font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold)}
.conversation-modal-panel p{max-width:430px;color:#5c6670;line-height:1.7;margin-bottom:28px}
body.modal-open{overflow:hidden}
@media(max-width:900px){.platform-row{grid-template-columns:42px 62px 1fr 35px;gap:14px}.platform-note{grid-column:3;grid-row:2}}
@media(max-width:600px){.conversation-modal-panel{padding:32px 24px}}

.consultation-header{mix-blend-mode:normal;background:var(--navy);color:#fff}
.consultation-hero{background:var(--navy);color:#fff;padding:170px 0 95px}
.consultation-hero h1{font:800 clamp(58px,8vw,120px)/.84 var(--display);letter-spacing:-.07em;margin:25px 0}
.consultation-hero h1 em{font-family:var(--display);font-style:italic;font-weight:500;color:var(--gold)}
.consultation-hero p{max-width:650px;color:rgba(255,255,255,.7);line-height:1.75}
.consultation-section{background:var(--paper);padding:110px 0}
.consultation-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:85px;align-items:start}
.consultation-copy h2{font:600 clamp(40px,5vw,68px)/.96 var(--display);letter-spacing:-.055em;margin:24px 0}
.consultation-copy p{max-width:500px;color:#56616d;line-height:1.75}
.consultation-note{margin-top:40px;font-size:11px;color:#6d747c}
.consultation-note span,.conversation-form label span{color:var(--gold)}
.consultation-contact-options{display:grid;gap:10px;margin-top:28px;max-width:510px}
.consultation-contact-card{position:relative;display:grid;grid-template-columns:46px 1fr 18px;align-items:center;gap:14px;padding:15px 17px;background:linear-gradient(110deg,#0a1d37,#102b4b);color:#fff;text-decoration:none;border-left:3px solid var(--gold);box-shadow:0 10px 24px rgba(8,28,56,.12);transition:transform .25s ease,box-shadow .25s ease}
.consultation-contact-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(8,28,56,.19)}
.consultation-contact-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(210,140,38,.48);border-radius:50%;color:var(--gold)}
.consultation-contact-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.consultation-contact-copy{display:grid;gap:3px;min-width:0}
.consultation-contact-copy small{font-size:8px;letter-spacing:.18em;color:var(--gold)}
.consultation-contact-copy strong{font:600 15px/1.2 var(--display);color:#fff}
.consultation-contact-copy>span{font-size:11px;color:rgba(255,255,255,.67);overflow-wrap:anywhere}
.consultation-contact-card>b{font-size:17px;font-weight:400;color:var(--gold);transition:transform .25s ease}
.consultation-contact-card:hover>b{transform:translate(2px,-2px)}
.conversation-form{background:#fff;padding:40px;box-shadow:0 18px 55px rgba(8,28,56,.1)}
.conversation-form label{display:block;font:500 12px/1.2 var(--display);margin:0 0 8px}
.conversation-form input,.conversation-form select,.conversation-form textarea{display:block;width:100%;box-sizing:border-box;border:1px solid rgba(8,28,56,.24);background:#fbfaf7;color:var(--navy);font:400 13px/1.5 var(--sans);padding:12px 13px;border-radius:0;margin:0 0 22px;outline:none}
.conversation-form input,.conversation-form select{height:46px}
.conversation-form textarea{resize:vertical;min-height:150px}
.conversation-form input:focus,.conversation-form select:focus,.conversation-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,140,38,.1)}
.conversation-form .button-fill{border:0;cursor:pointer}
@media(max-width:800px){.consultation-grid{grid-template-columns:1fr;gap:45px}.conversation-form{padding:25px}}
/* ==========================================
   FORCE HEADER TO STAY SOLID NAVY
   ========================================== */

header,
.site-header,
.site-nav,
.navbar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;

    width: 100% !important;
    height: 76px !important;

    z-index: 999999 !important;

    background: #142944 !important;
    background-color: #142944 !important;

    background-image: none !important;

    opacity: 1 !important;

    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;

    box-shadow: none !important;
}

/* Keep ALL header text white */

header a,
.site-header a,
.site-nav a,
.navbar a {
    color: #ffffff !important;
}

/* Tony Bennett */

header .brand,
header .brand *,
.site-header .brand,
.site-header .brand * {
    color: #ffffff !important;
}

/* Navigation */

header nav a,
.site-header nav a,
.site-nav a,
.navbar a {
    color: #ffffff !important;
}

/* Start a Conversation */

header .nav-cta,
.site-header .nav-cta,
.site-nav .nav-cta {
    color: #ffffff !important;
    background: transparent !important;
    border: 1px solid #ffffff !important;
}

/* Hover */

header nav a:hover,
.site-header nav a:hover,
.site-nav a:hover {
    color: #c6923e !important;
}

/* Keep page below the fixed header */

body {
    padding-top: 76px !important;
}

/* =========================================================
   FINAL REQUESTED SETTINGS
   - Permanent deep-navy header
   - Permanent white header text
   - No blend mode / no transparent scrolling state
   - Statement words use Manrope + gold, matching "property"
   - Three Commercial Realty panels equal on desktop
   ========================================================= */

.site-header,
.site-header.scrolled{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:99999 !important;
  background:var(--navy) !important;
  background-color:var(--navy) !important;
  background-image:none !important;
  color:#fff !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  box-shadow:none !important;
}

.site-header a,
.site-header a:visited,
.site-header .wordmark,
.site-header .wordmark-main,
.site-header .wordmark-sub,
.site-header .desktop-nav a{
  color:#fff !important;
}

.site-header .nav-contact{
  color:#fff !important;
  border-color:#fff !important;
  background:transparent !important;
}

.site-header .nav-contact span{
  color:var(--gold) !important;
}

.statement-inner h2 span,
.statement-inner h2 em{
  font-family:var(--display) !important;
  color:var(--gold) !important;
  font-weight:500 !important;
  font-style:italic !important;
  -webkit-text-stroke:0 !important;
}

@media (min-width:1101px){
  .panel-grid{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .panel,
  .panel-large{
    min-height:620px !important;
  }
}

body{
  padding-top:76px;
}

/* FINAL: RIGHT + OPPORTUNITY MATCH STARTS */
.hero-title strong,
.services-intro h2 strong{
  font-family:var(--display) !important;
  font-weight:800 !important;
  color:var(--gold) !important;
  -webkit-text-stroke:0 !important;
  text-shadow:none !important;
}

.hero-title strong{
  font-style:normal !important;
  text-transform:uppercase !important;
  letter-spacing:-.085em !important;
}

.services-intro h2 strong{
  font-style:italic !important;
  letter-spacing:-.06em !important;
}



/* =========================================================
   CUMULATIVE FINAL SITE OVERRIDES
   Built on the latest-good commercial-card version.
   ========================================================= */

/* Commercial Realty card photography from the working version. */
.panel-city .panel-bg {
  background-image: linear-gradient(180deg, rgba(4,12,22,.02) 0%, rgba(4,12,22,.22) 34%, rgba(4,12,22,.90) 100%), url('assets/market.jpg') !important;
  background-position: center top !important;
  background-size: cover !important;
  filter: none !important;
}
.panel-dark {
  background-image: linear-gradient(180deg, rgba(8,28,56,.08) 0%, rgba(8,28,56,.28) 34%, rgba(8,28,56,.94) 100%), url('assets/asset.jpg') !important;
  background-position: center top !important;
  background-size: cover !important;
}
.panel-gold {
  background-image: linear-gradient(180deg, rgba(8,28,56,.08) 0%, rgba(8,28,56,.34) 34%, rgba(8,28,56,.94) 100%), url('assets/strategy.jpg') !important;
  background-position: center top !important;
  background-size: cover !important;
  color:#fff !important;
}
.panel-gold .panel-content h3,
.panel-gold .panel-content p,
.panel-gold .panel-content > span,
.panel-gold .text-link,
.panel-gold .text-link span,
.panel-gold .panel-num {color:#fff !important}
.panel-gold .panel-content p {color:rgba(255,255,255,.76) !important}

/* The first two descriptions should have the same white translucency. */
.panel-city .panel-content p,
.panel-dark .panel-content p {
  color: rgba(255,255,255,.82) !important;
  opacity: 1 !important;
}

/* Four new lens images: LOCATION / NUMBERS / STRUCTURE / TIMING. */
.horizontal-rail .lens-card:nth-child(1){
  background-image:linear-gradient(180deg,rgba(8,28,56,.10),rgba(8,28,56,.84)),url('assets/location.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
.horizontal-rail .image-1{
  background-image:linear-gradient(180deg,rgba(8,28,56,.10),rgba(8,28,56,.82)),url('assets/numbers.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
.horizontal-rail .lens-card:nth-child(3){
  background-image:linear-gradient(180deg,rgba(8,28,56,.10),rgba(8,28,56,.84)),url('assets/structure.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}
.horizontal-rail .image-2{
  background-image:linear-gradient(180deg,rgba(8,28,56,.10),rgba(8,28,56,.82)),url('assets/timing.jpg') !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Header logo */
.site-header .logo-wordmark{display:flex;align-items:center;width:auto;min-width:170px;height:58px;text-decoration:none}
.site-header .site-logo{display:block;width:195px;height:65px;object-fit:contain;object-position:left center}
@media(max-width:760px){.site-header .logo-wordmark{min-width:120px;height:52px}.site-header .site-logo{width:120px;height:52px}}

/* Modern footer */
.modern-footer{position:relative;overflow:hidden;background:#060f1d !important;padding:78px 0 28px !important}
.modern-footer .footer-glow{position:absolute;width:520px;height:260px;right:-160px;top:-90px;background:radial-gradient(circle,rgba(210,140,38,.16),rgba(210,140,38,0) 70%);pointer-events:none}
.modern-footer .footer-grid{position:relative;z-index:1;grid-template-columns:1.35fr .85fr .75fr !important;gap:70px !important;align-items:start}
.modern-footer .footer-brand{display:flex;flex-direction:column;align-items:flex-start}
.modern-footer .footer-logo-link{display:block;margin-bottom:18px}
.modern-footer .footer-logo{display:block;width:235px;height:auto;max-height:125px;object-fit:contain;object-position:left center}
.modern-footer .footer-brand p{margin:0 0 10px;color:rgba(255,255,255,.55)}
.modern-footer .footer-tagline{color:var(--gold);font:500 11px/1.4 var(--display);letter-spacing:.14em;text-transform:uppercase}
.modern-footer .footer-heading{margin-bottom:18px;color:var(--gold);font:600 10px/1 var(--display);letter-spacing:.2em;text-transform:uppercase}
.modern-footer .footer-social a,.modern-footer .footer-contact a,.modern-footer .footer-contact span{display:flex;align-items:center;gap:10px}
.modern-footer .footer-icon{width:24px;height:24px;display:inline-grid;place-items:center;color:var(--gold);flex:0 0 24px}
.modern-footer .social-svg svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.modern-footer .social-svg svg .fill{fill:currentColor;stroke:none}
.modern-footer .footer-contact span{color:rgba(255,255,255,.46)}
.modern-footer .footer-bottom{position:relative;z-index:1;margin-top:55px !important;padding-top:22px !important;border-top:1px solid rgba(255,255,255,.12) !important}
.modern-footer .footer-bottom a{color:rgba(255,255,255,.78)}
@media(max-width:800px){.modern-footer .footer-grid{grid-template-columns:1fr !important;gap:40px !important}}

/* Instant consultation popup. ONLY the X closes it. */
.conversation-modal-backdrop{cursor:default !important}
.conversation-modal-panel{border:1px solid rgba(8,28,56,.12);border-top:3px solid var(--gold);border-radius:2px;padding:42px !important}
.conversation-modal-close{z-index:3;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(8,28,56,.16) !important;border-radius:50%;background:#fff !important;font-size:27px !important}
.modal-logo{display:block;width:200px;height:auto;max-height:100px;object-fit:contain;object-position:left center;margin-bottom:26px}
.conversation-modal-panel .button-fill{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.conversation-modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.conversation-modal-actions .contact-action-icon{width:16px;height:16px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:600px){.conversation-modal-panel{padding:32px 24px !important}.modal-logo{width:150px}}



/* ==========================================================
   MOBILE + TABLET OPTIMIZATION PASS
   Preserves the desktop design and existing content.
   ========================================================== */
html{overflow-x:clip;}
body{min-width:0;overflow-x:clip;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
img,svg,video,canvas{max-width:100%;}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent;}

@media (max-width:1100px){
  .site-header{box-sizing:border-box;}
  .wrap{width:min(100% - 40px,900px);}
  .panel-grid{grid-template-columns:1fr 1fr;}
  .panel-grid .panel,.panel-grid .panel-large{min-width:0;}
  .consultation-grid{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:45px;}
}

@media (max-width:760px){
  html{scroll-padding-top:76px;}
  body{padding-top:76px;}
  .wrap,
  .hero-title-wrap,
  .hero-meta,
  .hero-topline,
  .hero-bottom,
  .split-intro{width:calc(100% - 32px);max-width:none;}

  /* Header / menu */
  .site-header,
  .site-header.scrolled{height:76px;padding:10px 12px;box-sizing:border-box;}
  .site-header .logo-wordmark{min-width:0;width:auto;height:52px;max-width:68vw;}
  .site-header .site-logo{width:min(120px,34vw);height:52px;max-width:100%;}
  .menu-toggle{width:48px;height:48px;padding:8px;display:grid;place-content:center;flex:0 0 48px;}
  .menu-toggle span{width:24px;margin:5px 0;}
  .mobile-menu{height:100dvh;min-height:100svh;overflow-y:auto;overscroll-behavior:contain;padding:calc(92px + env(safe-area-inset-top)) 24px calc(36px + env(safe-area-inset-bottom));justify-content:flex-start;gap:6px;}
  .mobile-menu a{font-size:clamp(28px,8.5vw,40px);line-height:1.08;padding:9px 0;}
  body.menu-open{overflow:hidden;}

  /* Hero: keep it inside the phone and leave room for the fixed header. */
  .hero{height:clamp(500px,calc(100svh - 76px),760px);min-height:0;}
  .hero-video{inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;animation:none!important;}
  .hero-topline{top:28px;font-size:7px;letter-spacing:.14em;}
  .hero-topline span:nth-child(2){display:none;}
  .hero-title-wrap{margin-top:8px;}
  .hero-eyebrow{font-size:13px;letter-spacing:.17em;margin-bottom:15px;}
  .hero-title{font-size:clamp(42px,11.5vw,58px);line-height:.88;letter-spacing:-.07em;max-width:100%;overflow-wrap:normal;word-break:normal;}
  .hero-title .line{animation-duration:1s;}
  .hero-meta{bottom:46px;}
  .hero-meta p{display:none;}
  .circle-link span{width:48px;height:48px;font-size:17px;}
  .circle-link small{font-size:8px;}
  .hero-bottom{bottom:14px;font-size:8px;}
  .hero-corner{display:none;}

  /* Content spacing */
  .intro{padding:72px 0 78px;}
  .intro-copy h2{font-size:clamp(34px,9.7vw,48px);line-height:1.02;}
  .mega-kicker{font-size:clamp(16px,4.8vw,21px);}
  .intro-bottom{gap:24px;}
  .services{padding:72px 0;}
  .services-intro h2{font-size:clamp(40px,11vw,56px);}
  .panel-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .panel-grid .panel,
  .panel-grid .panel-large{height:auto!important;min-height:0!important;aspect-ratio:4/5;}
  .panel-content{left:24px;right:24px;bottom:24px;}
  .panel-content h3{font-size:clamp(34px,9vw,52px);}
  .panel-content p{font-size:13px;max-width:100%;}
  .round-arrow{width:46px;height:46px;margin-top:20px;}

  .statement-screen{min-height:0;padding:84px 0 92px;}
  .statement-inner{grid-template-columns:1fr;gap:18px;}
  .statement-inner h2{font-size:clamp(44px,12.5vw,62px);line-height:.86;}
  .statement-desc{font-size:14px;margin-top:24px;}
  .statement-orbit{width:110vw;right:-52%;top:-18%;}

  /* Mobile lenses become a real swipeable card rail instead of a desktop
     scroll-linked transform. This keeps every card inside the viewport. */
  .horizontal-section{padding:76px 0 86px;overflow:hidden;}
  .horizontal-intro{grid-template-columns:1fr;gap:16px;}
  .horizontal-intro p{font-size:clamp(32px,8.8vw,46px);line-height:.95;}
  .horizontal-rail{width:100%;max-width:100%;box-sizing:border-box;display:flex;gap:12px;overflow-x:auto;overflow-y:hidden;padding:42px 16px 12px;scroll-snap-type:x mandatory;scroll-padding-left:16px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;transform:none!important;will-change:auto;}
  .horizontal-rail::-webkit-scrollbar{display:none;}
  .lens-card{width:calc(100vw - 48px);height:min(470px,118vw);min-height:360px;max-height:470px;scroll-snap-align:start;}
  .dark-card{padding:28px;}
  .lens-card h3{font-size:clamp(40px,11vw,60px);}
  .lens-card p{font-size:13px;}
  .lens-overlay{inset:auto 24px 24px;}

  .numbers-story{padding:78px 0 70px;}
  .numbers-wrap{grid-template-columns:1fr;gap:16px;}
  .number-copy h2{font-size:clamp(46px,12.5vw,64px);}
  .numbers-run{gap:36px;margin-top:65px;padding-top:36px;}
  .run-item{width:calc(50% - 18px);}
  .run-item strong{font-size:clamp(64px,18vw,100px);}

  .about{padding:82px 0;}
  .about-grid{grid-template-columns:1fr;gap:36px;}
  .about-copy h2{font-size:clamp(44px,12vw,64px);}
  .about-copy>p{font-size:14px;}
  .tony-portrait{width:calc(100% - 40px);height:calc(100% - 40px);margin:20px;}

  .social-preview{padding:78px 0;}
  .social-preview-top{gap:22px;margin:28px 0 44px;}
  .social-preview h2{font-size:clamp(44px,11.5vw,62px);}
  .social-cards{grid-template-columns:1fr;gap:10px;}
  .social-card{min-height:220px;padding:26px;}

  .links-section,.social-links{padding:78px 0;}
  .links-head,.social-links-intro{grid-template-columns:1fr;gap:18px;}
  .link-grid{grid-template-columns:1fr;gap:10px;margin-top:38px;}
  .link-tile{min-height:160px;padding:22px;}
  .link-tile h3{font-size:22px;}

  .testimonial{padding:80px 0;}
  .testimonial-grid{grid-template-columns:1fr;gap:18px;}
  .quote-mark{font-size:90px;height:52px;}
  .testimonial blockquote{font-size:clamp(32px,8.5vw,46px);}

  .contact{min-height:580px;padding:84px 0;}
  .contact h2{font-size:clamp(48px,13vw,72px);}
  .contact-actions{flex-direction:column;align-items:stretch;}
  .contact-actions a{width:100%;justify-content:center;}

  /* Social page */
  .social-hero{min-height:calc(100svh - 76px);padding:76px 0 70px;display:block;}
  .social-hero-title{padding-top:18px;}
  .social-hero h1{font-size:clamp(68px,18vw,96px);line-height:.78;margin:20px 0 24px;}
  .hero-copy{font-size:13px;max-width:100%;}
  .social-float{right:16px;bottom:18px;}
  .social-platforms{padding:78px 0;}
  .platform-stack{margin-top:38px;}
  .platform-row{grid-template-columns:36px minmax(0,1fr) 30px!important;gap:10px;padding:24px 0;align-items:start;}
  .platform-logo{grid-column:1;grid-row:1 / span 3;}
  .platform-name{grid-column:2;grid-row:1;font-size:11px;}
  .platform-note{grid-column:2;grid-row:2!important;font-size:12px;margin-top:5px;}
  .platform-arrow{grid-column:3;grid-row:1 / span 3;}
  .platform-no{display:none;}
  .social-links h2{font-size:clamp(44px,11.5vw,62px);}
  .social-cta{padding:80px 0 100px;}
  .social-cta h2{font-size:clamp(52px,14vw,78px);line-height:.84;}

  /* Consultation page */
  .consultation-hero{padding:100px 0 68px;}
  .consultation-hero h1{font-size:clamp(50px,13vw,76px);line-height:.86;}
  .consultation-hero p{font-size:14px;}
  .consultation-section{padding:72px 0;}
  .consultation-grid{grid-template-columns:1fr;gap:32px;}
  .consultation-copy h2{font-size:clamp(36px,9.5vw,50px);}
  .conversation-form{padding:22px;box-shadow:0 12px 35px rgba(8,28,56,.08);}
  .conversation-form input,.conversation-form select{height:48px;font-size:16px;}
  .conversation-form textarea{font-size:16px;min-height:150px;}
  .form-submit{width:100%;justify-content:center;min-height:48px;}

  /* Popup: never exceed the small phone viewport. */
  .conversation-modal{padding:16px!important;}
  .conversation-modal-panel{width:100%;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;padding:28px 20px!important;}
  .conversation-modal-panel h2{font-size:clamp(38px,10vw,52px);}
  .modal-logo{width:min(150px,55vw);}

  .modern-footer{padding:62px 0 24px!important;}
  .modern-footer .footer-grid{grid-template-columns:1fr!important;gap:34px!important;}
  .modern-footer .footer-logo{width:min(200px,70vw);}
  .modern-footer .footer-bottom{gap:12px;}
}

@media (max-width:430px){
  .site-header .site-logo{width:108px;}
  .hero{height:clamp(490px,calc(100svh - 76px),700px);}
  .hero-title{font-size:clamp(40px,11.2vw,52px);}
  .hero-eyebrow{font-size:11px;letter-spacing:.14em;}
  .hero-meta{bottom:42px;}
  .statement-screen{padding-top:74px;padding-bottom:82px;}
  .lens-card{width:calc(100vw - 42px);min-height:340px;height:min(430px,116vw);}
  .panel-grid .panel,.panel-grid .panel-large{aspect-ratio:5/6;}
  .about-copy h2,.social-preview h2,.social-links h2{font-size:clamp(40px,11.2vw,56px);}
  .social-hero h1{font-size:clamp(64px,17.5vw,84px);}
  .conversation-form{padding:18px;}
  .conversation-modal{padding:10px!important;}
  .conversation-modal-panel{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:24px 18px!important;}
}

@media (max-width:360px){
  .wrap,.hero-title-wrap,.hero-meta,.hero-topline,.hero-bottom,.split-intro{width:calc(100% - 26px);}
  .site-header,.site-header.scrolled{padding-left:9px;padding-right:9px;}
  .site-header .site-logo{width:98px;}
  .menu-toggle{flex-basis:44px;width:44px;height:44px;}
  .hero-title{font-size:40px;}
  .mobile-menu{padding-left:20px;padding-right:20px;}
  .mobile-menu a{font-size:29px;}
  .panel-grid .panel,.panel-grid .panel-large{aspect-ratio:4/5;}
  .lens-card{width:calc(100vw - 34px);}
}

@media (prefers-reduced-motion: no-preference){
  @media (max-width:760px){
    .reveal-section{transition-duration:.7s;}
    .lens-card{scroll-snap-stop:always;}
    .lens-image{animation:mobileLensDrift 9s ease-in-out infinite alternate;}
    .social-hero-grid{animation:mobileGridDrift 14s ease-in-out infinite alternate;}
  }
}
@keyframes mobileLensDrift{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.08) translate3d(-1.2%, -0.6%, 0)}}
@keyframes mobileGridDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-12px,0,0)}}
/* LIGHT HEADER COLORS */
.site-header,
.site-header.scrolled {
    background: var(--paper) !important;
    background-color: var(--paper) !important;
    background-image: none !important;
    color: var(--navy) !important;
}

/* Logo/navigation text */
.site-header a,
.site-header a:visited,
.site-header .wordmark,
.site-header .wordmark-main,
.site-header .wordmark-sub,
.site-header .desktop-nav a {
    color: var(--navy) !important;
}

/* Start a Conversation button */
.site-header .nav-contact {
    color: var(--navy) !important;
    border-color: var(--navy) !important;
    background: transparent !important;
}

/* Gold arrow */
.site-header .nav-contact span {
    color: var(--gold) !important;
}

/* Mobile hamburger */
.site-header .menu-toggle span,
.menu-toggle span {
    background: var(--navy) !important;
}

/* Mobile header */
@media (max-width: 760px) {
    .site-header,
    .site-header.scrolled {
        background: var(--paper) !important;
        background-color: var(--paper) !important;
    }
}
/* =====================================================
   MORTGAGE CALCULATOR ONLY
   Paste at the very bottom of style.css
   ===================================================== */

.calc {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 34px !important;
  box-sizing: border-box !important;

  background: #ffffff !important;
  border: 1px solid rgba(13, 31, 48, 0.14) !important;
  border-radius: 0 !important;

  color: #0d1f30 !important;
}


/* TITLE */

.calc .calc__title {
  margin: 0 0 28px !important;

  font-family: var(--display) !important;
  font-size: 27px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;

  color: #0d1f30 !important;
}


/* INPUT GRID */

.calc .calc__fields {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;

  margin: 0 0 25px !important;
}


/* FIELD */

.calc .form-field {
  min-width: 0 !important;
}


.calc .form-field label {
  display: block !important;
  width: 100% !important;

  margin: 0 0 7px !important;

  font-family: var(--sans) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;

  color: #172b3d !important;

  white-space: nowrap !important;
}


.calc .form-field input {
  display: block !important;

  width: 100% !important;
  height: 48px !important;

  padding: 0 13px !important;
  box-sizing: border-box !important;

  border: 1px solid #cfd4d8 !important;
  border-radius: 0 !important;

  background: #ffffff !important;

  font-family: var(--sans) !important;
  font-size: 15px !important;
  font-weight: 500 !important;

  color: #172b3d !important;

  outline: none !important;
}


.calc .form-field input:focus {
  border-color: #b28a3e !important;
  box-shadow: 0 0 0 1px #b28a3e !important;
}


/* RESULTS */

.calc .calc__out {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;

  background: #f5f5f3 !important;
  border: 1px solid #dededb !important;
}


/* EACH RESULT */

.calc .calc__result {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 0 !important;
  min-height: 105px !important;

  padding: 20px 14px !important;
  box-sizing: border-box !important;

  text-align: center !important;

  border-right: 1px solid #dededb !important;
}


.calc .calc__result:last-child {
  border-right: 0 !important;
}


/* RESULT LABEL */

.calc .calc__result small {
  display: block !important;

  margin: 0 0 8px !important;

  font-family: var(--sans) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;

  color: #46535e !important;
}


/* RESULT NUMBER */

.calc .calc__result strong {
  display: block !important;

  margin: 0 !important;

  font-family: var(--display) !important;
  font-size: 23px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;

  color: #0d1f30 !important;

  white-space: nowrap !important;
}


/* DISCLAIMER */

.calc .calc__note {
  margin: 12px 0 24px !important;

  font-family: var(--sans) !important;
  font-size: 10px !important;
  line-height: 1.5 !important;

  color: #7a8288 !important;
}


/* AMORTIZATION TOGGLE */

.calc .calc__sched {
  margin: 0 !important;
  padding-top: 17px !important;

  border-top: 1px solid #dededb !important;
}


.calc .calc__sched summary {
  display: block !important;

  cursor: pointer !important;

  font-family: var(--sans) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;

  color: #0d1f30 !important;

  list-style: none !important;
}


.calc .calc__sched summary::-webkit-details-marker {
  display: none !important;
}


.calc .calc__sched summary::before {
  content: "▶" !important;

  display: inline-block !important;

  margin-right: 8px !important;

  font-size: 8px !important;
  color: #b28a3e !important;
}


.calc .calc__sched[open] summary::before {
  content: "▼" !important;
}


/* TABLE */

.calc .calc__scroll {
  width: 100% !important;
  margin-top: 16px !important;

  overflow-x: auto !important;
}


.calc .calc__table {
  width: 100% !important;
  min-width: 620px !important;

  border-collapse: collapse !important;

  font-family: var(--sans) !important;
  font-size: 12px !important;
}


.calc .calc__table th {
  padding: 11px 12px !important;

  background: #0d1f30 !important;
  border: 0 !important;

  color: #ffffff !important;

  font-size: 10px !important;
  font-weight: 600 !important;

  text-align: right !important;
}


.calc .calc__table th:first-child {
  text-align: center !important;
}


.calc .calc__table td {
  padding: 10px 12px !important;

  border-bottom: 1px solid #e5e5e2 !important;

  color: #4d5962 !important;

  text-align: right !important;
}


.calc .calc__table td:first-child {
  text-align: center !important;
}


.calc .calc__table tbody tr:hover td {
  background: #faf9f5 !important;
}


/* TABLET */

@media (max-width: 900px) {

  .calc {
    padding: 28px !important;
  }

  .calc .calc__fields {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

}


/* MOBILE */

@media (max-width: 600px) {

  .calc {
    padding: 24px 18px !important;
  }

  .calc .calc__title {
    font-size: 24px !important;
  }

  .calc .calc__fields {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }

  .calc .calc__out {
    grid-template-columns: 1fr !important;
  }

  .calc .calc__result {
    min-height: 88px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #dededb !important;
  }

  .calc .calc__result:last-child {
    border-bottom: 0 !important;
  }

  .calc .calc__result strong {
    font-size: 21px !important;
  }

}
/* Refinements: immediate horizontal travel and matching lens image zoom. */
.horizontal-rail{transition:none;}
.horizontal-rail .image-card .lens-image{transform:scale(var(--scroll-zoom,1.04));transition:transform .25s ease-out;}
.horizontal-rail .image-card:hover .lens-image,.horizontal-rail .image-card:focus-within .lens-image{transform:scale(1.14);}
@media(max-width:760px){.horizontal-rail .image-card .lens-image{transform:scale(1.07);transition:transform .35s ease-out}.horizontal-rail .image-card:hover .lens-image{transform:scale(1.12)}}


/* Social cards: editorial brand system, with a four-card desktop grid. */
.social-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.social-card{min-height:310px;padding:26px;border:1px solid rgba(255,255,255,.12);border-radius:3px;justify-content:flex-end;background-color:#102746;isolation:isolate;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.social-card::before{inset:0;opacity:1;background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 48%),repeating-linear-gradient(135deg,transparent 0 22px,rgba(255,255,255,.025) 22px 23px);z-index:-1}
.social-card::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--card-accent,var(--gold));transform:scaleX(.24);transform-origin:left;transition:transform .4s ease}
.social-card:hover,.social-card:focus-visible{transform:translateY(-7px);border-color:rgba(255,255,255,.38);box-shadow:0 18px 42px rgba(0,0,0,.24)}
.social-card:hover::after,.social-card:focus-visible::after{transform:scaleX(1)}
.social-card.ig{--card-accent:#e5a34b;background:linear-gradient(150deg,#65305e,#362344 75%)}
.social-card.fb{--card-accent:#6d9bea;background:linear-gradient(150deg,#214e88,#102746 78%)}
.social-card.tt{--card-accent:#69e1db;background:linear-gradient(150deg,#252831,#10141d 78%)}
.social-card.li{--card-accent:#70b8ed;background:linear-gradient(150deg,#17608b,#102746 78%)}
.social-card .card-index{position:absolute;left:26px;top:25px;color:rgba(255,255,255,.62);font-size:9px;letter-spacing:.18em}
.social-card .social-logo{width:58px;height:58px;border-radius:15px;margin-bottom:20px;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.3)}
.social-card .social-logo svg{width:29px;height:29px}
.social-card .platform{font-size:16px;font-weight:600;letter-spacing:0}
.social-card .card-caption{display:block;margin-top:9px;max-width:210px;color:rgba(255,255,255,.62);font-size:11px;line-height:1.5}
.social-card i{right:24px;top:auto;bottom:24px;font-size:22px;color:var(--card-accent)}
@media(max-width:1100px){.social-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.social-cards{grid-template-columns:1fr;gap:10px}.social-card{min-height:210px;padding:24px}.social-card .card-index{left:24px;top:22px}.social-card .social-logo{width:48px;height:48px;margin-bottom:13px}.social-card .social-logo svg{width:25px;height:25px}.social-card .card-caption{max-width:80%}}

@media(min-width:761px) and (max-width:1100px){.social-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Commercial card photos zoom as a single background layer, leaving copy still. */
.panel{isolation:isolate}
.panel .panel-bg{z-index:-1;inset:0;background-position:center top;background-size:cover;transform:scale(1);transition:transform .9s cubic-bezier(.2,.7,.2,1);will-change:transform}
.panel-city .panel-bg{background-image:linear-gradient(180deg,rgba(4,12,22,.02) 0%,rgba(4,12,22,.22) 34%,rgba(4,12,22,.90) 100%),url('assets/market.jpg')!important}
.panel-dark .panel-bg{background-image:linear-gradient(180deg,rgba(8,28,56,.08) 0%,rgba(8,28,56,.28) 34%,rgba(8,28,56,.94) 100%),url('assets/asset.jpg')!important}
.panel-gold .panel-bg{background-image:linear-gradient(180deg,rgba(8,28,56,.08) 0%,rgba(8,28,56,.34) 34%,rgba(8,28,56,.94) 100%),url('assets/strategy.jpg')!important}
.panel:hover .panel-bg,.panel:focus-within .panel-bg{transform:scale(1.12)}
@media(max-width:760px){.panel .panel-bg{transform:scale(1.04)}.panel:active .panel-bg,.panel:focus-within .panel-bg{transform:scale(1.1)}}

/* Expanded social feature cards with muted photo backdrops and foreground marks. */
.social-preview{padding-top:140px;padding-bottom:150px}
.social-cards{gap:16px;align-items:stretch}
.social-card{min-height:390px;padding:30px;justify-content:flex-end;border-radius:5px}
.social-card::before{z-index:-1;opacity:1;background:linear-gradient(180deg,rgba(7,20,38,.38) 0%,rgba(7,20,38,.58) 48%,rgba(7,20,38,.96) 100%);transition:background .4s ease}
.social-card::after{z-index:1}
.social-card .card-index,.social-card .social-logo,.social-card .platform,.social-card .card-caption,.social-card i{z-index:2}
.social-card .social-logo{width:68px;height:68px;background:rgba(8,20,38,.56);border-color:rgba(255,255,255,.5);backdrop-filter:blur(3px)}
.social-card .social-logo svg{width:34px;height:34px}
.social-card .platform{font-size:19px;text-shadow:0 2px 12px rgba(0,0,0,.4)}
.social-card .card-caption{max-width:230px;font-size:12px}
.social-card.ig,.social-card.fb,.social-card.tt,.social-card.li{background-size:cover;background-position:center;background-repeat:no-repeat}
.social-card.ig{background-image:linear-gradient(145deg,rgba(78,31,68,.32),rgba(8,20,38,.55)),url('assets/tony.png')}
.social-card.fb{background-image:linear-gradient(145deg,rgba(20,65,122,.30),rgba(8,20,38,.58)),url('assets/market.jpg')}
.social-card.tt{background-image:linear-gradient(145deg,rgba(14,19,28,.38),rgba(8,20,38,.60)),url('assets/hero-poster.svg')}
.social-card.li{background-image:linear-gradient(145deg,rgba(16,91,133,.28),rgba(8,20,38,.58)),url('assets/structure.jpg')}
.social-card:hover,.social-card:focus-visible{background-size:cover,cover,cover;background-position:center}
@media(max-width:1100px){.social-card{min-height:350px}}
@media(max-width:760px){.social-preview{padding-top:90px;padding-bottom:90px}.social-cards{gap:12px}.social-card{min-height:280px;padding:24px}.social-card .social-logo{width:58px;height:58px;margin-bottom:16px}.social-card .social-logo svg{width:30px;height:30px}.social-card .platform{font-size:17px}}

/* Use the manager's supplied platform screenshots as the card artwork. */
.social-card.ig{background-image:linear-gradient(180deg,rgba(8,20,38,.18),rgba(8,20,38,.82)),url('assets/instagram-profile.png')}
.social-card.fb{background-image:linear-gradient(180deg,rgba(8,20,38,.20),rgba(8,20,38,.86)),url('assets/facebook-feed.png')}
.social-card.tt{background-image:linear-gradient(180deg,rgba(8,20,38,.18),rgba(8,20,38,.84)),url('assets/tiktok-feed.png')}
.social-card.li{background-image:linear-gradient(180deg,rgba(8,20,38,.18),rgba(8,20,38,.82)),url('assets/linkedin-company.png')}
.social-card.ig{background-position:center 24%}
.social-card.fb{background-position:center 35%}
.social-card.tt{background-position:center 25%}
.social-card.li{background-position:center 32%}
.social-card:hover,.social-card:focus-visible{background-size:cover}
.social-card .card-caption{position:relative;z-index:3}

/* Social cards: screenshot-led phone previews with a soft shadow info panel. */
.social-card{isolation:isolate;border:0!important;outline:0;box-shadow:0 24px 64px rgba(0,0,0,.32);background-color:#0d1c32;overflow:hidden}
.social-card::before{z-index:0;opacity:1;background:linear-gradient(180deg,rgba(5,15,30,.18),rgba(5,15,30,.48) 45%,rgba(5,15,30,.9) 100%)}
.social-card::after{display:none}
.social-card .card-art{position:absolute;z-index:-1;right:7%;top:7%;width:63%;height:82%;border-radius:38px;overflow:hidden;opacity:.36;box-shadow:0 22px 54px rgba(0,0,0,.55);transform:rotate(3deg);transition:opacity .35s,transform .5s}
.social-card .card-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:saturate(.82)}
.social-card.fb .card-art{width:73%;height:86%;right:4%;top:4%;border-radius:38px;opacity:.31;transform:rotate(-2deg)}
.social-card.fb .card-art img{object-position:center 22%}
.social-card.tt .card-art{width:52%;height:85%;right:9%;top:5%;border-radius:38px;opacity:.4;transform:rotate(4deg)}
.social-card.tt .card-art img{object-position:center 15%}
.social-card.li .card-art{width:70%;height:80%;right:4%;top:7%;border-radius:32px;opacity:.31;transform:rotate(2deg)}
.social-card.li .card-art img{object-position:center 28%}
.social-card.ig .card-art{width:70%;height:79%;right:5%;top:7%;opacity:.33}
.social-card.ig .card-art img{object-position:center 8%}
.social-card:hover .card-art,.social-card:focus-visible .card-art{opacity:.52;transform:rotate(0) scale(1.025)}
.social-card .card-index,.social-card .social-logo,.social-card .platform,.social-card .card-caption,.social-card .follower-goal,.social-card i{z-index:2}
.social-card .card-index{color:rgba(255,255,255,.78)}
.social-card .social-logo{border:0!important;background:rgba(7,20,38,.76);box-shadow:0 12px 34px rgba(0,0,0,.32);backdrop-filter:blur(10px)}
.social-card .platform{font-size:20px;font-weight:700}
.social-card .card-caption{max-width:250px;color:rgba(255,255,255,.82)}
.social-card .follower-goal{display:block;margin-top:13px;font:700 23px/1 var(--display);color:#f0b64d;text-shadow:0 2px 16px rgba(0,0,0,.45)}
.social-card .follower-goal small{display:block;margin-top:5px;font:600 9px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.social-card.ig,.social-card.fb,.social-card.tt,.social-card.li{background-image:none!important}
.social-card .platform,.social-card .social-logo,.social-card .card-caption,.social-card .follower-goal{filter:drop-shadow(0 3px 10px rgba(0,0,0,.45))}
@media(max-width:760px){.social-card{min-height:320px}.social-card .card-art{height:84%;width:58%}.social-card .follower-goal{font-size:20px}}
.social-card .card-art{z-index:0!important}
.social-card::before{z-index:1!important}
.social-card .card-index{position:absolute;z-index:2}
.social-card .social-logo,.social-card .platform,.social-card .card-caption,.social-card .follower-goal{position:relative;z-index:2}
.social-card i{z-index:3}

/* Floating quick-contact control shared by all site pages. */
.floating-contact{position:fixed;z-index:900;right:24px;bottom:24px;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:var(--sans)}
.floating-contact-panel{width:266px;padding:13px;background:rgba(8,28,56,.97);border:1px solid rgba(210,140,38,.48);box-shadow:0 16px 42px rgba(0,0,0,.28);backdrop-filter:blur(12px);animation:contactPanelIn .22s ease-out}
.floating-contact-panel[hidden]{display:none!important}
.floating-contact-heading{padding:2px 5px 9px;color:var(--gold);font-size:8px;letter-spacing:.2em}
.floating-contact-panel>a{display:grid;grid-template-columns:34px 1fr 14px;align-items:center;gap:10px;padding:10px 5px;color:#fff;text-decoration:none;border-top:1px solid rgba(255,255,255,.1);transition:background .2s ease,padding .2s ease}
.floating-contact-panel>a:hover{padding-left:9px;background:rgba(255,255,255,.06)}
.floating-contact-link-icon{width:32px;height:32px;display:grid;place-items:center;border:1px solid rgba(210,140,38,.45);border-radius:50%;color:var(--gold)}
.floating-contact-link-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.floating-contact-panel>a>span:nth-child(2){display:grid;gap:3px}
.floating-contact-panel strong{font:600 13px/1.2 var(--display)}
.floating-contact-panel small{font-size:10px;color:rgba(255,255,255,.62)}
.floating-contact-panel>a>b{color:var(--gold);font-size:14px;font-weight:400}
.floating-contact-trigger{position:relative;width:60px;height:60px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:var(--gold);color:var(--navy);box-shadow:0 8px 24px rgba(0,0,0,.28);cursor:pointer;animation:floatingContactBob 3.2s ease-in-out infinite;transition:transform .2s ease,box-shadow .2s ease}
.floating-contact-trigger:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 12px 30px rgba(0,0,0,.34);animation-play-state:paused}
.floating-contact-trigger svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.floating-contact-trigger i{position:absolute;right:-2px;top:-2px;width:21px;height:21px;display:grid;place-items:center;border:2px solid var(--paper);border-radius:50%;background:var(--navy);color:var(--gold);font:500 15px/1 var(--sans);font-style:normal}
.floating-contact.is-open .floating-contact-trigger{animation:none}
.mobile-menu.open~.floating-contact{display:none}
@keyframes floatingContactBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes contactPanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.floating-contact{right:16px;bottom:18px}.floating-contact-panel{width:min(266px,calc(100vw - 32px))}.floating-contact-trigger{width:56px;height:56px}}
@media(prefers-reduced-motion:reduce){.floating-contact-trigger{animation:none}.floating-contact-panel{animation:none}.floating-contact-trigger,.floating-contact-panel>a{transition:none}}

/* Lighten the navy wash over the social screenshot previews. */
.social-card::before{background:linear-gradient(180deg,rgba(5,15,30,.06),rgba(5,15,30,.22) 48%,rgba(5,15,30,.62) 100%)}

/* Show more of the platform screenshots through the social cards. */
.social-card::before{background:linear-gradient(180deg,rgba(5,15,30,0),rgba(5,15,30,.06) 48%,rgba(5,15,30,.32) 100%)}
.social-card .card-art{opacity:.62}
.social-card.fb .card-art,.social-card.li .card-art{opacity:.58}
.social-card.tt .card-art{opacity:.68}
.social-card.ig .card-art{opacity:.58}

/* Compact phone and tablet refinements */
.hero{background:#111 url("assets/hero-poster.svg") center/cover no-repeat;}
.hero-video{inset:0!important;width:100%!important;height:100%!important;transform:scale(1.04)!important;animation:heroZoom 18s ease-in-out infinite alternate!important;will-change:transform!important;}
@media(max-width:900px){
  html{scroll-padding-top:72px;}
  body{padding-top:72px;}
  .site-header,.site-header.scrolled{height:72px!important;padding:8px 20px!important;}
  .site-header .logo-wordmark{min-width:0;width:auto;height:52px;}
  .site-header .site-logo{width:min(158px,34vw);height:52px;}
  .desktop-nav{display:none!important;}
  .menu-toggle{display:grid!important;place-content:center;width:46px;height:46px;padding:8px;flex:0 0 46px;}
  .menu-toggle span{width:24px;margin:5px 0;}
  .mobile-menu{height:100dvh;min-height:100svh;overflow-y:auto;overscroll-behavior:contain;padding:calc(86px + env(safe-area-inset-top)) 28px calc(28px + env(safe-area-inset-bottom));justify-content:flex-start;gap:4px;}
  .mobile-menu a{font-size:clamp(30px,5.2vw,42px);padding:8px 0;}
  .panel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .panel-grid .panel,.panel-grid .panel-large{min-height:380px;}
  .horizontal-section{overflow:hidden;}
  .horizontal-rail{width:100%;max-width:100%;box-sizing:border-box;display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;padding:36px 24px 12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;transform:none!important;}
  .horizontal-rail::-webkit-scrollbar{display:none;}
  .lens-card{flex:0 0 min(58vw,430px);scroll-snap-align:start;}
  .consultation-grid{grid-template-columns:1fr;gap:30px;}
}
@media(max-width:760px){
  .site-header,.site-header.scrolled{padding:8px 14px!important;}
  .site-header .site-logo{width:min(132px,34vw);}
  .hero{height:clamp(440px,calc(82svh - 54px),660px);min-height:0;}
  .hero-video{transform:scale(1.035)!important;animation-duration:24s!important;}
  .hero-title-wrap{margin-top:0;}
  .hero-title{font-size:clamp(38px,10.5vw,58px);line-height:.9;}
  .hero-eyebrow{font-size:clamp(10px,3vw,14px);margin-bottom:12px;}
  .hero-topline{top:24px;}
  .hero-meta{bottom:42px;}
  .intro,.services,.statement-screen,.horizontal-section,.numbers-story,.about,.social-preview,.links-section,.social-links,.testimonial,.consultation-section{padding-top:clamp(46px,12vw,68px);padding-bottom:clamp(50px,13vw,72px);}
  .panel-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .panel-grid .panel,.panel-grid .panel-large{aspect-ratio:1.08/1;min-height:0!important;height:auto!important;}
  .panel-content{left:20px;right:20px;bottom:20px;}
  .panel-content h3{font-size:clamp(30px,8.2vw,46px);}
  .horizontal-intro p{font-size:clamp(29px,8vw,42px);}
  .horizontal-rail{padding:28px 16px 10px;}
  .lens-card{flex-basis:calc(100vw - 40px);height:min(390px,105vw);min-height:300px;max-height:390px;}
  .social-hero{min-height:0;padding-top:54px;padding-bottom:48px;}
  .social-hero h1{font-size:clamp(56px,16vw,82px);}
  .social-card{min-height:190px;padding:22px;}
  .consultation-hero{padding-top:76px;padding-bottom:48px;}
  .consultation-hero h1{font-size:clamp(42px,11.5vw,64px);}
  .conversation-form textarea{min-height:120px;}
  .contact{min-height:0;padding:62px 0;}
  .modern-footer{padding-top:48px!important;}
}
@media(max-width:430px){
  .wrap,.hero-title-wrap,.hero-meta,.hero-topline,.hero-bottom,.split-intro{width:calc(100% - 28px);}
  .site-header,.site-header.scrolled{padding-right:10px!important;padding-left:10px!important;}
  .site-header .site-logo{width:min(118px,32vw);}
  .menu-toggle{width:42px;height:42px;flex-basis:42px;}
  .hero{height:clamp(420px,calc(78svh - 48px),590px);}
  .hero-title{font-size:clamp(35px,10vw,44px);}
  .hero-meta{bottom:36px;}
  .hero-bottom{bottom:10px;}
  .intro-copy h2,.services-intro h2{font-size:clamp(32px,9vw,42px);}
  .statement-inner h2,.number-copy h2,.about-copy h2,.social-preview h2,.social-links h2{font-size:clamp(36px,10vw,48px);}
  .run-item strong{font-size:clamp(54px,16vw,74px);}
  .panel-grid .panel,.panel-grid .panel-large{aspect-ratio:1/1;}
  .lens-card{flex-basis:calc(100vw - 32px);height:min(350px,100vw);min-height:280px;}
  .conversation-form{padding:16px;}
  .modern-footer .footer-grid{gap:24px!important;}
}
@media(max-width:360px){
  .hero-title{font-size:34px;}
  .hero-eyebrow{font-size:10px;}
  .mobile-menu a{font-size:28px;}
  .panel-grid .panel,.panel-grid .panel-large{aspect-ratio:.96/1;}
}
@media(prefers-reduced-motion:reduce){.hero-video{animation:none!important;transform:none!important;}}
.about-copy:has(> .section-index) {
    width: 100%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}
/* Centering paragraphs in the About section */
.about-copy p {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* v1.1 — keep the header menu on one line now that it has a Blog link.
   Only applies between 1101px and 1360px wide; larger screens are unchanged. */
@media (min-width:1101px) and (max-width:1360px){
  .site-header .desktop-nav{gap:13px;font-size:11px;letter-spacing:.06em}
  .site-header .desktop-nav .nav-contact{padding-left:12px;padding-right:12px}
}
@media (min-width:1101px) and (max-width:1220px){
  .site-header .desktop-nav{gap:10px;font-size:10.5px;letter-spacing:.04em}
}

/* v2.1 — consultation form status message + spam trap */
.conversation-form .form-status{margin:14px 0 0;font:500 13px/1.5 var(--sans);color:var(--navy)}
.conversation-form .form-status:empty{display:none}
.conversation-form .form-status.is-sent{padding:12px 14px;background:rgba(210,140,38,.12);border-left:3px solid var(--gold)}
.conversation-form .form-status.is-error{padding:12px 14px;background:rgba(179,45,46,.08);border-left:3px solid #b32d2e}
.conversation-form .bs-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
#inquiry-form{scroll-margin-top:110px}
