/* Article pilot: extend the shared theme without affecting other routes. */
.guide-page{
  --guide-copy:#505D62;
  --guide-amber:#F4C45C;
  --guide-on-navy:#CDDBE0;
  --guide-navy:linear-gradient(145deg,#173C51 0%,#102B3C 58%,#0E4B5C 100%);
}
.guide-page ::selection{background:var(--guide-amber);color:var(--dark-bg);}
.guide-page h1,.guide-page h2,.guide-page h3{text-wrap:balance;}
.guide-page a:focus-visible,.guide-page button:focus-visible,.guide-page summary:focus-visible{outline:3px solid var(--accent-deep);outline-offset:5px;}
.guide-page .guide-skip{position:fixed;top:12px;left:24px;z-index:10001;padding:12px 20px;background:var(--light-bg);color:var(--dark-bg);border-radius:8px;font-weight:700;transform:translateY(-180%);}
.guide-page .guide-skip:focus{transform:translateY(0);}
.guide-page .guide-header{padding:120px 0 56px;background:linear-gradient(150deg,var(--light-bg),var(--light-surface));}
.guide-page .guide-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--accent-deep);font-size:14px;font-weight:700;text-decoration:none;}
.guide-page .guide-back:hover{text-decoration:underline;text-underline-offset:4px;}
.guide-page .guide-back svg,.guide-page .guide-inline-link svg,.guide-page .guide-service-link svg{flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.guide-page .guide-opening{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:48px;align-items:center;margin-top:24px;}
.guide-page .guide-opening h1{font-size:clamp(34px,3.6vw,48px);line-height:1.08;max-width:22ch;}
.guide-page .guide-introduction{max-width:54ch;margin-top:24px;font-size:18px;line-height:1.7;color:var(--guide-copy);}
.guide-page .guide-meta{margin-top:24px;color:var(--guide-copy);font-size:13px;line-height:1.8;}
.guide-page .guide-meta span{padding:0 5px;}
.guide-page .guide-cover{margin:0;}
.guide-page .guide-cover img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:16px;}
.guide-page .guide-cover figcaption{margin-top:12px;color:var(--guide-copy);font-size:13px;line-height:1.6;}
.guide-page .guide-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:64px;align-items:start;padding-top:56px;padding-bottom:72px;}
.guide-page .guide-contents{position:sticky;top:104px;align-self:start;}
.guide-page .guide-contents h2{font-size:17px;line-height:1.4;letter-spacing:-.01em;margin-bottom:16px;}
.guide-page .guide-contents ul{list-style:none;}
.guide-page .guide-contents li+li{margin-top:4px;}
.guide-page .guide-contents li a{display:block;padding:8px 0;color:var(--guide-copy);font-size:14px;line-height:1.5;text-decoration:none;}
.guide-page .guide-contents li a:hover{color:var(--accent-deep);text-decoration:underline;text-underline-offset:4px;}
.guide-page .guide-service-link{display:flex;align-items:center;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid var(--border-light);font-size:14px;line-height:1.6;font-weight:700;color:var(--accent-deep);text-decoration:none;}
.guide-page .guide-service-link:hover{text-decoration:underline;text-underline-offset:4px;}
.guide-page .guide-reading{min-width:0;}
.guide-page .guide-section{overflow:visible;}
.guide-page .guide-section+.guide-section{margin-top:56px;}
.guide-page .guide-section h2{font-size:clamp(27px,2.5vw,32px);line-height:1.16;margin-bottom:20px;max-width:32ch;}
.guide-page .guide-section p{font-size:16px;line-height:1.8;color:var(--guide-copy);max-width:70ch;}
.guide-page .guide-section p+p{margin-top:16px;}
.guide-page .guide-section h3{font-size:20px;line-height:1.35;letter-spacing:-.02em;}
.guide-page .guide-principles{margin-top:28px;}
.guide-page .guide-principle{display:grid;grid-template-columns:28px minmax(0,1fr);gap:20px;padding:24px 0;border-top:1px solid var(--border-light);}
.guide-page .guide-principle:last-child{padding-bottom:0;}
.guide-page .guide-icon{display:block;fill:currentColor;flex:none;color:var(--accent-deep);width:28px;height:28px;}
.guide-page .guide-principle p{margin-top:8px;}
.guide-page .guide-brief{margin-top:28px;padding:28px 32px;background:var(--light-surface);border-radius:16px;}
.guide-page .guide-brief-group+.guide-brief-group{margin-top:28px;padding-top:24px;border-top:1px solid var(--border-light);}
.guide-page .guide-brief h3{margin-bottom:16px;}
.guide-page .guide-brief dl{display:grid;gap:14px;}
.guide-page .guide-brief dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;font-size:15px;line-height:1.7;}
.guide-page .guide-brief dt{font-weight:700;color:var(--text-on-light);}
.guide-page .guide-brief dd{color:var(--guide-copy);}
.guide-page .guide-example{margin-top:24px;font-size:15px;}
.guide-page .guide-emphasis{padding:36px;border-radius:16px;background:var(--guide-navy);color:var(--text-on-dark);}
.guide-page .guide-emphasis h2{max-width:26ch;}
.guide-page .guide-emphasis h2 span{color:var(--guide-amber);}
.guide-page .guide-emphasis p{color:var(--guide-on-navy);}
.guide-page .guide-feedback{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px;margin-top:28px;}
.guide-page .guide-feedback li{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:12px;}
.guide-page .guide-step{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--dark-surface);color:var(--guide-amber);font-family:'Satoshi',sans-serif;font-size:14px;font-weight:700;}
.guide-page .guide-feedback h3{font-size:18px;line-height:1.4;}
.guide-page .guide-feedback p{margin-top:8px;font-size:15px;line-height:1.7;}
.guide-page .guide-feedback-note{margin-top:28px;padding-top:24px;border-top:1px solid var(--border-light);}
.guide-page .guide-inline-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:16px;color:var(--accent-deep);font-size:14px;font-weight:700;line-height:1.6;text-decoration:underline;text-underline-offset:4px;}
.guide-page .guide-inline-link:hover{text-decoration-thickness:2px;}
.guide-page .guide-faq{border-top:1px solid var(--border-light);}
.guide-page .guide-faq details{border-bottom:1px solid var(--border-light);}
.guide-page .guide-faq summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 0;cursor:pointer;list-style:none;font-family:'Satoshi',sans-serif;font-size:18px;font-weight:700;line-height:1.5;}
.guide-page .guide-faq summary::-webkit-details-marker{display:none;}
.guide-page .guide-faq summary::after{content:"+";flex:none;font-size:22px;font-weight:400;line-height:1.2;color:var(--accent-deep);}
.guide-page .guide-faq details[open] summary{color:var(--accent-deep);}
.guide-page .guide-faq details[open] summary::after{content:"−";}
.guide-page .guide-faq details p{padding-bottom:24px;font-size:15px;}
.guide-page .guide-close{padding:32px;border-radius:16px;background:var(--light-surface);}
.guide-page .guide-close-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:24px;}
.guide-page .guide-close-actions .guide-inline-link{margin-top:0;}
.guide-page .guide-end-link{margin-top:24px;}
@media(max-width:1024px){
  .guide-page .guide-opening{gap:32px;}
  .guide-page .guide-layout{grid-template-columns:180px minmax(0,1fr);gap:40px;}
  .guide-page .guide-brief{padding:24px;}
  .guide-page .guide-brief dl>div{grid-template-columns:90px minmax(0,1fr);gap:16px;}
  .guide-page .guide-feedback{grid-template-columns:1fr;gap:24px;}
}
@media(max-width:800px){
  .guide-page .guide-opening{grid-template-columns:1fr;gap:28px;}
  .guide-page .guide-opening h1{max-width:24ch;}
  .guide-page .guide-cover{max-width:560px;}
  .guide-page .guide-cover img{aspect-ratio:2/1;}
  .guide-page .guide-layout{grid-template-columns:1fr;gap:40px;}
  .guide-page .guide-contents{position:static;}
  .guide-page .guide-contents-inner{padding-bottom:24px;border-bottom:1px solid var(--border-light);}
  .guide-page .guide-contents ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;}
  .guide-page .guide-contents li+li{margin-top:0;}
  .guide-page .guide-contents li a{min-height:44px;display:flex;align-items:center;}
  .guide-page .guide-service-link{display:none;}
}
@media(max-width:520px){
  .guide-page .guide-header{padding:104px 0 36px;}
  .guide-page .guide-opening{margin-top:16px;}
  .guide-page .guide-introduction{font-size:17px;margin-top:20px;}
  .guide-page .guide-cover img{aspect-ratio:1.65;}
  .guide-page .guide-layout{padding-top:32px;padding-bottom:48px;gap:36px;}
  .guide-page .guide-section+.guide-section{margin-top:44px;}
  .guide-page .guide-section h2{font-size:27px;}
  .guide-page .guide-principle{gap:16px;}
  .guide-page .guide-brief{padding:24px 20px;}
  .guide-page .guide-brief dl>div{grid-template-columns:1fr;gap:4px;}
  .guide-page .guide-emphasis{padding:28px 24px;}
  .guide-page .guide-faq summary{font-size:17px;}
  .guide-page .guide-close{padding:28px 24px;}
  .guide-page .guide-close-actions{align-items:flex-start;flex-direction:column;gap:12px;}
  .guide-page .guide-close-actions .btn{width:100%;justify-content:center;}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .guide-page .btn{transition:none;}
}
