.cmp* under .gd (grepped: no .gd* anywhere else, .cmp* only under .own in websites.css). */

.gd-hero{padding-block:clamp(36px,5vw,80px) clamp(40px,5vw,72px);overflow:hidden;}
.gd-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:center;}
.gd-hero h1.h1-page{margin:0 0 var(--s4);max-width:17ch;text-wrap:balance;}
.gd-hero h1 .lime{color:var(--lime);display:block;}
.gd-hero .lede{max-width:44ch;font-size:clamp(1.08rem,1.45vw,1.3rem);line-height:1.5;font-weight:500;color:var(--cream);text-wrap:pretty;}

.gd-hero .byline,.gd-hero .gd-meta,.gd-hero .crumbs{color:var(--cream);font-size:var(--t-small);line-height:var(--lh-support);}
.gd-hero .byline{margin-top:var(--s4);}
.gd-hero .gd-meta{margin-top:2px;font-weight:600;}
.gd-hero .crumbs{margin:var(--s3) 0 0;}
.gd-hero .byline a,.gd-hero .crumbs a{color:var(--cream);}
.gd-hero .byline a:hover,.gd-hero .crumbs a:hover{color:var(--lime);}
.gd-hago{margin:0;justify-self:end;width:100%;max-width:540px;}
.gd-hago img{width:100%;height:auto;}

@media (prefers-reduced-motion:no-preference){
  .gd-hago img{animation:gd-hago-in .78s var(--m-ease-enter,cubic-bezier(.16,1,.3,1)) .18s both;}
}
@keyframes gd-hago-in{from{opacity:0;transform:translate3d(0,var(--m-travel,30px),0) scale(.97);}to{opacity:1;transform:none;}}
@media (max-width:860px){
  .gd-hero-grid{grid-template-columns:minmax(0,1fr);row-gap:clamp(28px,8vw,44px);}
  .gd-hago{justify-self:center;max-width:min(420px,100%);}
}

.gd-n{position:relative;z-index:1;flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;
  font-style:normal;font-family:var(--display);font-weight:600;font-size:18px;line-height:1;
  background:var(--navy);color:var(--lime);border:1.5px solid var(--navy);}
.on-navy .gd-n{background:var(--navy-3);border-color:var(--lime);}

.gd-band{padding-block:var(--sect);}
.gd-band[id]{scroll-margin-top:24px;}
.gd .prose.guide.gd-col{max-width:47rem;}
.gd-h{margin:0 0 var(--s4);}
.gd-h .gd-n{margin-bottom:var(--s3);}
.gd .prose.guide .gd-h h2{margin:0;font-size:var(--d-l);line-height:var(--lh-h2);letter-spacing:-.02em;max-width:19ch;text-wrap:balance;}

.gd h2.lr2 .ln{overflow:visible;}
.gd h2.lr2 .ln > span{transform:none;transition:none;}

.gd-toc ol{list-style:none;margin:0;padding:0;}
.gd-toc a{display:flex;align-items:center;gap:12px;text-decoration:none;}
.gd-toc .gd-n{width:34px;height:34px;font-size:15px;transition:background .3s var(--m-ease,ease),color .3s var(--m-ease,ease),border-color .3s var(--m-ease,ease);}
.gd-toc a span{font-size:var(--t-small);line-height:1.35;font-weight:500;}
.gd-toc a.is-live .gd-n,.gd-toc a:hover .gd-n{background:var(--lime);border-color:var(--lime);color:var(--navy);}

@media (min-width:1180px){
  .gd-body{--toc-w:258px;--toc-gap:clamp(40px,4vw,64px);display:grid;grid-template-columns:minmax(0,1fr);}
  .gd-body > .gd-toc,.gd-body > .gd-flow{grid-row:1;grid-column:1;}

  .gd-toc{position:relative;z-index:6;pointer-events:none;width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad);box-sizing:border-box;}
  .gd-toc-in{pointer-events:auto;position:sticky;top:96px;width:var(--toc-w);margin-top:var(--sect);
    max-height:calc(100vh - 120px);overflow:auto;padding:18px 16px;border-radius:18px;
    background:var(--navy-3);border:1px solid rgba(248,245,230,.14);box-shadow:0 22px 40px -26px rgba(0,10,24,.55);}
  .gd-toc li + li{margin-top:4px;}
  .gd-toc a{padding:6px 6px;border-radius:12px;color:var(--cream-dim);}
  .gd-toc a:hover,.gd-toc a.is-live{color:var(--cream);background:rgba(248,245,230,.06);}
  .gd-band > .shell{padding-left:calc(var(--pad) + var(--toc-w) + var(--toc-gap));}
}
@media (max-width:1179.98px){

  .gd-toc{background:var(--cream-2);border-bottom:1px solid var(--rule-l);}
  .gd-toc-in{max-width:var(--max);margin-inline:auto;}
  .gd-toc ol{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;
    padding:14px var(--pad);scrollbar-width:thin;}
  .gd-toc li{flex:none;scroll-snap-align:start;}
  .gd-toc a{min-height:44px;width:clamp(200px,58vw,260px);padding:8px 14px 8px 8px;border-radius:999px;background:#fff;
    border:1px solid var(--rule-l);color:var(--navy);box-sizing:border-box;}
  .gd-toc a span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14px;}
}

.gd .on-navy .prose.guide ul,.gd .on-navy .prose.guide ol{color:var(--cream-dim);}
.gd .on-navy .prose.guide strong{color:var(--cream);}
.gd .on-navy .prose.guide li::marker{color:var(--lime);}
.gd .on-navy .prose.guide .method{color:var(--cream-mute);border-bottom-color:var(--rule-d);}
.gd .on-navy .prose.guide .method strong{color:var(--cream);}
.gd .on-navy .doc-title,.gd .on-navy .prose.guide .doc-title{color:var(--cream);}
.gd .on-navy .doc-title span,.gd .on-navy .prose.guide .doc-foot{color:var(--cream-mute);}
.gd .on-navy .pr-box{box-shadow:0 0 0 1px var(--rule-d);}
.gd .on-cream .prose.guide li::marker{color:var(--blue-ink);}

.gd .prose p.gd-answer{font-family:var(--display);font-weight:500;font-size:clamp(1.05rem,1.7vw,1.45rem);line-height:1.5;letter-spacing:-.005em;margin-bottom:var(--s5);}
.gd .on-cream .prose p.gd-answer{color:var(--navy);}
.gd .on-navy .prose p.gd-answer{color:var(--cream);}
.gd .gd-intro .prose.guide .method{margin-bottom:0;padding-bottom:0;border-bottom:0;}

.gd .gd-pull{margin:var(--s6) 0;padding:4px 0 4px var(--s5);border-left:4px solid var(--blue);}
.gd .prose .gd-pull p{margin:0;font-family:var(--display);font-weight:600;font-size:var(--d-m);line-height:1.25;letter-spacing:-.012em;max-width:30ch;text-wrap:balance;}
.gd .on-cream .prose .gd-pull p{color:var(--navy);}
.gd .on-navy .gd-pull{border-left-color:var(--lime);}
.gd .gd-pull:last-child{margin-bottom:0;}
.gd .on-navy .prose .gd-pull p{color:var(--cream);}

.gd .gd-cmp{--c-txt:var(--ink);--c-head:var(--navy);--c-lab:#5F6367;--c-rule:rgba(0,10,24,.12);--c-rule-h:rgba(0,10,24,.3);--c-dot:rgba(0,10,24,.34);}
.gd .on-navy .gd-cmp{--c-txt:var(--cream-dim);--c-head:var(--cream);--c-lab:var(--cream-mute);--c-rule:rgba(248,245,230,.12);--c-rule-h:rgba(248,245,230,.28);--c-dot:rgba(248,245,230,.42);}
.gd .prose.guide .cmp-t{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;border-radius:0;box-shadow:none;font-size:var(--t-small);line-height:1.45;}
.gd .prose.guide .cmp-t thead th{padding:18px 16px 14px;background:none;box-shadow:none;border-radius:0;border-bottom:1px solid var(--c-rule-h);
  font-family:var(--display);font-weight:600;font-size:var(--d-s);line-height:1.15;color:var(--c-head);vertical-align:bottom;}
.gd .prose.guide .cmp-t tbody tr > *{padding:16px;background:transparent;border-radius:0;border-top:0;border-bottom:1px solid var(--c-rule);vertical-align:top;text-align:left;color:var(--c-txt);}
.gd .prose.guide .cmp-t tbody th{width:28%;font-size:var(--t-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.4;color:var(--c-lab);padding-top:18px;}
.gd .prose.guide .cmp-t tbody td{padding-left:36px;background:radial-gradient(circle at 18px 25px,var(--c-dot) 0 4px,transparent 4.6px) no-repeat;}
.gd .prose.guide .cmp-t tbody td.num{font-weight:600;color:var(--c-head);}
.gd .prose.guide .cmp-t tbody td:last-child{width:22%;font-size:var(--t-label);line-height:1.5;color:var(--c-lab);}
.gd .prose.guide .cmp-t tbody tr:last-child > *{border-bottom:0;}

.gd .prose.guide .cmp-t thead th:first-child{width:26%;}
.gd .prose.guide .cmp-t thead th:last-child{width:20%;}
.gd .prose.guide .cmp-t tbody td:last-child{padding-left:16px;background:none;}
@media (max-width:760px){
  .gd .prose.guide .cmp-t,.gd .prose.guide .cmp-t caption,.gd .prose.guide .cmp-t thead,.gd .prose.guide .cmp-t tbody,
  .gd .prose.guide .cmp-t tr,.gd .prose.guide .cmp-t th,.gd .prose.guide .cmp-t td{display:block;}
  .gd .prose.guide .cmp-t thead{position:absolute;left:-9999px;}
  .gd .prose.guide .cmp-t tbody{box-shadow:none;border-radius:0;overflow:visible;}
  .gd .prose.guide .cmp-t tbody tr{display:grid;gap:8px;padding:0;margin-top:18px;background:none;border:0;}
  .gd .prose.guide .cmp-t tbody tr > *{border:0;}
  .gd .prose.guide .cmp-t tbody th{width:auto;padding:0 2px;}
  .gd .prose.guide .cmp-t tbody td,.gd .prose.guide .cmp-t tbody td:last-child{width:auto;padding:12px 12px 12px 34px;border:1px solid var(--c-rule-h);border-radius:12px;
    background:radial-gradient(circle at 17px 21px,var(--c-dot) 0 4px,transparent 4.6px) no-repeat;}
  .gd .prose.guide .cmp-t tbody td::before{content:attr(data-col);display:block;margin-bottom:2px;font-size:var(--t-label);font-weight:600;color:var(--c-head);}

  .gd .prose.guide .cmp-t tbody td:last-child{grid-column:1 / -1;padding:0 2px;border:0;background:none;font-size:var(--t-label);}
  .gd .prose.guide .cmp-t tbody td:last-child::before{display:inline;margin:0 4px 0 0;}
  .gd .prose.guide .cmp-t tbody td:last-child::after{content:none;}

  .gd .prose.guide .cmp-t tbody tr:has(> td:nth-of-type(3)){grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .gd .prose.guide .cmp-t tbody tr:has(> td:nth-of-type(3)) > th{grid-column:1 / -1;}
}

.gd .gd-jp{background:var(--navy-2);}
.gd-jp-grid{display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center;}
.gd-jp-pic{margin:0;}
.gd-jp-pic img{width:100%;height:auto;display:block;}
.gd .gd-jp .prose.guide .jp-line{margin:var(--s4) 0 var(--s4);padding-left:var(--s4);border-left:3px solid var(--lime);color:var(--cream);font-size:clamp(1.05rem,1.3vw,1.18rem);line-height:1.65;}
.gd .gd-jp .prose.guide .jp-sign{margin:0;font-family:var(--display);font-weight:700;font-size:var(--d-s);line-height:1.2;letter-spacing:-.01em;color:var(--blue-lift);}
@media (max-width:860px){
  .gd-jp-grid{grid-template-columns:minmax(0,1fr);}
  .gd-jp-pic{max-width:300px;}
}

.gd .gd-faq .faq{max-width:none;}
.gd .gd-src{margin-top:var(--s6);border-top:1px solid var(--rule-l);border-bottom:1px solid var(--rule-l);}
.gd .gd-src > summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:1fr 24px;gap:var(--s3);align-items:center;min-height:44px;padding-block:var(--s4);}
.gd .gd-src > summary::-webkit-details-marker{display:none;}
.gd .gd-src > summary::after{content:"+";font-family:var(--body);font-size:24px;line-height:1;text-align:center;color:var(--blue);}
.gd .gd-src[open] > summary::after{content:"\2212";}
.gd .prose.guide .gd-src > summary h2{margin:0;font-size:var(--d-s);color:var(--navy);}
.gd .prose.guide .gd-src .sources{margin:0 0 var(--s5);padding-top:0;border-top:0;}

.guide-list.gd-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4);align-items:stretch;}
.guide-list.gd-cards li{min-width:0;}
.guide-list.gd-cards li a{height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--s2);padding:var(--s4) var(--s4) var(--s5);
  border-radius:20px;background:var(--navy);color:var(--cream-dim);
  transition:transform .35s var(--m-pop-s,cubic-bezier(.3,1.25,.5,1)),box-shadow .3s ease;}
.guide-list.gd-cards li a:hover{transform:translateY(-4px);box-shadow:0 22px 36px -24px rgba(0,10,24,.6);}
.gd-card-art{display:grid;place-items:center;aspect-ratio:16/10;margin:0 0 var(--s2);border-radius:14px;background:var(--hero-ground,#1B4EB0);overflow:hidden;}
.gd-card-art img{width:auto;height:auto;max-width:86%;max-height:84%;object-fit:contain;transition:transform .5s var(--m-ease-enter,cubic-bezier(.16,1,.3,1));}
.guide-list.gd-cards li a:hover .gd-card-art img{transform:translate3d(0,-6px,0) scale(1.03);}
.guide-list.gd-cards .guide-kicker{color:var(--cream-mute);}
.guide-list.gd-cards b{font-size:var(--d-s);line-height:1.25;color:var(--cream);}
.guide-list.gd-cards li a:hover b{color:var(--lime);}
.guide-list.gd-cards li a > span.gd-card-ans{font-size:var(--t-small);line-height:1.55;color:var(--cream-dim);}
@media (max-width:960px){ .guide-list.gd-cards{grid-template-columns:minmax(0,1fr);max-width:560px;} }
@media (prefers-reduced-motion:reduce){
  .guide-list.gd-cards li a,.guide-list.gd-cards li a:hover,.guide-list.gd-cards li a:hover .gd-card-art img{transform:none;transition:none;}
}
.gd-toc .gd-n{border-color:var(--lime);}
@media (max-width:1179.98px){ .gd-toc .gd-n{border-color:var(--navy);} }
