:root{
  --dogu-orange:#c94b0a;
  --dogu-orange-soft:#fff1e7;
  --dogu-charcoal:#202722;
  --dogu-cream:#f7f4ee;
  --dogu-image-border:#d9d2c7;
  --dogu-image-shadow:0 14px 34px rgba(35,29,22,.14);
}

/* Warm editorial photography with one shared frame and crop system. */
:is(.simple-hero-photo,.user-story,.user-walk-missions a,.photo-mode-menu button,.walk-intro,
  .trainer-journey-picture,.trainer-room,.dialog-service-photo,.merchant-cover){
  border-color:var(--dogu-image-border)!important;
  box-shadow:var(--dogu-image-shadow);
}
:is(.simple-hero-photo,.user-story,.user-walk-missions a,.photo-mode-menu button,
  .trainer-journey-picture,.trainer-room,.merchant-cover){overflow:hidden}
:is(.simple-hero-photo>img,.user-story>img,.user-walk-missions img,.photo-mode-menu img,
  .walk-intro>img,.trainer-journey-picture img,.trainer-room>img,.dialog-service-photo,
  .merchant-cover img,.photo-service-entry img){
  filter:saturate(.84) contrast(1.055) sepia(.055);
}
:is(.simple-hero-photo>img,.user-story>img,.user-walk-missions img,.photo-mode-menu img,
  .walk-intro>img,.trainer-journey-picture img,.dialog-service-photo,.merchant-cover img){object-fit:cover}
.user-story>img,.simple-hero-photo>img{object-position:center 46%}
.user-walk-missions a:first-child img,.walk-intro>img{object-position:center 58%}
.user-walk-missions a:last-child img,.trainer-journey-picture img{object-position:center 66%}
.photo-mode-menu [data-photo-mode="posture"] img{object-position:center 48%}
.photo-mode-menu [data-photo-mode="stool"] img{object-position:center 55%}
.photo-mode-menu [data-photo-mode="food"] img{object-position:center 58%}
.user-story::after,.simple-hero-photo::after,.trainer-journey-picture::after,.merchant-cover::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(15,19,16,.02) 35%,rgba(15,19,16,.22));
}
.simple-hero-photo,.trainer-journey-picture,.merchant-cover{position:relative}
.simple-hero-photo>*:not(img),.trainer-journey-picture>*:not(img),.merchant-cover>*:not(img){position:relative;z-index:1}
.photo-mode-menu button[aria-pressed="true"]{
  border-color:var(--dogu-orange)!important;background:var(--dogu-orange-soft)!important;
  box-shadow:0 0 0 1px var(--dogu-orange);
}
.photo-mode-menu button[aria-pressed="true"] b{color:#9b3705}
.studio-scene{
  border:1px solid var(--dogu-image-border);border-radius:22px;
  box-shadow:var(--dogu-image-shadow);background:#252b27;
}
.studio-scene .studio-scene-background{filter:saturate(.78) contrast(1.04) sepia(.12) brightness(.94)}
.studio-scene::after{
  content:"";position:absolute;z-index:1;inset:0;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),inset 0 -48px 70px rgba(31,27,21,.12);
}
.studio-scene .studio-scene-item{z-index:2}
.consultation-attachment img,.avatar-preview-frame img,.trainer-room-avatar img,
.merchant-profile-avatar img,.territory-owner-avatar img{filter:saturate(.88) contrast(1.04) sepia(.035)}
.merchant-cover img{width:100%;aspect-ratio:16/9}
.merchant-cover figcaption{z-index:2}
@media(max-width:760px){
  .simple-hero-photo>img{object-position:center 54%}
  .user-story>img{object-position:center 48%}
  .user-walk-missions img{min-height:148px}
  .trainer-journey-picture img{aspect-ratio:16/10!important;object-position:center 68%}
  .trainer-room>img{object-position:center 50%}
  .photo-mode-menu img{height:96px}
  .walk-intro>img{object-position:center 60%}
  .dialog-service-photo{height:154px;object-position:center 48%}
}
@media(prefers-reduced-motion:reduce){
  .studio-scene .studio-scene-item,.studio-scene-sprite{transition:none!important}
}
