/* Dreambooth V17: mobile-only responsive presentation. Desktop styles remain unchanged. */
@media (max-width: 800px) {
  body > header { position:relative; display:flex !important; align-items:center !important; justify-content:center !important; min-height:88px; padding:18px 22px !important; background:#f1ebe2 !important; text-align:center; z-index:30; }
  body > header > a { display:block !important; margin:0 !important; text-decoration:none; }
  body > header > a strong { font-size:clamp(16px,4.1vw,22px) !important; letter-spacing:.21em !important; white-space:nowrap; }
  body > header .mobile-menu-toggle { position:absolute; left:20px; top:50%; transform:translateY(-50%); width:44px; height:44px; border:0; padding:10px 7px; background:transparent; color:#171511; cursor:pointer; display:flex; flex-direction:column; justify-content:space-around; align-items:stretch; z-index:2; }
  .mobile-menu-toggle span { display:block; height:2px; background:currentColor; width:100%; }
  body > header > nav { display:none !important; position:absolute; top:100%; left:0; right:0; background:#f1ebe2; padding:20px 25px 30px; box-shadow:0 12px 20px rgba(0,0,0,.12); margin:0 !important; flex-direction:column; align-items:stretch; gap:0 !important; text-align:left; }
  body > header.menu-open > nav { display:flex !important; }
  body > header > nav a { padding:14px 6px !important; font-size:17px !important; border-bottom:1px solid #d6cdc0 !important; }
  body > header .mobile-menu-toggle:focus-visible, body > header > nav a:focus-visible { outline:2px solid #111; outline-offset:3px; }
  .hero { background:#f1ebe2 !important; color:#111 !important; grid-template-columns:minmax(0,1fr) !important; min-height:0 !important; }
  .hero-text { padding:72px 6% 72px !important; text-align:center !important; }
  .hero-text h1 { font-family:Impact,'Arial Narrow','Oswald',Arial,sans-serif !important; font-stretch:condensed; font-size:clamp(48px,11.5vw,86px) !important; font-weight:900 !important; line-height:.98 !important; letter-spacing:-.025em !important; margin:0 auto 35px !important; overflow-wrap:normal !important; max-width:680px; }
  .hero-text > p { font-family:Arial,Helvetica,sans-serif !important; font-size:clamp(15px,3.8vw,18px) !important; line-height:1.5 !important; font-weight:400 !important; letter-spacing:0 !important; margin:0 auto 32px !important; max-width:440px; }
  .hero-text .btn { display:block !important; width:100% !important; max-width:550px; margin:0 auto !important; border-radius:999px !important; padding:22px 14px !important; background:#111 !important; color:#fff !important; text-align:center; font-size:clamp(11px,3vw,15px) !important; letter-spacing:.12em !important; }
  .hero .photo { min-height:0 !important; height:auto !important; aspect-ratio:4/3; }
  #hero-photo { min-height:0 !important; }
  .hero .photo img { position:absolute; width:100%; height:100%; object-fit:cover; }
}
@media (max-width:390px) { .hero-text h1 { font-size:clamp(42px,11.1vw,48px) !important; } body > header > a strong { letter-spacing:.15em !important; } }
@media (min-width:801px) { .mobile-menu-toggle { display:none !important; } }
