/* Hairold: warm field-journal details and clear paths into the existing tools. */
@media screen {
.editorial-studio .studio-header{background:#163b31;border-bottom:1px solid #668477}
.editorial-studio .studio-top{max-width:1320px;margin:auto;gap:28px}
.editorial-studio header #main-nav{gap:23px;flex-wrap:nowrap}
.editorial-studio header #main-nav a{font-size:.9rem;white-space:nowrap;min-height:48px;display:inline-flex;align-items:center;padding:6px 0}
.editorial-studio header #main-nav a[aria-current]{border-bottom:2px solid #e3c18c;color:#ffe6b3!important}
.editorial-studio .studio-instagram span{display:none}
.editorial-studio .studio-header .studio-brand{flex-shrink:0}
.editorial-studio #mobile-nav{max-height:100dvh;overflow:auto;background:#17372e;color:#fff7e8}
.editorial-studio #mobile-nav nav a{min-height:48px;padding-block:10px}
.editorial-studio #mobile-nav nav a[aria-current]{color:#ffe6b3;text-decoration:underline;text-underline-offset:6px}
.editorial-studio #mobile-nav .drawer-more{border-color:#708e7d;gap:4px 20px}
.editorial-studio #mobile-nav .drawer-more a{min-height:44px;display:flex;align-items:center}
.editorial-studio a,.editorial-studio button{-webkit-tap-highlight-color:rgba(227,193,140,.22)}
.editorial-studio :focus-visible{outline:3px solid #f3c77d!important;outline-offset:4px}
/* The homepage is a small journal with a useful puppy workspace first. */
.editorial-studio .value-hero{background:#214b3d;max-width:1280px;gap:clamp(25px,4vw,60px);padding-block:38px 42px;align-items:center}
.editorial-studio .value-title-row{align-items:center;gap:24px}
.editorial-studio .value-title-row figure{width:clamp(120px,13vw,176px);transform:rotate(2deg);margin:0}
.editorial-studio .value-title-row img{width:100%;height:auto;max-height:252px;object-fit:contain;border-radius:75px 75px 8px 8px;padding:7px;background:#efe3c9}
.editorial-studio .value-title-row figcaption{font:500 .7rem/1.5 system-ui;letter-spacing:.06em}
.editorial-studio .value-hero h1{font-size:clamp(2.15rem,3.4vw,3.35rem);line-height:1.09;letter-spacing:-.035em}
.editorial-studio .value-hero h1 em{color:#f1c795}
.editorial-studio .value-lead{font-size:1.06rem;line-height:1.65;max-width:42ch;margin-top:23px}
.editorial-studio .value-starter{border-radius:6px 28px 6px 6px;box-shadow:7px 7px 0 #173e32;padding:24px;background:#fff7e8}
.editorial-studio .value-options .semantic-card{border-radius:6px!important;background:#f4ead7!important;border-color:#a4aa91!important}
.editorial-studio .value-options .semantic-card[aria-pressed=true]{outline:2px solid #285b43!important;background:#dbe8c4!important}
.editorial-studio .value-options .semantic-card:focus-visible{outline:3px solid #234a39!important;outline-offset:4px!important}
.editorial-studio .value-preview h2{font-size:1.7rem;margin-top:20px}
.editorial-studio .value-preview ul{line-height:1.55}
.editorial-studio .value-next{background:#ede7d7;padding-block:30px;max-width:1280px}
.editorial-studio .value-section-head h2{font-size:1.7rem;color:#263f32}
.editorial-studio .value-paths{gap:24px}
.editorial-studio .value-photo-tile.semantic-card{background:transparent!important;border:0!important;border-top:1px solid #9fae99!important;border-radius:0!important;padding:18px 0 0!important;grid-template-columns:76px minmax(0,1fr)!important;gap:17px!important}
.editorial-studio .value-photo-tile.semantic-card>.semantic-background{max-width:76px!important;max-height:105px!important}
.editorial-studio .value-photo-tile.semantic-card:hover strong{text-decoration-thickness:2px}
.editorial-studio .value-next a:focus-visible,.editorial-studio .value-hairold a:focus-visible{outline-color:#315e44!important}
.editorial-studio .value-hairold{max-width:1280px;grid-template-columns:minmax(160px,.7fr) 1fr;gap:clamp(30px,7vw,90px);padding-block:48px;background:#fff7e8}
.editorial-studio .value-hairold figure{max-width:310px;justify-self:center;margin:0}
.editorial-studio .value-hairold h2{font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.12}
/* Separate editorial spreads rather than another wall of matching cards. */
.editorial-studio .semantic-feature.value-play,.editorial-studio .semantic-feature.world-outing,.editorial-studio .semantic-feature.journey-home-shop{width:100%;max-width:1280px!important;margin:0 auto!important;border:0!important;border-radius:0!important;padding:38px clamp(22px,5vw,64px)!important;grid-template-columns:minmax(130px,.7fr) minmax(0,1fr)!important;gap:clamp(25px,6vw,76px)!important}
.editorial-studio .semantic-feature.value-play{background:#d3e4e7!important}
.editorial-studio .semantic-feature.world-outing{background:#e2e8d2!important}
.editorial-studio .semantic-feature.journey-home-shop{background:#ead4bc!important}
.editorial-studio .semantic-feature>.semantic-background{max-width:285px!important;max-height:280px!important;width:100%!important;object-fit:contain!important}
.editorial-studio .semantic-feature h2{font-size:clamp(1.8rem,3.1vw,2.8rem)!important;line-height:1.12!important;margin-bottom:16px!important}
.editorial-studio .semantic-feature p{max-width:43ch;line-height:1.6!important;margin-bottom:12px!important}
.editorial-studio .semantic-feature .btn{margin:10px 16px 0 0;background:#244d39!important;color:#fff7e8!important;border-color:#244d39!important;padding:12px 18px}
.editorial-studio .semantic-feature .text-link{min-height:44px;display:inline-flex;align-items:center;margin:5px 0;text-underline-offset:5px;font-weight:650}
.editorial-studio .semantic-feature a:focus-visible{outline-color:#315e44!important}
.editorial-studio .semantic-feature .eyebrow{display:block!important;font-size:.72rem!important;letter-spacing:.09em}
/* Keep directories light and legible without changing their selection controls. */
.editorial-studio .ad-tool-directory>.semantic-card,.editorial-studio .ad-guide-directory>.semantic-card{border-radius:3px 15px 3px 3px!important}
.editorial-studio .ad-tool-directory,.editorial-studio .ad-guide-directory{gap:22px}
@media(min-width:981px) and (max-width:1180px){.editorial-studio .studio-top{padding-inline:22px;gap:18px}.editorial-studio header #main-nav{gap:15px}.editorial-studio header #main-nav a{font-size:.8rem}.editorial-studio .studio-header .studio-brand{font-size:1.7rem!important}.editorial-studio .studio-header-actions{margin-left:0}.editorial-studio .world-brand-dog{width:32px;height:44px}}
@media(max-width:800px){.editorial-studio .value-hero{padding-block:24px 30px;gap:25px}.editorial-studio .value-title-row figure{width:120px}.editorial-studio .value-hero h1{font-size:clamp(2rem,5.6vw,2.8rem)}.editorial-studio .value-lead{margin-top:15px}.editorial-studio .value-starter{padding:20px}.editorial-studio .value-paths{grid-template-columns:1fr;gap:14px}.editorial-studio .value-hairold{gap:25px;padding-block:32px;grid-template-columns:120px minmax(0,1fr)}.editorial-studio .value-hairold h2{font-size:2rem}.editorial-studio .value-hairold figure{align-self:center}.editorial-studio .semantic-feature.value-play,.editorial-studio .semantic-feature.world-outing,.editorial-studio .semantic-feature.journey-home-shop{grid-template-columns:minmax(100px,.55fr) minmax(0,1fr)!important;padding-block:28px!important;gap:24px!important}.editorial-studio .semantic-feature h2{font-size:1.75rem!important}}
@media(max-width:400px){.editorial-studio .value-title-row{gap:15px}.editorial-studio .value-title-row figure{width:92px}.editorial-studio .value-title-row figcaption{font-size:.63rem}.editorial-studio .value-hero h1{font-size:1.95rem}.editorial-studio .value-hairold{grid-template-columns:86px minmax(0,1fr);gap:20px}.editorial-studio .value-hairold h2{font-size:1.75rem}.editorial-studio .semantic-feature.value-play,.editorial-studio .semantic-feature.world-outing,.editorial-studio .semantic-feature.journey-home-shop{grid-template-columns:90px minmax(0,1fr)!important;gap:19px!important}.editorial-studio .semantic-feature h2{font-size:1.55rem!important}.editorial-studio .studio-header-actions{gap:9px!important}}
@media(max-height:520px) and (orientation:landscape){.editorial-studio .studio-header{position:relative}.editorial-studio #mobile-nav .drawer-inner{padding-block:15px}.editorial-studio #mobile-nav nav{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}}
@media(min-width:1800px){.editorial-studio .studio-top{max-width:1440px}.editorial-studio header #main-nav a{font-size:1.05rem}.editorial-studio .value-hero,.editorial-studio .value-next,.editorial-studio .value-hairold,.editorial-studio .semantic-feature{max-width:1440px!important}}
@media(prefers-reduced-motion:reduce){.editorial-studio .value-title-row figure{transform:none}}
}
@media print{.value-next,.semantic-feature{break-inside:avoid}.value-hero,.value-starter{box-shadow:none!important}}
/* Explicit header columns avoid competing automatic flex margins. */
@media screen{
.editorial-studio .studio-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto}
.editorial-studio header #main-nav{margin-left:0;justify-content:flex-end;min-width:0}
.editorial-studio .studio-header-actions{margin-left:0;flex-shrink:0;width:auto}
@media(max-width:980px){.editorial-studio .studio-top{grid-template-columns:auto auto;justify-content:space-between}.editorial-studio .studio-header-actions{justify-content:flex-end}.editorial-studio .studio-header .mobile-shop{flex:none}.editorial-studio .studio-header .menu{width:auto!important;flex:none}}
}

/* Readability audit: pair foreground and surface when crossing theme layers. */
@media screen {
.editorial-studio .value-hairold figcaption{color:#52614f}
.editorial-studio .value-hairold a.btn{background:#285b43;color:#fffaf0!important;border-color:#285b43}
.editorial-studio .value-hairold a.btn:hover{background:#1b4331;color:#fffaf0!important;border-color:#1b4331}
.editorial-studio .hairold-companion .companion-label{color:#f1ece3}
/* Gold focus rings disappear on cream; light panels need a dark ring. */
.editorial-studio .value-starter :focus-visible,.editorial-studio .pet-search :focus-visible,.editorial-studio .analytics-choice :focus-visible{outline-color:#285b43!important}
}

/* Keep the first keyboard shortcut above the header at every screen size. */
@media screen {
.editorial-studio > .skip{position:fixed;top:12px;left:-9999px;z-index:1000;max-width:calc(100vw - 24px);min-height:48px;padding:12px 18px;background:#fffaf0;color:#183c2b;border:2px solid #285b43;border-radius:4px;font-weight:700;line-height:1.4}
.editorial-studio > .skip:focus{left:12px;outline:3px solid #183c2b;outline-offset:3px}
}

/* Typography and rhythm: existing local fonts; screen-only candidate. */
@media screen {
  body.editorial-studio {
    --type-ui: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --type-display: Fraunces, Georgia, serif;
    font-family: var(--type-ui); font-size: 1rem; line-height: 1.6;
  }
  .editorial-studio :is(h1,h2) { font-family: var(--type-display); font-weight: 400; letter-spacing: -.035em; text-wrap: balance; }
  .editorial-studio .eyebrow { letter-spacing: .1em; line-height: 1.5; }
  .editorial-studio .page-hero { padding-block: 30px; }
  .editorial-studio .page-hero h1 { font-size: clamp(2.25rem,4.2vw,4rem); line-height: 1.1; margin-block: 12px 16px; }
  .editorial-studio .ad-story-title h1 { font-size: clamp(2.5rem,5.2vw,5rem) !important; }
  .editorial-studio .page-hero .lead { font-size: 1.0625rem; line-height: 1.6; max-width: 60ch; margin-block: 12px 0; }
  .editorial-studio .directory-masthead .ad-mast-copy h1 { font-size: clamp(2.35rem,4vw,3.75rem); line-height: 1.1; margin-block: 12px 18px; }
  .editorial-studio .hub-needs { padding-block: 30px; gap: 32px; }
  .editorial-studio .hub-needs .need-heading h2 { font-size: clamp(1.9rem,3vw,2.65rem); line-height: 1.15; margin-block: 10px 16px; }
  .editorial-studio :is(.ad-tool-directory,.ad-guide-directory) .semantic-card h3 {
    font-family: var(--type-ui) !important; font-size: 1.125rem !important;
    font-weight: 650 !important; line-height: 1.35 !important; letter-spacing: -.015em;
  }
  .editorial-studio :is(.ad-tool-directory,.ad-guide-directory) { gap: 16px; }
  .editorial-studio .value-hero { padding-block: 28px 30px; gap: clamp(24px,3vw,40px); }
  .editorial-studio .value-hero h1 { font-size: clamp(2.15rem,3.4vw,3.25rem); line-height: 1.1; letter-spacing: -.03em; }
  .editorial-studio .value-lead { font-size: 1.0625rem; line-height: 1.6; margin-top: 16px; }
  .editorial-studio .value-preview h2 { font-size: 1.6rem; line-height: 1.2; margin-top: 16px; }
  .editorial-studio .value-next { padding-block: 24px; }
  .editorial-studio .value-paths { gap: 18px; margin-top: 16px; }
  .editorial-studio .value-hairold { padding-block: 34px; gap: clamp(24px,5vw,60px); }
  .editorial-studio .value-hairold h2 { font-size: clamp(1.9rem,3vw,2.85rem); line-height: 1.15; margin-block: 12px; }
  .editorial-studio .semantic-feature.value-play,
  .editorial-studio .semantic-feature.world-outing,
  .editorial-studio .semantic-feature.journey-home-shop {
    padding-block: 28px !important; column-gap: clamp(24px,4vw,52px) !important;
  }
  .editorial-studio .semantic-feature h2 { font-size: clamp(1.7rem,2.8vw,2.5rem) !important; line-height: 1.17 !important; margin-bottom: 12px !important; }
  .editorial-studio .studio-footer a, .editorial-studio .photo-sources summary { min-height: 44px; }
  .editorial-studio .value-options button.semantic-card { min-height: 44px !important; }
  @media(max-width:800px) {
    .editorial-studio .value-hero { padding-block: 22px 26px; gap: 20px; }
    .editorial-studio .value-hero h1 { font-size: clamp(2rem,5.6vw,2.8rem); }
    .editorial-studio .value-paths { gap: 14px; }
    .editorial-studio .value-hairold { padding-block: 28px; gap: 24px; }
    .editorial-studio .semantic-feature.value-play,
    .editorial-studio .semantic-feature.world-outing,
    .editorial-studio .semantic-feature.journey-home-shop { padding-block: 24px !important; column-gap: 24px !important; }
  }
  @media(max-width:700px) {
    .editorial-studio .page-hero { padding-block: 24px; }
    .editorial-studio .page-hero h1 { font-size: clamp(2rem,7.8vw,2.75rem); }
    .editorial-studio .ad-story-title h1 { font-size: clamp(2.25rem,8.5vw,3.25rem) !important; }
    .editorial-studio .directory-masthead .ad-mast-copy h1 { font-size: clamp(2.1rem,8vw,2.8rem); }
    .editorial-studio .hub-needs { padding-block: 26px; gap: 24px; }
    .editorial-studio .semantic-feature h2 { font-size: 1.65rem !important; }
  }
  @media(max-width:400px) {
    .editorial-studio .value-hero h1 { font-size: 1.95rem; }
    .editorial-studio .value-hairold { gap: 20px; }
    .editorial-studio .value-hairold h2 { font-size: 1.75rem; }
    .editorial-studio .semantic-feature.value-play,
    .editorial-studio .semantic-feature.world-outing,
    .editorial-studio .semantic-feature.journey-home-shop { column-gap: 19px !important; }
    .editorial-studio .semantic-feature h2 { font-size: 1.55rem !important; }
  }
}
