/* v8 typography. This file loads last so brand and actions have clear hierarchy. */
:root{
 --header-brand-size:18px;
 --header-logo-size:41px;
 --hero-eyebrow-size:14px;
 --mobile-brand-size:17px;
 --mobile-logo-size:40px;
 --mobile-eyebrow-size:12.5px;
 --sticky-label-size:15px;
 --sticky-button-size:14.5px;
}
.compact-page .site-header .header-inner{
 min-height:92px;display:grid;grid-template-columns:auto 1fr auto;
 align-items:center;gap:30px;
}
.compact-page .site-header .brand{
 display:flex;align-items:center;gap:12px;min-width:0;
 font-size:var(--header-brand-size);font-weight:800;
 line-height:1.1;color:#2F241D;
}
.compact-page .site-header .brand-mark{
 font-size:var(--header-logo-size);font-weight:800;
 line-height:1;letter-spacing:-2.5px;flex:0 0 auto;padding-right:0;
}
.compact-page .site-header .brand>span:last-child{min-width:0}
.compact-page .site-header .brand small{
 display:block;font-size:10px;font-weight:600;
 letter-spacing:.08em;line-height:1.4;color:#B85C38;margin-top:7px;
}
.compact-page .site-header nav{justify-self:center;align-items:center;gap:24px;font-size:13px;min-width:0}
.compact-page .site-header .header-inner>.button{
 justify-self:end;white-space:nowrap;flex-shrink:0;
 font-size:15px;font-weight:800;line-height:1.35;
 padding:14px 23px;min-height:50px;border-radius:999px;gap:10px;
 box-shadow:0 10px 24px rgba(228,77,38,.25);
}
.compact-page .site-header .header-inner>.button:hover{
 transform:translateY(-2px);box-shadow:0 13px 28px rgba(228,77,38,.32);
}
.compact-page .site-header .button .ui-arrow{width:19px;height:19px;min-width:19px;flex-basis:19px}
.compact-page .hero .hero-eyebrow{
 display:inline-flex;align-items:center;gap:10px;width:fit-content;max-width:100%;
 padding:9px 14px;margin-bottom:25px;
 background:#FFF1E6;border:1px solid #E8CDB7;border-radius:999px;
 color:#B85C38;font-size:var(--hero-eyebrow-size);font-weight:800;
 letter-spacing:.06em;line-height:1.5;text-transform:uppercase;
 text-align:left;box-shadow:0 4px 14px rgba(133,73,38,.035);
}
.compact-page .hero .hero-eyebrow:before{
 content:'';display:block;flex:0 0 7px;width:7px;height:7px;
 border-radius:50%;background:#D98A4A;box-shadow:0 0 0 4px #D98A4A12;
}
.compact-page .hero-eyebrow-text{display:block;min-width:0;white-space:normal;overflow-wrap:break-word}
@media(max-width:1100px){
 .compact-page .site-header .header-inner{gap:22px}
 .compact-page .site-header nav{gap:17px;font-size:12px}
 .compact-page .site-header .header-inner>.button{padding:13px 19px;font-size:14.5px}
}
@media(max-width:1024px){
 .compact-page .site-header nav{display:none}
 .compact-page .site-header .header-inner{grid-template-columns:minmax(0,1fr) auto;gap:18px;min-height:87px}
}
@media(max-width:600px){
 html{scroll-padding-top:90px}
 .compact-page .site-header .container{padding-left:18px;padding-right:18px}
 .compact-page .site-header .header-inner{min-height:84px;gap:10px;grid-template-columns:minmax(0,1fr) auto}
 .compact-page .site-header .brand{font-size:var(--mobile-brand-size);font-weight:800;gap:10px;line-height:1.05}
 .compact-page .site-header .brand-mark{font-size:var(--mobile-logo-size);letter-spacing:-2.4px}
 .compact-page .site-header .brand small{
  display:block;font-size:9px;font-weight:600;letter-spacing:.06em;
  line-height:1.4;color:#B85C38;margin-top:6px;white-space:nowrap;
 }
 .compact-page .site-header .header-inner>.button{
  font-size:13.5px;font-weight:800;padding:11px 14px;min-height:46px;
  gap:8px;border-radius:999px;line-height:1.3;
 }
 .compact-page .site-header .button .ui-arrow{width:17px;height:17px;min-width:17px;flex-basis:17px}
 .compact-page .hero .hero-eyebrow{
  padding:9px 12px;border-radius:18px;gap:10px;
  font-size:var(--mobile-eyebrow-size);font-weight:800;
  letter-spacing:.04em;line-height:1.4;margin-bottom:22px;
 }
 .compact-page .hero .hero-eyebrow:before{flex-basis:6px;width:6px;height:6px}
 .compact-page .hero h1{font-size:35px;line-height:1.3;margin-top:0}
 .compact-page .mobile-cta{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:10px 14px;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));
  background:rgba(255,247,239,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  border-top:1px solid #E8CDB7;box-shadow:0 -8px 24px rgba(47,36,29,.08);
 }
 .compact-page .mobile-cta>span{
  display:block;flex:1 1 auto;min-width:0;max-width:150px;
  font-size:var(--sticky-label-size);font-weight:800;color:#2F241D;line-height:1.25;
 }
 .compact-page .mobile-cta .button:not(.secondary){
  flex:0 0 auto;width:auto;font-size:var(--sticky-button-size);font-weight:800;line-height:1.3;
  padding:12px 16px;min-height:48px;border-radius:999px;gap:8px;
 }
 .compact-page .mobile-cta .button .ui-arrow{width:18px;height:18px;min-width:18px;flex-basis:18px}
 .compact-page .mobile-cta.is-hidden{display:none}
 .compact-page footer{padding-bottom:calc(120px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:379px){
 .compact-page .site-header .button .ui-arrow{display:none}
 .compact-page .site-header .header-inner>.button{padding:11px 13px;font-size:13px}
 .compact-page .site-header .brand{font-size:16px}
 .compact-page .hero h1{font-size:34px}
}
@media(max-width:359px){
 .compact-page .site-header .container{padding-left:14px;padding-right:14px}
 .compact-page .site-header .header-inner{gap:8px}
 .compact-page .site-header .brand{gap:8px}
 .compact-page .site-header .brand small{font-size:8.5px;letter-spacing:.035em}
 .compact-page .site-header .brand-mark{font-size:38px}
 .compact-page .mobile-cta{gap:9px;padding-left:12px;padding-right:12px}
 .compact-page .mobile-cta>span{font-size:14.5px;max-width:120px}
 .compact-page .mobile-cta .button:not(.secondary){font-size:14px;padding:12px 13px;gap:7px}
 .compact-page .mobile-cta .button .ui-arrow{display:none}
}
@media(prefers-reduced-motion:reduce){.compact-page .site-header .header-inner>.button:hover{transform:none}}
@media print{.compact-page .site-header,.compact-page .mobile-cta{display:none!important}}
