/* v48 — approved desktop panorama + reframed mobile composition */
.brand-logo-only{display:flex;align-items:center;gap:0;flex:0 0 auto;line-height:1;text-decoration:none}
.brand-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.brand-logo-img{width:240px;height:auto;max-height:52px;flex:0 0 auto;object-fit:contain;display:block;filter:none}
.brand-subtitle{margin-top:2px;color:#197c12;font-size:.64rem;font-weight:900;letter-spacing:.26em;line-height:1;text-transform:uppercase;white-space:nowrap}
.hero-v45{position:relative;min-height:0;aspect-ratio:1672/675;display:flex;align-items:stretch;overflow:hidden;isolation:isolate;background:#f6ecdd;color:var(--ink)}
.hero-v45-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;z-index:-3;display:block;animation:none!important;transform:none!important}
.hero-v45-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg,rgba(250,244,234,.98) 0%,rgba(250,244,234,.96) 23%,rgba(250,244,234,.80) 37%,rgba(250,244,234,.38) 49%,rgba(250,244,234,.07) 61%,rgba(250,244,234,0) 70%)}
.hero-v45::before,.hero-v45::after{display:none!important}
.hero-v45-shell{width:100%;display:flex;align-items:center;padding:4.6% 0 5.8%}
.hero-v45-copy{max-width:47%;margin:0}
.hero-v45 .eyebrow{color:var(--green-dark)}
.hero-v45 h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.75rem,4.55vw,5.1rem);line-height:.96;letter-spacing:-.045em;color:#0d2c18;margin:.24em 0 .27em}
.hero-v45 h1 span,.hero-v45 h1 em{display:block}
.hero-v45 h1 em{font-style:normal;color:var(--wine)}
.hero-v45 .hero-lead{color:#4d5750;max-width:555px;font-size:clamp(.96rem,1.18vw,1.1rem);line-height:1.5}
.hero-v45 .actions{margin-top:22px;display:flex;gap:13px;flex-wrap:wrap}
.hero-v45 .btn-primary{background:var(--green-2);color:#fff}
.hero-v45 .btn-secondary{background:#fff;color:var(--ink);border:1px solid rgba(18,32,23,.12)}
@media(max-width:980px){
  .brand-logo-img{width:210px;max-height:48px}
  .brand-subtitle{font-size:.58rem;letter-spacing:.24em}
  .hero-v45-copy{max-width:52%}
  .hero-v45 h1{font-size:clamp(2.05rem,5.4vw,3.45rem)}
  .hero-v45 .hero-lead{font-size:clamp(.78rem,1.55vw,.98rem)}
  .hero-v45 .actions{margin-top:14px;gap:9px}
  .hero-v45 .btn{padding:9px 13px;font-size:.76rem}
}
/* Real-phone breakpoint: some Android browsers report ~690 CSS px in portrait. */
@media(max-width:760px){
  .brand-logo-img{width:180px;max-height:42px}
  .brand-subtitle{margin-top:1px;font-size:.48rem;letter-spacing:.22em}
  .hero-v45{aspect-ratio:auto;min-height:clamp(330px,75vw,460px);align-items:stretch}
  .hero-v45-photo{inset:0 0 auto;height:55%;object-fit:cover;object-position:center 55%}
  .hero-v45-shade{background:linear-gradient(180deg,rgba(250,244,234,0) 0%,rgba(250,244,234,.08) 32%,rgba(250,244,234,.82) 50%,rgba(250,244,234,.99) 61%,rgba(250,244,234,1) 100%)}
  .hero-v45-shell{padding:0 0 5%;align-items:flex-end}
  .hero-v45-copy{max-width:100%;margin:0}
  .hero-v45 .eyebrow{font-size:clamp(.54rem,1.7vw,.68rem);letter-spacing:.11em;gap:7px}
  .hero-v45 .eyebrow::before{width:18px}
  .hero-v45 h1{font-size:clamp(2.4rem,11vw,3.75rem);line-height:.90;letter-spacing:-.055em;margin:.12em 0 .16em}
  .hero-v45 .hero-lead{display:none}
  .hero-v45 .actions{margin-top:10px;gap:8px;flex-wrap:nowrap}
  .hero-v45 .btn{padding:9px 14px;font-size:clamp(.70rem,2vw,.82rem);width:auto;white-space:nowrap;gap:6px}
  .motion-item{padding:10px 18px;font-size:.68rem;letter-spacing:.065em;gap:12px}
}
@media(max-width:520px){
  .brand-logo-img{width:160px;max-height:38px}
  .brand-subtitle{font-size:.44rem;letter-spacing:.2em}
  .hero-v45{min-height:330px}
  .hero-v45-photo{height:55%}
  .hero-v45-copy{max-width:100%}
  .hero-v45 h1{font-size:clamp(2.2rem,10.8vw,2.65rem)}
  .hero-v45 .actions{margin-top:8px}
  .hero-v45 .btn{padding:8px 12px;font-size:.70rem}
  .motion-item{padding:9px 14px;font-size:.62rem;gap:10px}
}
@media(prefers-reduced-motion:reduce){.hero-v45 *{animation:none!important;transition:none!important}}
