/* Photo-led branding, scoped to MaruOps components. */
.maruops-header { background:#fcfaf6; }
.maruops-header-inner { min-height:76px; padding-block:17px; }
.maruops-header-label { display:flex; align-items:center; gap:17px; }
.maruops-header-label > a { display:inline-flex; align-items:center; gap:10px; color:#302820; font-size:18px; font-weight:800; letter-spacing:-.055em; }
.maruops-header-label > a::before,
.maruops-sidebar-brand::before { content:''; flex:0 0 auto; display:inline-block; width:29px; height:29px; background:url('branding/maruops-mark.svg') center / contain no-repeat; }
.maruops-header-note { padding-left:17px; border-left:1px solid #ded3c4; color:#70665a; font-size:11px; letter-spacing:0; }
.maruops-header-utility a:hover,
.maruops-footer a:hover { color:#733b25; text-decoration:underline; }
.maruops-topic-sidebar { padding-top:26px; }
.maruops-sidebar-top { padding-inline:9px; }
.maruops-sidebar-brand { display:inline-flex; align-items:center; gap:9px; font-size:28px; letter-spacing:-.055em; }
.maruops-sidebar-brand::before { width:30px; height:30px; }
.maruops-sidebar-brand span { margin-left:-9px; }
.maruops-sidebar-subtitle { margin-block:13px 27px; color:#7a6552; font-size:12px; letter-spacing:-.03em; }
.maruops-sidebar-search { margin-bottom:23px; }
.maruops-topic-nav a:hover { color:#733b25; }
.maruops-topic-posts a[aria-current=page] { box-shadow:inset 2px 0 #964d2e; }
.maruops-home-intro { padding-top:30px; }
.maruops-brand-hero { isolation:isolate; position:relative; display:flex; align-items:center; width:100%; max-width:100%; min-height:440px; aspect-ratio:2.08; overflow:hidden; margin-top:0; border-radius:12px; background:#32291f; color:#fffaf2; }
.maruops-brand-hero .maruops-brand-scene { position:absolute; inset:0; z-index:-2; width:100%; height:100%; margin:0; }
.maruops-brand-hero .maruops-brand-scene img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 55%; }
.maruops-brand-hero::after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(28,23,19,.85) 0%,rgba(28,23,19,.76) 31%,rgba(28,23,19,.43) 53%,rgba(28,23,19,.03) 78%),linear-gradient(0deg,rgba(28,23,19,.15),transparent 60%); }
.maruops-brand-copy { width:65%; max-width:620px; padding:48px; }
.maruops-brand-kicker { margin:0 0 22px; color:#f1ddc3; font-size:12px; font-weight:600; letter-spacing:.015em; }
.maruops-brand-title.wp-block-heading { margin:0 0 23px; color:#fffaf2; font-size:clamp(36px,3.8vw,54px); line-height:1.3; font-weight:800; letter-spacing:-.06em; }
.maruops-brand-title span { color:#f4ce9f; }
.maruops-brand-description { max-width:450px; margin:0; color:#f1e7da; font-size:14px; line-height:1.85; letter-spacing:-.025em; }
.maruops-brand-actions { display:flex; flex-wrap:wrap; align-items:center; gap:23px; margin-top:29px; }
.maruops-brand-primary,
.maruops-brand-secondary { margin:0; font-size:12px; font-weight:650; line-height:1.6; }
.maruops-brand-primary a { display:inline-flex; align-items:center; gap:27px; min-height:44px; padding:12px 17px; border:1px solid #f8ead5; border-radius:5px; background:#f8ead5; color:#382b20; text-decoration:none; }
.maruops-brand-primary a:hover { border-color:#fff7eb; background:#fff7eb; color:#382b20; }
.maruops-brand-secondary a { display:inline-flex; align-items:center; gap:13px; min-height:44px; color:#fffaf2; text-decoration:underline; text-decoration-thickness:1px; }
.maruops-brand-secondary a:hover { color:#f4ce9f; }
.maruops-brand-hero :where(a,button):focus-visible { outline-color:#fffaf2; }
.maruops-brand-credit { margin:10px 0 0; color:#7a6e60; font-size:11px; line-height:1.7; text-align:right; }
.maruops-brand-credit a { color:inherit; }
.maruops-home-intro .maruops-learning { padding-block:34px 36px; }
.maruops-home-intro .maruops-section-title { font-size:20px; }
.maruops-home-intro .maruops-series-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:17px; }
.maruops-home-intro .maruops-series-card { padding:21px 23px; border-color:#e1d7c9; border-radius:7px; background:#f6f1e9; }
.maruops-home-intro .maruops-series-title { margin-bottom:7px; font-size:18px; }
.maruops-home-intro .maruops-series-description { font-size:12px; }
.maruops-home-intro .maruops-series-link { margin-top:11px; font-size:11px; }
.maruops-latest { border-top:1px solid #d8c9b8; padding-top:30px; }
.maruops-latest-heading { margin-bottom:25px; }
.maruops-latest .maruops-section-title { font-size:24px; }
.maruops-section-description { color:#746a5f; font-size:13px; }
.maruops-post-grid > li { border-color:#e6ded3; border-radius:8px; box-shadow:0 2px 7px #4a342204; }
.maruops-card-image.wp-block-post-featured-image { border-color:#eee5d9; background:#f1e8dc; }
.maruops-card-category a { color:#8f482c; }
.maruops-card-title a { color:#332c25; }
.maruops-card-title a:hover { color:#8f482c; }
.maruops-search .wp-block-search__button { border-color:#964d2e; background:#964d2e; }
.maruops-search .wp-block-search__button:hover { border-color:#733b25; background:#733b25; }
.maruops-brand-about { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); align-items:center; gap:45px; margin-top:64px; padding-top:40px; border-top:1px solid #e2d7ca; }
.maruops-brand-about .maruops-brand-about-image { margin:0; }
.maruops-brand-about-image img { display:block; width:100%; height:auto; border-radius:8px; }
.maruops-brand-about-label { margin:0 0 12px; color:#8f482c; font-size:11px; font-weight:650; }
.maruops-brand-about-title.wp-block-heading { margin:0 0 17px; color:#302820; font-size:clamp(24px,2.3vw,32px); line-height:1.45; font-weight:750; letter-spacing:-.045em; }
.maruops-brand-about-description { margin:0; color:#6b6259; font-size:13px; line-height:1.85; }
.maruops-brand-about-link { margin:19px 0 0; font-size:12px; font-weight:650; }
.maruops-brand-about-link a { display:inline-flex; gap:23px; align-items:center; min-height:36px; }
.maruops-footer { background:#f3ede4; }
.maruops-footer-brand { font-size:26px; }
.maruops-footer-tagline { font-size:12px; }
.maruops-menu-toggle { border-color:#c9baa8; background:#fcfaf6; }
.paged .maruops-brand-about { display:none; }
@media (min-width:782px) and (prefers-reduced-motion:no-preference) {
  .maruops-post-grid > li:hover { border-color:#baa38a; box-shadow:0 5px 18px #51351c0a; }
}
@container (max-width:800px) {
  .maruops-brand-hero { min-height:410px; }
  .maruops-brand-copy { width:72%; padding:36px; }
  .maruops-brand-title.wp-block-heading { font-size:40px; }
  .maruops-brand-description { font-size:13px; }
  .maruops-brand-about { gap:28px; }
  .maruops-brand-about-description br { display:none; }
}
@container (max-width:580px) {
  .maruops-home-intro .maruops-series-grid { grid-template-columns:1fr; }
}
@media (max-width:781px) {
  .maruops-header-label { gap:12px; }
  .maruops-header-note { display:none; }
  .maruops-home-intro { padding-top:23px; }
  .maruops-brand-about { gap:25px; }
}
@media (max-width:599px) {
  .maruops-header-inner { min-height:72px; padding-block:13px; gap:12px; }
  .maruops-header-label > a { font-size:18px; }
  .maruops-header-label > a::before { width:26px; height:26px; }
  .maruops-home-intro { padding-top:20px; }
  .maruops-brand-hero { display:flex; flex-direction:column; align-items:stretch; min-height:0; aspect-ratio:auto; margin-top:0; border-radius:9px; }
  .maruops-brand-hero .maruops-brand-scene { position:relative; inset:auto; z-index:auto; width:100%; height:auto; aspect-ratio:1672 / 941; }
  .maruops-brand-hero .maruops-brand-scene img { width:100%; height:auto; aspect-ratio:1672 / 941; object-fit:contain; }
  .maruops-brand-hero::after { display:none; }
  .maruops-brand-copy { width:100%; max-width:none; padding:25px 24px 27px; }
  .maruops-brand-kicker { margin-bottom:15px; font-size:11px; }
  .maruops-brand-title.wp-block-heading { margin-bottom:17px; font-size:clamp(30px,8.5vw,36px); line-height:1.32; letter-spacing:-.05em; }
  .maruops-brand-description { font-size:14px; }
  .maruops-brand-description br { display:none; }
  .maruops-brand-actions { gap:18px; margin-top:21px; }
  .maruops-brand-primary,
  .maruops-brand-secondary { font-size:12px; }
  .maruops-brand-primary a { gap:15px; padding:10px 13px; }
  .maruops-brand-secondary a { gap:8px; }
  .maruops-brand-credit { font-size:10px; text-align:left; }
  .maruops-home-intro .maruops-learning { padding-block:27px 29px; }
  .maruops-home-intro .maruops-section-title { font-size:19px; }
  .maruops-home-intro .maruops-series-grid { gap:0; margin-top:10px; }
  .maruops-home-intro .maruops-series-card { padding:17px 0; border:0; border-bottom:1px solid #e2d7c9; border-radius:0; background:transparent; }
  .maruops-home-intro .maruops-series-title { margin:0; font-size:16px; }
  .maruops-home-intro .maruops-series-link { margin:0; top:20px; }
  .maruops-latest { padding-top:24px; }
  .maruops-latest-heading { gap:17px; }
  .maruops-latest .maruops-section-title { font-size:22px; }
  .maruops-section-description { font-size:12px; }
  .maruops-brand-about { grid-template-columns:1fr; gap:23px; margin-top:44px; padding-top:30px; }
  .maruops-brand-about-image { max-width:440px; }
  .maruops-brand-about-title.wp-block-heading { font-size:25px; }
  .maruops-brand-about-description { font-size:13px; }
  .maruops-brand-about-link { margin-top:13px; }
  .maruops-footer-nav .wp-block-navigation__container { gap:13px 20px; }
}
