@import url('/assets/fonts/brand-fonts.css');
:root{--bg:#2b211a;--panel:#5b4632;--text:#fff5e4;--muted:#e0ccb1;--accent:#f4d9a0;--amber:#c8792c;--line:#806348;--display-font:'Cormorant Garamond',Georgia,serif;--label-font:'Quicksand',sans-serif}
body{font-weight:500}.header nav,.button,.text-link,.services-strip{font-weight:600;letter-spacing:.015em}.header nav{font-size:16px}.button,.button.small,.price-card .button,.text-link{font-size:15px}.services-strip.reveal-panel{font-size:16px}
.header .button{background:var(--accent)}.header nav a:hover,.text-link:hover{color:var(--accent)}
.reveal-panel{border-color:#f4d9a035}.services-strip.reveal-panel{border-color:#c8792c88}.price-card.featured{border-color:var(--amber);box-shadow:inset 0 3px 0 var(--amber)}.recommended{background:var(--amber);color:#23180f}.price-card .number{color:var(--accent)}
.team-portrait{border-color:#c8792c88}::selection{background:#c8792c;color:#fff5e4}
.brand-mark{position:relative;display:block;isolation:isolate;color:var(--accent);aspect-ratio:1.7;font-size:clamp(200px,37vw,550px);width:min(76vw,950px);filter:drop-shadow(0 3px 18px #0008)}
.brand-mark:before,.brand-mark:after{content:'';position:absolute;width:48%;height:33%;border:1px solid #f4d9a08c;z-index:-1}
.brand-mark:before{left:0;top:8%;border-right:0;border-bottom:0}.brand-mark:after{right:0;bottom:4%;border-left:0;border-top:0}
.brand-script{font-family:'Allura',cursive;font-weight:400;font-size:1em;line-height:1;position:absolute;left:7%;top:4%;letter-spacing:-.065em;transform:rotate(-7deg)}
.brand-subline{font-family:'Epilogue',sans-serif;font-size:.105em;line-height:1.2;font-weight:600;letter-spacing:.06em;position:absolute;right:7%;bottom:20%;color:#fff5e4}
.hero-brand{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);pointer-events:none;animation:brand-arrive 1.7s cubic-bezier(.16,1,.3,1) both}
.hero-brand .brand-subline{animation:subline-arrive 1.5s .3s cubic-bezier(.16,1,.3,1) both}
.compact-brand{font-size:100px;width:175px;filter:none}.portfolio-page .header{height:auto;min-height:112px}.portfolio-page .header>a:first-child{flex-shrink:0}footer .compact-brand{width:150px;font-size:88px}
h1,h2,h3,.hero h1,.section h2,.price-card h3,.team-list .member-info h3{font-weight:500;letter-spacing:-.025em}.eyebrow,.number,.recommended{letter-spacing:.14em;font-size:12px}.team-list .member-info p{letter-spacing:.015em}
@keyframes brand-arrive{from{opacity:0;transform:translate(-50%,calc(-50% + 38px));filter:blur(9px)}to{opacity:1;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 18px #0008)}}
@keyframes subline-arrive{from{opacity:0;translate:0 16px}to{opacity:1;translate:0 0}}
@media(max-width:700px){.brand-mark.hero-brand{width:86vw;font-size:44vw;top:52%}.hero-brand .brand-subline{font-size:.12em;right:7%;bottom:17%}.header nav{font-size:14px;gap:21px}.header .button.small{font-size:14px}.portfolio-page .header .compact-brand{width:130px;font-size:78px}.portfolio-page .header nav{gap:26px}.services-strip.reveal-panel{font-size:14px}.price-card .button{font-size:15px}.brand-mark:before,.brand-mark:after{width:42%}}
@media(prefers-reduced-motion:reduce){.hero-brand,.hero-brand .brand-subline{animation:none}}

/* Original brush logo, with champagne lettering and amber Media/frame details. */
.original-brand{display:block;object-fit:contain;height:auto;filter:drop-shadow(0 3px 18px #0008)}
.original-brand.hero-brand{width:min(76vw,950px);height:auto;max-height:72svh}
.original-brand.compact-brand{width:175px;height:auto;filter:none}
footer .original-brand.compact-brand{width:150px;height:auto}
@media(max-width:700px){.original-brand.hero-brand{width:86vw;top:52%;height:auto}.portfolio-page .header .original-brand.compact-brand{width:130px;height:auto}}
