.brand-wordmark { display:inline-flex; flex-direction:column; align-items:center; color:inherit; line-height:1; }
.brand-wordmark b { white-space:nowrap; font:300 clamp(1.05rem,1.6vw,1.48rem)/1 Manrope,Arial,sans-serif; letter-spacing:.13em; }
.brand-wordmark small { align-self:center; margin-top:.42rem; font:500 .66rem/1 DM Sans,Arial,sans-serif; letter-spacing:.48em; text-indent:.48em; }
.header-brand { width:auto !important; height:auto !important; min-height:0 !important; aspect-ratio:auto !important; border-radius:0 !important; overflow:visible !important; }
.header-brand .brand-wordmark { align-items:center; }
.header-brand .brand-wordmark b { font-size:clamp(1.2rem,1.9vw,1.75rem); font-weight:400; text-shadow:0 1px 14px #0008; }
.header-brand .brand-wordmark small { font-size:.68rem; }
.site-header { grid-template-columns:auto 1fr; min-height:112px; }
.site-header nav { justify-self:end; }
.hero-copy { padding-top:148px; }
.hero-meta { display:grid; grid-template-columns:repeat(3,max-content); gap:clamp(.65rem,2vw,1.8rem); }
.hero-meta span { white-space:nowrap; }
.client-name { border-left-color:#f4ae11; }
.client-name strong { color:#4f8fe7 !important; font-size:clamp(1.9rem,3.8vw,3.9rem) !important; letter-spacing:-.035em; }
.work-label { color:#f4ae11 !important; font-size:.86rem !important; }
.client-proof { max-width:28rem !important; color:#d8e5f8 !important; font-size:1.02rem; line-height:1.7; }
.compact-work .case-intro h2 em { color:#f4ae11; }
.compact-proof { color:#f4ae11; }
.pricing .pricing-intro .section-label { color:#d8bd84; font-size:clamp(.88rem,1.2vw,1.1rem); }
.faq-title { color:#824631 !important; font-size:clamp(1rem,1.7vw,1.35rem) !important; letter-spacing:.11em !important; }
.bridge-grid-four figure { display:flex; flex-direction:column; }
.bridge-grid-four { gap:clamp(1.5rem,2.6vw,2.8rem) !important; }
.bridge-grid-four img { order:0; }
.bridge-grid-four figcaption { order:1; margin:0; padding:1rem 0 1.15rem; border-top:0; border-bottom:1px solid #a6a7a7; }
.concept-grid-edited figcaption { padding:1rem 0 1.15rem; border-top:0; border-bottom:1px solid #9fa2a5; }
.concept-grid-edited .feature img { object-fit:contain; background:#0a0d12; }
.compact-work .event-media.event-media-three { grid-template-columns:1.1fr .68fr 1fr; }
.compact-work .event-story-dolce .event-media figure:nth-child(2) img { object-fit:cover; padding:0; background:#151515; }
.compact-work .portrait-detail img { object-position:center 46%; }
.compact-work .video-detail video { display:block; width:100%; background:#05080d; }
.contact-logo { display:flex; align-items:center; justify-content:center; min-height:320px; }
.contact-wordmark { color:#fff; text-align:center; }
.contact-wordmark b { font-size:clamp(2rem,4.6vw,5.3rem); font-weight:300; letter-spacing:.11em; }
.contact-wordmark small { margin-top:1rem; font-size:clamp(.72rem,1.1vw,1.1rem); letter-spacing:.75em; text-indent:.75em; }
.footer-wordmark { align-items:center; color:#fff; }
.footer-wordmark b { font-size:clamp(1.2rem,2vw,1.75rem); }
.social-action,.social-link { position:relative; z-index:3; display:inline-flex; align-items:center; gap:.6rem; pointer-events:auto; touch-action:manipulation; }
.social-action img,.social-link img { width:1.05rem; height:1.05rem; object-fit:contain; flex:0 0 auto; }
.contact-actions .social-action { padding:.75rem 1rem !important; border:1px solid #ffffff73 !important; }
.contact-actions .social-action:hover,.contact-actions .social-action:focus-visible { color:#151515; background:#fff; }
.contact-actions .social-action:hover img,.contact-actions .social-action:focus-visible img { filter:invert(1); }
.gallery-grid figcaption { padding:.75rem 0 1rem; border-bottom:1px solid rgba(255,255,255,.2); }
.newsletter { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(3rem,8vw,9rem); padding:clamp(5rem,9vw,8.5rem) 5vw; color:#f4f2ed; background:linear-gradient(135deg,#1a120f,#0a0d12); border-top:1px solid rgba(255,255,255,.16); }
.newsletter h2 { margin:.5rem 0 1.25rem; font:300 clamp(3rem,5vw,5.5rem)/.95 Manrope,Arial,sans-serif; letter-spacing:-.055em; }
.newsletter-copy > p:last-child { max-width:34rem; color:#ffffffa8; line-height:1.7; }
.newsletter-form { align-self:end; }
.newsletter-form > label:first-child { display:block; margin-bottom:.6rem; color:#c3c6cc; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; }
.newsletter-row { display:grid; grid-template-columns:1fr auto; border-bottom:1px solid #ffffff6b; }
.newsletter-row input { min-width:0; padding:1rem 0; color:#fff; background:transparent; border:0; outline:0; font-size:1.15rem; }
.newsletter-row button { padding:0 0 0 1.5rem; color:#fff; background:transparent; border:0; cursor:pointer; font-weight:600; }
.newsletter-consent { display:flex; gap:.75rem; margin-top:1.15rem; color:#aeb2b9; font-size:.78rem; line-height:1.55; }
.newsletter-consent input { flex:0 0 auto; width:17px; height:17px; margin-top:.12rem; accent-color:#c9a66d; }
.newsletter-consent a { color:#fff; border-bottom:1px solid #ffffff66; }
.newsletter-status { min-height:1.4rem; margin:.8rem 0 0; color:#d8c49c; font-size:.82rem; }
.newsletter-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; opacity:0 !important; }
.site-footer .footer-main { grid-template-columns:1.2fr 1fr 1fr; }
.legal-shell { min-height:100vh; color:#202226; background:#f4f2ed; }
.legal-header { display:flex; justify-content:space-between; align-items:center; gap:2rem; padding:1.5rem 5vw; color:#f4f2ed; background:#080b0f; border-bottom:1px solid #ffffff22; }
.legal-header > a:last-child { font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; }
.legal-main { width:min(900px,90vw); margin:0 auto; padding:clamp(4rem,8vw,7rem) 0; }
.legal-kicker { margin:0 0 1rem; color:#7b4a36; font-size:.72rem; font-weight:600; letter-spacing:.17em; text-transform:uppercase; }
.legal-main h1 { margin:0 0 1rem; font:300 clamp(3.2rem,7vw,6.4rem)/.95 Manrope,Arial,sans-serif; letter-spacing:-.06em; }
.legal-updated { margin:0 0 4rem; color:#686d73; }
.legal-section { padding:2rem 0; border-top:1px solid #c9c7c1; }
.legal-section h2 { margin:0 0 1rem; font:400 clamp(1.35rem,2.2vw,1.8rem)/1.2 Manrope,Arial,sans-serif; }
.legal-section p,.legal-section li { color:#4f5359; line-height:1.75; }
.legal-section ul { padding-left:1.2rem; }
.legal-section a { color:#6f3b2b; border-bottom:1px solid #6f3b2b55; }
.legal-note { padding:1.2rem 1.4rem; background:#e8e2d8; }
.legal-form { display:grid; gap:1rem; max-width:620px; }
.legal-form label { display:grid; gap:.4rem; color:#555; font-size:.8rem; }
.legal-form input,.legal-form select { min-height:48px; padding:.7rem .8rem; border:1px solid #aaa; background:#fff; }
.legal-form button { min-height:50px; border:0; color:#fff; background:#0a0d12; cursor:pointer; }
@media (max-width:760px){
 .newsletter{grid-template-columns:1fr;padding-left:22px;padding-right:22px;}
 .newsletter-row{grid-template-columns:1fr;}
 .newsletter-row button{padding:1rem 0;text-align:left;}
 .site-footer .footer-main{grid-template-columns:1fr;}
 .site-header{min-height:92px;padding:10px 22px;}
 .site-header nav{display:none;}
 .header-brand .brand-wordmark b{font-size:1.04rem;}
 .header-brand .brand-wordmark small{font-size:.54rem;}
 .hero-copy{padding-top:116px;}
 .hero-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;}
 .hero-meta span{font-size:.58rem;letter-spacing:.055em;text-align:center;}
 .compact-work .event-media.event-media-three{grid-template-columns:1fr;}
 .compact-work .event-media.event-media-three .portrait-detail img{height:auto;aspect-ratio:3/4;object-fit:cover;}
 .contact-logo{min-height:180px;}
 .contact-wordmark b{font-size:clamp(1.5rem,7vw,2.35rem);}
 .contact-wordmark small{font-size:.58rem;}
 .legal-header{padding:1.25rem 22px;}
}
