
.procedure-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.procedure-tabs .specialty-card{display:block;position:relative;height:430px;overflow:hidden;background:#253257;isolation:isolate;color:white;text-decoration:none}
.specialty-card:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 25%,#111c3038 45%,#111c30de 100%)}
.specialty-card:after{content:'';position:absolute;inset:auto 0 0;height:5px;background:var(--green);transform:scaleX(0);transition:transform .25s;z-index:3}
.specialty-card.is-selected:after,.specialty-card:focus-visible:after{transform:scaleX(1)}
.specialty-card img{width:100%;height:100%;object-fit:cover;filter:saturate(1.2) contrast(1.04);transition:transform .55s}
.specialty-card:hover img,.specialty-card.is-selected img{transform:scale(1.035)}
.specialty-card:focus-visible{outline:3px solid white;outline-offset:-8px}
.specialty-card-copy{position:absolute;z-index:2;inset:auto 25px 30px;text-align:center}
.specialty-card-copy strong{display:block;font-size:clamp(21px,1.8vw,30px);line-height:1.2;font-weight:700}
.specialty-card-copy small{display:block;margin:13px auto 0;font-size:14px;line-height:1.6;max-width:240px;color:#fff}
.specialty-card-copy em{display:block;font-style:normal;font-size:12px;font-weight:700;margin-top:16px;letter-spacing:.02em;color:#fff}
.procedure-panel{display:block;padding:48px 6%;text-align:center;min-height:410px}
.procedure-panel h3{margin:10px 0 26px;font-size:29px;font-weight:650}
.procedure-panel-top{justify-content:center}
.procedure-panel ul{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;columns:auto;max-width:1150px;margin:0 auto;list-style:none;padding:0}
.procedure-panel li{flex:0 1 calc((100% - 2 * var(--space-text,14px))/3);min-width:0;padding:0;border:0;text-align:left}
.procedure-summary{display:block;padding:18px 20px;height:100%;background:#fcf8f0;border:1px solid #d8e0d3;border-radius:16px;text-decoration:none;color:var(--ink);transition:background .2s,border-color .2s}
.procedure-summary:hover{background:#eaf4e6;border-color:#80ab77}
.procedure-summary strong{display:block;font-size:16px;line-height:1.45}
.procedure-summary span{display:block;margin-top:6px;color:var(--muted);font-size:14px;line-height:1.6}
.procedure-preview-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:26px}
.procedure-panel .procedure-preview-actions .button{grid-area:auto;margin:0;min-height:52px;min-width:220px;padding:13px 24px;border:1px solid #b090c9;font-size:14px;text-transform:none;letter-spacing:0;border-radius:16px}
.procedure-panel .procedure-preview-actions .button-outline{background:transparent}
.touch-hint{display:none}
.guide-page .site-header{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line)}
.guide-page .brand img{filter:var(--logo-color-filter)}
.guide-page .site-header :focus-visible{outline-color:var(--purple)!important}
.guide-page h1,.guide-page h2,.guide-page h3{letter-spacing:-.025em;text-transform:none;font-weight:650}
.guide-wrap{width:88%;max-width:1280px;margin-inline:auto}
.guide-hero{padding:130px 0 66px;background:radial-gradient(ellipse at 100% 0%,#e4efdf,transparent 66%)}
.guide-breadcrumb{font-size:13px;color:var(--muted);display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.guide-breadcrumb a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.guide-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9%;align-items:center}
.guide-hero h1{font-size:clamp(36px,4.5vw,66px);line-height:1.08;margin:14px 0 24px}
.guide-hero .guide-deck{font-size:18px;line-height:1.8;max-width:600px;color:var(--muted)}
.guide-hero .button{margin:26px 0 0}
.guide-hero-photo{width:100%;height:360px;object-fit:cover;border-radius:48% 48% 24px 24px;filter:saturate(1.15)}
.guide-specialties{display:flex;gap:10px;flex-wrap:wrap;margin-top:38px}
.guide-specialties a{padding:10px 17px;border:1px solid #d0c4db;border-radius:30px;font-size:13px;text-decoration:none;background:#fffaf2;color:var(--ink)}
.guide-specialties a[aria-current=page]{background:#e7d9f0;border-color:#ad8cc7;font-weight:800}
.guide-context{padding:24px 0;border-block:1px solid #dae4d5;background:#edf4e9;color:var(--muted);font-size:14px;line-height:1.8}
.guide-context strong{color:var(--ink)}
.guide-index{padding:65px 0 15px}
.guide-index h2{font-size:29px;margin:0 0 24px;text-align:center}
.guide-index-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0}
.guide-index-list a{height:100%;display:flex;gap:15px;align-items:center;padding:20px;border:1px solid #ded5e6;border-radius:17px;background:#fffcf8;text-decoration:none}
.guide-index-list a:hover{background:#f0e8f6;border-color:#b090c9}
.guide-index-list b{color:var(--purple);font-size:14px;flex-shrink:0}
.guide-index-list strong{display:block;color:var(--ink);font-size:16px;line-height:1.4}
.guide-index-list small{display:block;margin-top:5px;color:var(--muted);font-size:13px;line-height:1.6}
.procedure-article{padding:80px 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.procedure-article-header{display:flex;gap:24px;align-items:flex-start;margin-bottom:38px}
.procedure-number{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;background:#e6f3fb;color:var(--blue-text);font-size:18px}
.procedure-article h2{font-size:clamp(28px,3vw,42px);line-height:1.2;margin:0}
.procedure-subtitle{margin-top:13px!important;color:var(--muted);font-size:17px;max-width:820px}
.procedure-reading-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7%;align-items:start}
.procedure-visual{position:static;min-width:0}
.explain-carousel{overflow:hidden;border:1px solid #d8cbe1;border-radius:26px;background:#f3edf7;touch-action:pan-y;box-shadow:0 16px 40px #48335b08}
.explain-carousel:focus-visible{outline:3px solid var(--purple);outline-offset:5px}
.explain-slide{margin:0}
.explain-slide img{display:block;width:100%;height:auto;aspect-ratio:16/11;object-fit:contain;background:#f2edf6}
.explain-slide figcaption{padding:26px 28px 12px;min-height:165px}
.slide-label{display:block;color:var(--purple);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.explain-slide h3{font-size:23px;line-height:1.25;margin:0 0 10px}
.explain-slide p{font-size:15px;line-height:1.75;margin:0;color:var(--muted)}
.carousel-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 24px 24px}
.carousel-arrow{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #baa5cc;border-radius:50%;background:#fffbf5;color:var(--ink);font-size:23px;cursor:pointer}
.carousel-arrow:hover{background:#e2d4ed}
.carousel-dots{display:flex;gap:3px}
.carousel-dot{width:35px;height:35px;border:0;background:none;display:grid;place-items:center;cursor:pointer}
.carousel-dot:before{content:'';width:8px;height:8px;background:#b6a5c2;border-radius:100%;transition:width .2s}
.carousel-dot[aria-pressed=true]:before{width:22px;border-radius:10px;background:#6c4d84}
.visual-note{font-size:12px;line-height:1.7;color:var(--muted);margin:15px 6px 0}
.procedure-copy{min-width:0}
.procedure-copy h3{font-size:20px;margin:0 0 10px}
.procedure-copy p{color:var(--muted);font-size:16px;line-height:1.85;margin:0 0 25px}
.guide-disclosure{border-top:1px solid #ddd4e5;padding:0}
.guide-disclosure:last-of-type{border-bottom:1px solid #ddd4e5}
.guide-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;font-weight:750;font-size:16px;color:var(--ink);cursor:pointer;list-style:none}
.guide-disclosure summary::-webkit-details-marker{display:none}
.guide-disclosure summary:after{content:'+';font-size:24px;color:var(--purple);font-weight:400}
.guide-disclosure[open]>summary:after{content:'−'}
.guide-disclosure p{font-size:15px;padding-right:12px}
.guide-disclosure .question{font-size:16px;margin:6px 0 8px}
.source-list{padding-left:20px;margin:0 0 24px;line-height:1.8;font-size:13px;color:var(--muted)}
.source-list a{color:var(--blue-text);text-underline-offset:3px;overflow-wrap:anywhere}
.procedure-end{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:28px}
.procedure-end .button{margin:0;font-size:14px;min-width:0}
.back-index{font-size:13px;color:var(--purple);text-underline-offset:4px;padding:12px 0}
.guide-final{padding:70px 0 85px;text-align:center}
.guide-final h2{font-size:34px;margin-bottom:20px}
.guide-final p{max-width:700px;margin:0 auto 22px;color:var(--muted);line-height:1.85}
.guide-final>.button+p{margin-top:22px}
.guide-care{padding:28px;border-radius:20px;background:#edf4e9;text-align:left;margin:30px auto;max-width:900px}
.guide-care strong{display:block;margin-bottom:8px}
.guide-care p{font-size:14px;margin:0;max-width:none}
@media(hover:none){.hover-hint{display:none}.touch-hint{display:inline}}
@media(min-width:1500px){.procedure-tabs .specialty-card{height:480px}}
@media(max-width:1000px){.procedure-tabs .specialty-card{height:360px}.specialty-card-copy{inset:auto 16px 24px}.specialty-card-copy strong{font-size:22px}.specialty-card-copy small{font-size:13px}.guide-index-list{grid-template-columns:repeat(2,minmax(0,1fr))}.procedure-reading-grid{gap:5%}.guide-hero-grid{gap:6%}.guide-hero-photo{height:300px}}
@media(max-width:700px){.procedure-tabs .specialty-card{height:300px}.specialty-card-copy{inset:auto 14px 22px}.specialty-card-copy strong{font-size:21px}.specialty-card-copy small{font-size:12px;line-height:1.5}.specialty-card-copy em{font-size:11px;margin-top:10px}.procedure-panel{min-height:0;padding:32px 6%}.procedure-panel ul{grid-template-columns:1fr;max-width:none}.procedure-panel h3{font-size:26px}.procedure-preview-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;max-width:340px;margin-inline:auto}.procedure-panel .procedure-preview-actions .button{width:100%;min-width:0}.guide-hero{padding:106px 0 38px}.guide-hero-grid{display:flex;flex-direction:column;gap:30px;text-align:center}.guide-breadcrumb{font-size:12px;margin-bottom:26px}.guide-hero h1{font-size:38px}.guide-hero .guide-deck{font-size:16px}.guide-hero .button{margin-inline:auto}.guide-hero-photo{width:74%;height:280px}.guide-specialties{gap:8px;justify-content:center}.guide-specialties a{font-size:12px;padding:9px 13px}.guide-context{font-size:13px}.guide-index{padding-top:42px}.guide-index-list{grid-template-columns:1fr}.procedure-article{padding:50px 0;scroll-margin-top:95px}.procedure-article-header{gap:14px;margin-bottom:27px}.procedure-number{width:38px;height:38px;font-size:14px}.procedure-article h2{font-size:28px}.procedure-subtitle{font-size:15px}.procedure-reading-grid{display:block}.procedure-visual{position:static;margin-bottom:32px}.explain-slide figcaption{min-height:175px;padding:22px 22px 10px}.explain-slide h3{font-size:22px}.procedure-copy p{font-size:15px}.guide-final{padding-block:50px}.guide-final h2{font-size:29px}.guide-care{padding:22px}.procedure-end{justify-content:center}.procedure-end .button{width:100%}}
@media(max-width:370px){.specialty-card-copy strong{font-size:19px}.procedure-tabs .specialty-card{height:285px}.guide-hero h1{font-size:34px}.explain-slide figcaption{min-height:195px}.guide-wrap{width:88%}}
@media(prefers-reduced-motion:reduce){.specialty-card img,.specialty-card:after,.carousel-dot:before{transition:none}.specialty-card:hover img,.specialty-card.is-selected img{transform:none}}

.procedure-article{scroll-margin-top:-60px}
@media(max-width:700px){.procedure-article{scroll-margin-top:-30px}}

@media(min-width:701px) and (min-height:900px){.procedure-visual{position:sticky;top:108px}}

@media(max-width:700px){.procedure-tabs{grid-template-columns:minmax(0,1fr)}.specialty-card-copy small{max-width:290px}}

@media(max-width:700px){.procedure-panel li{flex-basis:100%}}
