:root{--ink:#171614;--paper:#f1efe9;--white:#fff;--wine:#7f1724;--line:rgba(23,22,20,.22);--serif:Georgia,"Times New Roman",serif;--sans:Arial,Helvetica,sans-serif;--pad:clamp(1.25rem,4vw,4.75rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit}img{display:block;max-width:100%}button,input,textarea{font:inherit}.skip-link{position:fixed;top:-100px;left:1rem;z-index:1000;background:#fff;padding:.8rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;inset:0 0 auto 0;z-index:100;height:96px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.32);transition:.35s}.site-header.scrolled{height:76px;background:rgba(23,22,20,.96);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:1rem;text-decoration:none}.brand-mark{display:grid;place-items:center;width:52px;height:52px;background:var(--wine);font-family:var(--serif);font-size:1.45rem}.brand-mark span,.footer-brand>span span{font-size:.7em;font-style:italic}.brand-name{font-family:var(--serif);font-size:1.05rem;line-height:1}.brand-name i{font-weight:400}.brand-name small{display:block;margin-top:.38rem;font:500 .65rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}.desktop-nav{display:flex;gap:2.2rem}.desktop-nav a,.header-contact{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;text-decoration:none}.header-contact{padding-bottom:.35rem;border-bottom:1px solid}.menu-toggle{display:none;width:44px;height:44px;border:0;background:transparent;padding:10px}.menu-toggle span{display:block;height:1px;background:#fff;margin:7px 0}.mobile-menu{position:fixed;inset:0;z-index:90;background:var(--ink);color:#fff;padding:8rem var(--pad) 3rem}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu a{font:2.5rem/1.35 var(--serif);padding:.35rem 0;text-decoration:none}.hero{position:relative;min-height:100svh;color:#fff;display:flex;align-items:flex-end;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{filter:saturate(.55) contrast(1.05)}.hero-shade{background:linear-gradient(90deg,rgba(15,13,12,.78) 0%,rgba(15,13,12,.36) 60%,rgba(15,13,12,.22)),linear-gradient(0deg,rgba(15,13,12,.55),transparent 55%)}.hero-content{position:relative;width:100%;padding:clamp(9rem,18vh,13rem) var(--pad) clamp(2rem,5vh,4rem)}.eyebrow{margin:0 0 2rem;font-size:.72rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.eyebrow.light{color:rgba(255,255,255,.78)}h1,h2,.lead{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}h1{max-width:1100px;margin:0;font-size:clamp(3.2rem,7.7vw,7.5rem);line-height:.91}h1 em,h2 em,.lead em{font-weight:400;color:inherit}.hero-bottom{margin-top:3rem;display:flex;justify-content:space-between;align-items:end}.hero-bottom>p{max-width:550px;margin:0;font-size:clamp(1rem,1.4vw,1.25rem);color:rgba(255,255,255,.82)}.circle-link{width:92px;height:92px;border:1px solid rgba(255,255,255,.62);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;text-decoration:none;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;transition:.3s}.circle-link:hover{background:#fff;color:var(--ink)}.section{padding:clamp(5rem,10vw,9rem) var(--pad)}.section-index{display:grid;grid-template-columns:70px 1fr;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}.intro{display:grid;grid-template-columns:minmax(180px,1fr) 3fr;gap:3rem}.intro .section-index{grid-column:1/-1}.intro-copy{grid-column:2}.lead{max-width:1050px;margin:1rem 0 5rem;font-size:clamp(2.6rem,5.4vw,5.4rem);line-height:1.02}.lead em,.practice-heading em,.contact-copy em{color:var(--wine)}.intro-columns{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);max-width:900px;margin-left:auto}.intro-columns p{margin:0;font-size:1.08rem}.dark-section{background:var(--ink);color:#fff}.light-index{border-color:rgba(255,255,255,.2);color:rgba(255,255,255,.65)}.history-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:6rem;align-items:end;margin-top:5rem}.history-number{font:clamp(8rem,22vw,22rem)/.7 var(--serif);letter-spacing:-.08em;color:var(--wine)}.history-copy h2{margin:0 0 2rem;font-size:clamp(2.5rem,4.5vw,4.8rem);line-height:1}.history-copy p{margin:0;color:rgba(255,255,255,.68);font-size:1.08rem}.practice-heading{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:end;margin:4rem 0}.practice-heading h2,.offices-head h2,.contact-copy h2{margin:0;font-size:clamp(3rem,6vw,6rem);line-height:.98}.practice-heading p{max-width:400px;margin:0}.practice-list{border-top:1px solid var(--line)}.practice-item{border-bottom:1px solid var(--line)}.practice-item button{width:100%;display:grid;grid-template-columns:70px 1fr 40px;align-items:center;padding:1.6rem 0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.practice-item button>span{font-size:.72rem}.practice-item button strong{font:400 clamp(1.45rem,2.7vw,2.7rem)/1.1 var(--serif)}.practice-item button b{font-size:1.5rem;font-weight:300;transition:.25s}.practice-item button[aria-expanded=true] b{transform:rotate(45deg)}.practice-detail{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}.practice-detail p{overflow:hidden;margin:0 0 0 70px;max-width:720px;color:#5d5a55}.practice-item.open .practice-detail{grid-template-rows:1fr}.practice-item.open .practice-detail p{padding-bottom:1.7rem}.professional{background:#d7d2c8}.professional-card{display:grid;grid-template-columns:1fr 1fr;margin-top:4rem;min-height:620px}.portrait-wrap{overflow:hidden;min-height:500px;background:#bbb}.portrait-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(100%)}.professional-copy{background:var(--wine);color:#fff;padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}.professional-copy h2{font-size:clamp(3rem,5.3vw,5.4rem);line-height:.95;margin:.4rem 0 2.5rem}.professional-copy>p:not(.eyebrow){max-width:540px;color:rgba(255,255,255,.78)}.text-link{width:max-content;margin-top:2rem;padding-bottom:.45rem;border-bottom:1px solid;text-decoration:none;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.text-link span{margin-left:2rem}.offices-head{margin:4rem 0 5rem}.offices-head em{color:#a94853}.office-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.2)}.office-grid article{padding:2rem 1.5rem 1rem 0;border-right:1px solid rgba(255,255,255,.2)}.office-grid article:not(:first-child){padding-left:1.5rem}.office-grid article:last-child{border:0}.office-grid article>span{font-size:.7rem;color:#999}.office-grid h3{margin:2.4rem 0 1rem;font:2.3rem/1 var(--serif)}.office-grid p{min-height:72px;color:#aaa}.office-grid a{font-size:.9rem;text-underline-offset:.3rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,9rem);margin-top:5rem}.contact-copy p{margin:2.5rem 0 .7rem}.contact-copy>a{font-size:clamp(.85rem,1.2vw,1.1rem);text-underline-offset:.35rem}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.contact-form label{display:flex;flex-direction:column;gap:.45rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.contact-form label:nth-child(4),.contact-form .privacy,.submit-button,.form-note{grid-column:1/-1}.contact-form input,.contact-form textarea{border:0;border-bottom:1px solid var(--ink);background:transparent;border-radius:0;padding:.65rem 0;outline:0}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--wine);box-shadow:0 1px var(--wine)}.contact-form .privacy{flex-direction:row;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:.8rem}.privacy input{width:18px;height:18px;accent-color:var(--wine)}.submit-button{margin-top:1rem;display:flex;justify-content:space-between;padding:1.2rem 1.4rem;border:0;background:var(--wine);color:#fff;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}.form-note{margin:0;color:#666;font-size:.78rem}.site-footer{background:#0d0c0b;color:#fff;padding:4rem var(--pad);display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:3rem;font-size:.8rem}.footer-brand{display:flex;align-items:center;gap:1.3rem}.footer-brand>span{font:2rem var(--serif);color:#c35a65}.footer-brand p,.site-footer p{margin:0}.site-footer a{color:#aaa}.footer-legal{display:flex;gap:1.3rem;justify-content:flex-end;align-items:end}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.desktop-nav,.header-contact{display:none}.menu-toggle{display:block}.site-header{height:78px}.brand-mark{width:45px;height:45px}.hero-content{padding-top:9rem}.hero-bottom{align-items:center}.circle-link{width:78px;height:78px}.intro{display:block}.intro-copy{margin-top:3rem}.history-grid,.practice-heading,.contact-grid{grid-template-columns:1fr}.history-grid{gap:4rem}.history-number{font-size:10rem}.professional-card{grid-template-columns:1fr}.office-grid{grid-template-columns:1fr 1fr}.office-grid article:nth-child(2){border-right:0}.office-grid article:nth-child(n+3){border-top:1px solid rgba(255,255,255,.2)}.site-footer{grid-template-columns:1fr 1fr}.footer-legal{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:600px){.brand-name{display:none}.hero-content{padding-bottom:2rem}.hero-bottom{display:block}.hero-bottom>p{padding-right:1rem}.circle-link{margin:2rem 0 0 auto}h1{font-size:3.3rem}.section{padding-top:4.5rem;padding-bottom:4.5rem}.lead{margin-bottom:3rem}.intro-columns{grid-template-columns:1fr}.practice-heading{gap:1.5rem;margin:3rem 0}.practice-item button{grid-template-columns:35px 1fr 30px}.practice-detail p{margin-left:35px}.professional-card{margin-top:3rem}.portrait-wrap{min-height:420px}.office-grid{grid-template-columns:1fr}.office-grid article,.office-grid article:not(:first-child){padding:1.8rem 0;border-right:0;border-top:1px solid rgba(255,255,255,.2)}.office-grid article:first-child{border-top:0}.office-grid p{min-height:0}.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1}.site-footer{grid-template-columns:1fr}.footer-legal{flex-wrap:wrap}.mobile-menu a{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}

/* Official brand asset */
.team-section h2{font:400 clamp(32px,5vw,55px)/1.15 Georgia,serif;margin:0 0 36px}
.team-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 48px;padding:0;margin:0}
.team-list li{border-top:1px solid #cfc7c4;padding:24px 0;font:400 clamp(22px,2.5vw,30px)/1.3 Georgia,serif}
.team-list small{display:block;font:16px/1.6 Arial,sans-serif;color:#55464b;margin-top:12px}
.collaborators{margin-top:70px}.collaborators h2{font-size:clamp(28px,4vw,40px);color:#7f1724}
@media(max-width:650px){.team-list{grid-template-columns:1fr}}
.quick-contact{display:flex;gap:8px;flex-shrink:0}.quick-contact a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid currentColor;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}.quick-contact a:last-child{background:#7f1724;color:white;border-color:#7f1724}.group-page .quick-contact a:last-child{background:#9bc8ee;color:#071d38;border-color:#9bc8ee}
@media(max-width:1350px){.desktop-nav{display:none}.menu-toggle{display:block}}
@media(max-width:600px){.site-header,.site-header.scrolled{height:142px;flex-wrap:wrap;align-content:center;gap:8px}.site-header .brand img,.site-header.scrolled .brand img{width:150px;max-height:65px;object-fit:contain}.quick-contact{order:3;width:100%}.quick-contact a{flex:1}.inner-page main{padding-top:142px!important}.hero-content{padding-top:185px}.mobile-menu{padding-top:165px}}
.inner-page main{padding-top:110px}
.inner-page .site-header,.site-header.scrolled{background:#fff;color:#29131b}
.inner-page .brand img,.site-header.scrolled .brand img{filter:none;width:190px}
.inner-page .menu-toggle span,.scrolled .menu-toggle span{background:#29131b}
.desktop-nav{gap:1rem}.desktop-nav a,.header-contact{font-size:14px;letter-spacing:0}
[aria-current=page]{text-decoration:underline!important;text-underline-offset:6px}
.page-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:40px}
.page-grid>a,.page-grid>article{padding:28px 0;border-top:1px solid currentColor;text-decoration:none}
.page-grid h3{font:32px/1.15 Georgia,serif;margin:0 0 16px}.page-grid p{line-height:1.65}
.home-links h2,.group-callout h2,.group-services h2,.group-contact h2{font-size:clamp(32px,5vw,60px);line-height:1.1}
.group-callout,.group-page{background:#071d38;color:#f4f8fc}
.group-page .site-header,.group-page .site-header.scrolled{background:#071d38;color:#fff;border-bottom:1px solid #35506c}
.group-brand{display:block;font:28px Georgia,serif}.group-brand small{display:block;font:11px Arial,sans-serif;letter-spacing:1.5px;margin-top:6px}
.group-page .menu-toggle span{background:#fff}.group-page .mobile-menu{background:#071d38}
.group-hero{background:linear-gradient(110deg,#071d38,#123861)}
.group-hero h1{font-size:clamp(42px,6vw,80px);line-height:1.05}
.group-page em,.group-page .eyebrow{color:#9bc8ee}
.group-intro{max-width:640px;font-size:20px;line-height:1.6;margin-top:32px}
.territories{display:flex;flex-wrap:wrap;gap:30px;border-top:1px solid #35506c;margin-top:45px;padding-top:28px;color:#9bc8ee}
.group-services{background:#0d294c}.group-page .section-index{border-color:#35506c}
.group-page .page-grid>article{border-color:#35506c}.group-page .page-grid p{color:#d3dfeb}
.reveal{opacity:1;transform:none}.section{scroll-margin-top:110px}
.site-footer{background:#e9e6e1;color:#342b2d;border-top:1px solid #cfc7c4;align-items:center}
.site-footer a{color:#55464b;text-underline-offset:4px}
.footer-brand{background:transparent;padding:0}
.footer-brand img{width:min(235px,100%);height:auto}
.footer-legal{flex-wrap:wrap;align-items:center}
.group-page .site-footer{background:#e4ebf2;color:#173451;border-top-color:#bfcddc}
.group-page .site-footer a{color:#294866}
.group-page .footer-brand img{filter:grayscale(1) brightness(.55) sepia(1) saturate(3) hue-rotate(165deg)}
@media(max-width:1100px){.desktop-nav,.header-contact{display:none}.menu-toggle{display:block}}
@media(max-width:650px){.page-grid{grid-template-columns:1fr}.group-brand{font-size:23px}.inner-page main{padding-top:96px}}
.brand{gap:0}
.brand img{width:clamp(175px,19vw,265px);height:auto;filter:brightness(0) invert(1)}
.site-header.scrolled .brand img{filter:none}
.footer-brand{gap:0}
.footer-brand img{width:min(300px,100%);height:auto}
@media(max-width:600px){.brand img{width:170px}}

/* Home: centered desktop identity and clearer legal presentation. */
.home-page .hero-image{filter:saturate(1.16) contrast(1.05) brightness(1.04)}
.home-page .hero-quote{max-width:640px;font-family:var(--serif);font-size:clamp(1.2rem,1.65vw,1.55rem);line-height:1.55;color:rgba(255,255,255,.94)}
.home-page .eyebrow{font-size:.875rem;letter-spacing:.14em}
.home-page .link-arrow{display:inline-block;width:24px;height:24px;flex-shrink:0;vertical-align:middle}
.home-page .home-links h3{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.home-page .home-links .page-grid>a{padding:32px 0;min-width:0}
.home-page .home-links .page-grid p{max-width:550px;margin-bottom:0;color:#554b4c}
.home-page .home-links .page-grid>a:hover h3{color:var(--wine)}
.home-page .text-link .link-arrow{width:20px;height:20px;margin-left:.6rem}
.home-page .circle-link{flex-shrink:0;font-size:.875rem;letter-spacing:.06em}
.home-page a:focus-visible{outline:2px solid currentColor;outline-offset:6px}
@media(min-width:901px){
  .home-page .site-header{height:160px;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:100px 60px;column-gap:1rem;align-items:center}
  .home-page .site-header .brand{grid-column:2;grid-row:1;justify-self:center}
  .home-page .site-header .brand img{width:235px;max-height:90px;object-fit:contain}
  .home-page .site-header .quick-contact{grid-column:3;grid-row:1;justify-self:end}
  .home-page .site-header .desktop-nav{display:flex;grid-column:1/-1;grid-row:2;justify-content:center;gap:clamp(1.5rem,3vw,3rem)}
  .home-page .site-header .menu-toggle{display:none}
  .home-page .site-header.scrolled{height:132px;grid-template-rows:78px 54px}
  .home-page .site-header.scrolled .brand img{width:190px;max-height:72px}
  .home-page .hero-content{padding-top:215px}
  .home-page .home-links{scroll-margin-top:132px}
}
@media(max-width:900px){.home-page .home-links{scroll-margin-top:90px}}
@media(max-width:600px){
  .home-page .home-links{scroll-margin-top:150px}
  .home-page .hero-quote{font-size:1.25rem}
  .home-page .home-links h3{font-size:1.75rem}
  .home-page .eyebrow{letter-spacing:.1em}
}

/* Home: Mussano Group identity and international scope. */
.home-page .group-callout-logo{width:clamp(250px,32vw,420px);height:auto;margin:0 0 2.5rem}
.home-page .group-callout h2{max-width:1050px;margin:0 0 1.5rem;font-size:clamp(2.1rem,5vw,4.5rem);line-height:1.12}
.home-page .group-callout h2 em{color:#9bc8ee}
.home-page .group-callout .group-locations{color:#9bc8ee;line-height:1.8;margin:0 0 2.5rem}
.home-page .group-callout-copy{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,4rem);max-width:1120px}
.home-page .group-callout-copy p{margin:0;color:#d3dfeb;font-size:1.125rem;line-height:1.75}
.home-page .group-callout .text-link{display:inline-flex;align-items:center;max-width:100%;font-size:.875rem;letter-spacing:.08em;margin-top:2.5rem}
@media(max-width:700px){.home-page .group-callout-copy{grid-template-columns:1fr}.home-page .group-callout-logo{width:min(320px,100%);margin-bottom:2rem}.home-page .group-callout h2 br{display:none}}

/* Shared footer: operating office and centered mobile identity. */
.site-footer{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);font-size:.875rem}
.site-footer>div{min-width:0}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem}
.footer-contact .footer-office-label{font-weight:700;font-size:1rem}
.footer-contact address{font-style:normal;font-size:1rem;line-height:1.6}
.footer-contact a{overflow-wrap:anywhere;max-width:100%;padding:.25rem 0}
.footer-contact .footer-cities{margin-top:.6rem;line-height:1.7}
@media(max-width:900px){
 .site-footer{grid-template-columns:minmax(0,1fr);text-align:center;gap:2rem}
 .site-footer .footer-brand{width:100%;justify-content:center}
 .site-footer .footer-brand img{margin-inline:auto}
 .site-footer .footer-contact{align-items:center}
 .site-footer .footer-legal{grid-column:1;justify-content:center}
}

/* Professionals: family history and three generations. */
.professionals-page .eyebrow,.professionals-page .section-index,.professionals-page .text-link{font-size:.875rem}
.family-history .history-grid{align-items:center;grid-template-columns:1fr 1.25fr;gap:clamp(2rem,6vw,6rem);margin-top:3.5rem}
.family-years>span{display:block;font:clamp(8rem,21vw,21rem)/.9 var(--serif);letter-spacing:-.07em;color:#c67b86}
.family-years>p{margin:1.5rem 0 0;font-size:1rem;letter-spacing:.12em;text-transform:uppercase;color:#e5d0d4}
.family-history h1{font-size:clamp(2.7rem,4.8vw,5rem);line-height:1.07;margin-bottom:2rem}
.family-history h1 em{color:#e2a8b0}
.family-history .history-copy>p{color:#ddd5d5;line-height:1.75}
.family-history .history-copy .eyebrow{color:#e2a8b0;margin-bottom:1.5rem}
.family-profiles .professional-card{min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.family-profiles .portrait-wrap{position:relative;min-height:0;aspect-ratio:3/4;background:#f5f5f5}
.family-profiles .portrait-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.family-profiles .professional-copy{padding:clamp(1.5rem,4vw,4.5rem);min-width:0}
.family-profiles .professional-copy h2{font-size:clamp(2.25rem,4vw,4.5rem);line-height:1.06;margin-bottom:1.5rem}
.family-profiles .professional-copy>p:not(.eyebrow){color:#f1dfe2;font-size:1.0625rem;line-height:1.75;margin:0 0 1rem}
.family-profiles .professional-copy .eyebrow{margin-bottom:1rem;letter-spacing:.1em}
.associates-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,6vw,6rem)}
.associates-grid h2{font-size:clamp(2.25rem,4vw,4.5rem);line-height:1.1;margin:0;color:var(--wine)}
.associates-grid p{margin:0 0 1.5rem;font-size:1.125rem;line-height:1.75}
.associates-grid .text-link{display:inline-block;max-width:100%;letter-spacing:.05em}
@media(max-width:900px){.family-history .history-grid,.family-profiles .professional-card,.associates-grid{grid-template-columns:1fr}.family-years>span{font-size:clamp(8rem,28vw,14rem)}.family-history .history-grid{gap:3rem}.family-profiles .professional-copy{padding:2.25rem}.family-profiles .professional-copy h2{font-size:clamp(2.4rem,7vw,4rem)}.family-profiles .portrait-wrap{max-height:720px}}
@media(max-width:600px){.family-profiles .professional-copy{padding:2rem 1.5rem}.professionals-page .section-index{grid-template-columns:45px 1fr;letter-spacing:.08em}.family-history h1{font-size:2.75rem}.family-profiles .text-link{letter-spacing:.05em}.associates-grid .text-link span{margin-left:.5rem}}

/* Operating office and consistent Group identity. */
.offices-page .operating-office-intro{max-width:650px;font-size:1.25rem;line-height:1.65;margin:2rem 0 0;color:#e6dddd}
.offices-page .office-grid .office-role{font-size:.875rem;font-weight:700;color:#efb2bc;letter-spacing:.06em}
.offices-page .operating-office{border-top:3px solid #c67b86}
.group-page .site-header .group-brand img,.group-page .site-header.scrolled .group-brand img{width:220px;height:auto;max-height:76px;object-fit:contain;filter:none}
.group-page .group-hero-logo{width:clamp(260px,35vw,440px);height:auto;max-width:100%;margin:0 0 2.5rem}
.group-page .group-footer-brand{background:#071d38;padding:1rem;justify-content:center}
.group-page .group-footer-brand img{width:min(300px,100%);height:auto;filter:none}
@media(max-width:600px){.group-page .site-header .group-brand img,.group-page .site-header.scrolled .group-brand img{width:170px;max-height:65px}.group-page .group-hero-logo{width:min(320px,100%)}}

/* Studio: history and original office photographs */
.studio-page .studio-opening{padding-bottom:0}
.studio-page .studio-opening h1{font-size:clamp(2.7rem,6.3vw,6.5rem);line-height:1.06;max-width:1200px;margin:3rem 0}
.studio-page h1 em,.studio-page .studio-section-heading h2 em,.studio-page .studio-feature h2 em{color:var(--wine)}
.studio-page figure{margin:0;min-width:0}
.studio-page figure img{width:100%;height:auto;display:block}
.studio-page .studio-panorama{width:100%}
.studio-page .studio-history,.studio-page .studio-feature,.studio-page .studio-values{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,7rem);align-items:center}
.studio-page .studio-history{align-items:start;padding-bottom:0}
.studio-page .studio-section-heading .eyebrow{display:block;margin-bottom:1.5rem;color:var(--wine)}
.studio-page h2{font-size:clamp(2.2rem,3.5vw,4.2rem);line-height:1.08;margin:0 0 2rem}
.studio-page .studio-prose p{font-size:1.0625rem;line-height:1.8;margin:0 0 1.4rem;max-width:680px}
.studio-page .studio-prose p:last-child{margin-bottom:0}
.studio-page .studio-values{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
.studio-page .studio-values p{color:rgba(255,255,255,.8)}
.studio-page .studio-values h2 em{color:#d3a5a9}
@media(max-width:800px){
 .studio-page .studio-history,.studio-page .studio-feature,.studio-page .studio-values{grid-template-columns:1fr;gap:2.5rem}
 .studio-page .studio-opening h1{margin:2rem 0}
 .studio-page .studio-opening h1 br{display:none}
 .studio-page .studio-prose p{max-width:none}
}

/* Mussano Group: international collaboration and compact portrait */
.group-page .group-story h2,.group-page .group-locations h2,.group-page .group-services h2,.group-page .group-contact h2{font-size:clamp(2.2rem,4.5vw,4.7rem);line-height:1.08;margin:2.5rem 0}
.group-page .group-story-copy{max-width:900px}
.group-page .group-story p,.group-page .group-locations p,.group-page .group-contact p{font-size:1.0625rem;line-height:1.75;color:#d3dfeb}
.group-page .gregorio-profile{display:grid;grid-template-columns:190px minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;border-top:1px solid #35506c;padding-top:2.5rem;margin-top:3rem;max-width:1060px}
.group-page .gregorio-profile figure{margin:0;width:190px;max-width:100%}
.group-page .gregorio-profile img{display:block;width:100%;height:auto}
.group-page .gregorio-profile h3{font:400 2rem/1.15 var(--serif);margin:0 0 .7rem}
.group-page .gregorio-profile .gregorio-studies{font-size:.9375rem;line-height:1.55;color:#9bc8ee;margin:0 0 1.5rem;max-width:530px}
.group-page .group-locations{background:#0a223e}
.group-page .group-locations h3{font:400 2rem/1.2 var(--serif);margin:0 0 .8rem}
.group-page .group-locations h4{font-size:1rem;font-weight:600;color:#9bc8ee;margin:0 0 1rem}
.group-page .group-services .page-grid h3{font-size:1.3rem;line-height:1.35}
.group-page .group-services .page-grid p{line-height:1.75}
@media(max-width:650px){.group-page .gregorio-profile{grid-template-columns:1fr;gap:1.5rem}.group-page .gregorio-profile figure{width:140px}.group-page .group-story h2,.group-page .group-locations h2,.group-page .group-services h2,.group-page .group-contact h2{overflow-wrap:break-word}}

/* Closing profile: compact portrait and clearer text hierarchy */
.group-page .group-profile-section{background:#0a223e;padding-top:3rem;padding-bottom:4rem}
.group-page .gregorio-profile-final{max-width:1060px;margin:2rem auto 0;padding:clamp(1.5rem,3vw,3rem);border:1px solid #36516d;background:#102e4d;grid-template-columns:160px minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem);align-items:center}
.group-page .gregorio-profile-final figure{width:160px}
.group-page .gregorio-profile-final img{border-radius:2px}
.group-page .gregorio-profile-final .eyebrow{font-size:.875rem;letter-spacing:.1em;margin:0 0 .75rem}
.group-page .gregorio-profile-final h2{font:400 clamp(1.8rem,3vw,2.6rem)/1.12 var(--serif);letter-spacing:-.025em;margin:0 0 .9rem;color:#fff}
.group-page .gregorio-profile-final .gregorio-studies{font-size:.9375rem;line-height:1.6;color:#b8d7ef;margin:0 0 1.3rem;max-width:none}
.group-page .gregorio-profile-final .gregorio-bio{font-size:1rem;line-height:1.75;color:#d3dfeb;margin:0;max-width:690px}
@media(max-width:650px){.group-page .gregorio-profile-final{grid-template-columns:1fr;gap:1.5rem}.group-page .gregorio-profile-final figure{width:120px}.group-page .group-profile-section{padding-bottom:3rem}.group-page .gregorio-profile-final .gregorio-studies br{display:none}}
