/* Editorial guide. Uses the existing Blue Feather design tokens; no shared styles are changed. */
.guide-page main { color:var(--ink); background:var(--surface); }
.guide-reading { width:min(calc(100% - 64px),760px); margin-inline:auto; }
.guide-wide { width:min(calc(100% - 64px),960px); margin-inline:auto; }
.guide-page .guide-hero { display:block; position:relative; min-height:0; height:auto; padding:136px 0 56px; background:var(--blue-mist); color:var(--ink); overflow:visible; }
.guide-hero::before,.guide-hero::after { display:none; }
.guide-opening { width:min(calc(100% - 64px),1200px); margin-inline:auto; display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.guide-opening-copy { min-width:0; }
.guide-page h1,.guide-page article h2,.guide-page article h3 { background:none; -webkit-text-fill-color:currentColor; color:var(--ink); letter-spacing:.01em; text-align:left; max-width:none; }
.guide-page h1 { font-size:48px; font-weight:400; line-height:1.35; margin:20px 0 24px; }
.guide-page h1 span { font-size:inherit; }
.guide-title-clause { display:block; }
.guide-page article h2 { font-size:36px; font-weight:500; line-height:1.45; margin:0; text-wrap:pretty; color:var(--blue-deep); }
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .guide-page article .guide-chapter-heading h2 { background-image:linear-gradient(90deg,var(--navy),var(--blue-deep) 58%,var(--blue)); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
}
@media(forced-colors:active) {
 .guide-page article .guide-chapter-heading h2 { background:none; color:CanvasText; -webkit-text-fill-color:currentColor; }
}
.guide-page article h3 { font-size:20px; font-weight:500; line-height:1.6; margin:28px 0 10px; }
.guide-page main p,.guide-page main li { font-size:16px; font-weight:400; line-height:1.85; text-align:left; }
.guide-page main p { margin:0 0 20px; }
.guide-page main a:not(.button) { color:var(--blue-deep); text-decoration:underline; text-underline-offset:5px; }
.guide-page main a:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.guide-page .guide-kicker { color:var(--blue); font-weight:600; letter-spacing:.08em; margin:0; }
.guide-page .guide-lead { font-weight:500; color:var(--muted); margin:0; max-width:760px; }
.guide-hero-photo { width:100%; margin:0; }
.guide-hero-photo img { width:100%; height:auto; display:block; border-radius:32px; }
.guide-toc { margin-top:48px; padding:28px 32px; background:var(--surface); border-radius:24px; }
.guide-page .guide-toc > p { font-weight:500; margin-bottom:16px; }
.guide-toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 32px; margin:0; padding-left:22px; }
.guide-toc li { padding-left:4px; }
.guide-toc li::marker { color:var(--blue); font-size:14px; font-variant-numeric:tabular-nums; }
.guide-page .guide-toc a { display:block; text-decoration:none!important; line-height:1.75; padding:5px 0; }
.guide-page .guide-toc a:hover { text-decoration:underline!important; }
.guide-section { padding-top:80px; scroll-margin-top:128px; }
.guide-chapter-heading { display:grid; grid-template-columns:40px minmax(0,1fr); gap:16px; align-items:baseline; margin:0 0 24px; }
.guide-page .guide-number { margin:0; color:var(--blue); font-size:16px; font-weight:500; font-variant-numeric:tabular-nums; letter-spacing:.03em; }
.guide-lenses { margin-top:28px; }
.guide-lens { display:grid; grid-template-columns:160px minmax(0,1fr); gap:12px 28px; padding:24px 0; }
.guide-lens + .guide-lens { border-top:1px solid var(--line); }
.guide-page .guide-lens h3 { margin:0; }
.guide-page .guide-lens p { margin:0; }
.guide-lens p + p { grid-column:2; }
.guide-highlight { background:var(--blue-soft); padding:40px; border-radius:32px; margin-top:28px; margin-bottom:36px; display:grid; grid-template-columns:1fr 1.1fr; gap:36px; align-items:center; }
.guide-page .guide-highlight p { margin:0; }
.guide-page .guide-key { font-size:30px; font-weight:400; line-height:1.5; color:var(--blue-deep); text-wrap:balance; }
.guide-photo { width:min(calc(100% - 64px),960px); margin:32px auto 0; }
.guide-photo img { display:block; width:100%; height:auto; border-radius:32px; }
.guide-photo figcaption,.guide-watch-photo figcaption { font-size:14px; color:var(--muted); line-height:1.75; margin-top:12px; }
.guide-watch-layout { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; margin-block:28px; }
.guide-watch-photo { margin:0; min-width:0; }
.guide-watch-photo img { width:100%; height:auto; display:block; border-radius:24px; }
.guide-list { padding-left:24px; margin:20px 0; }
.guide-list li { margin-bottom:16px; }
.guide-list li::marker { color:var(--blue); }
.guide-watch-layout .guide-list { margin:0; padding-left:22px; }
.guide-watch-layout .guide-list strong { display:block; font-weight:500; color:var(--blue-deep); }
.guide-watch-layout .guide-list li:last-child { margin-bottom:0; }
.guide-comparison-wrap { margin-block:28px; padding:28px 32px; background:var(--blue-mist); border-radius:32px; }
.guide-comparison { width:100%; border-collapse:collapse; font-size:16px; line-height:1.85; }
.guide-comparison caption { text-align:left; color:var(--muted); font-size:14px; margin-bottom:20px; }
.guide-comparison th,.guide-comparison td { text-align:left; vertical-align:top; padding:20px 16px; }
.guide-comparison th { font-weight:500; }
.guide-comparison thead th { color:var(--blue-deep); }
.guide-comparison tbody tr { border-top:1px solid var(--line); }
.guide-comparison thead th:first-child,.guide-comparison tbody th { padding-left:0; width:20%; }
.guide-comparison thead th:not(:first-child) { width:40%; font-size:20px; }
.guide-comparison th:last-child,.guide-comparison td:last-child { padding-right:0; }
.guide-contact { margin-top:64px; padding-block:56px 64px; background:var(--blue-mist); }
.guide-checklist { background:var(--surface); border-radius:24px; padding:28px 32px; margin:28px 0; }
.guide-checklist p { line-height:2.3!important; margin:0!important; }
.guide-actions { display:flex; flex-wrap:wrap; gap:16px; margin:32px 0 24px; }
.guide-actions .button { width:fit-content; max-width:100%; font-size:15px; }
.guide-related { margin-top:40px; padding-top:8px; }
.guide-page .guide-related h3 { margin-top:0; }
@media(min-width:981px) and (max-width:1199px) {
 .guide-opening { grid-template-columns:1.2fr 1fr; }
}
@media(min-width:768px) and (max-width:980px) {
 .guide-reading { width:min(calc(100% - 40px - clamp(56px,8vw,80px)),760px); }
 .guide-page h1 { font-size:40px; }
 .guide-opening { width:calc(100% - 40px); grid-template-columns:1fr; gap:32px; }
 .guide-opening-copy { padding-inline:clamp(28px,4vw,40px); }
 .guide-wide,.guide-photo { width:calc(100% - 40px); }
 .guide-toc,.guide-highlight,.guide-comparison-wrap { padding-inline:clamp(28px,4vw,40px); }
 .guide-watch-layout { gap:28px; padding-inline:clamp(28px,4vw,40px); }
 .guide-lens { grid-template-columns:140px minmax(0,1fr); gap:20px; }
}
@media(max-width:980px) {
 .guide-hero-photo img,.guide-photo img,.guide-highlight,.guide-comparison-wrap { border-radius:24px; }
}
@media(max-width:767px) {
 .guide-reading,.guide-wide,.guide-photo,.guide-opening { width:calc(100% - 32px); }
 .guide-page .guide-hero { padding:120px 0 40px; }
 .guide-opening { grid-template-columns:1fr; gap:28px; }
 .guide-page h1 { font-size:32px; margin:16px 0 20px; }
 .guide-page article h2 { font-size:28px; }
 .guide-chapter-heading { grid-template-columns:28px minmax(0,1fr); gap:12px; margin-bottom:20px; }
 .guide-page .guide-number { font-size:14px; }
 .guide-toc { padding:24px; margin-top:28px; }
 .guide-toc ol { grid-template-columns:1fr; gap:10px; }
 .guide-section { padding-top:56px; }
 .guide-lens { display:block; padding:20px 0; }
 .guide-page .guide-lens h3 { margin-bottom:8px; }
 .guide-lens p + p { margin-top:12px; }
 .guide-highlight { grid-template-columns:1fr; padding:24px; gap:20px; }
 .guide-page .guide-key { font-size:26px; text-align:left; text-wrap:pretty; }
 .guide-watch-layout { grid-template-columns:1fr; gap:24px; }
 .guide-watch-layout .guide-list { padding-left:24px; }
 .guide-comparison-wrap { padding:24px; }
 .guide-comparison thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .guide-comparison tbody,.guide-comparison tr,.guide-comparison td,.guide-comparison th { display:block; width:100%; }
 .guide-comparison tr { padding:20px 0; border-top:1px solid var(--line); }
 .guide-comparison tr:first-child { padding-top:0; border-top:0; }
 .guide-comparison tr:last-child { padding-bottom:0; }
 .guide-comparison tbody th { width:100%; font-size:18px; padding:0 0 12px; }
 .guide-comparison td { padding:0 0 12px; }
 .guide-comparison td:last-child { padding-bottom:0; }
 .guide-comparison td::before { content:attr(data-label); display:block; color:var(--blue-deep); font-weight:500; }
 .guide-checklist { padding:24px; }
 .guide-contact { margin-top:44px; padding-block:40px 48px; }
 .guide-actions { align-items:center; flex-direction:column; }
}
@media(prefers-reduced-motion:reduce) { .guide-page * { scroll-behavior:auto!important; } }
