:root{--purple:#725599;--purple-dark:#533c72;--purple-soft:#f5f1fa;--purple-line:#ded3ec;--ink:#2d2933;--muted:#6d6676;--line:#e5e1e9;--surface:#fff;--radius:6px;--container:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--surface);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.85;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,summary,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.55;font-weight:700}ul,ol{margin:0;padding:0}svg{flex-shrink:0}a,button,summary,select{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #4d2e82;outline-offset:4px}section[id]{scroll-margin-top:90px}[hidden]{display:none!important}.container{width:min(var(--container),calc(100% - 64px));margin-inline:auto}.narrow{max-width:840px}.icon{display:inline-block;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;left:16px;top:-70px;padding:12px 20px;background:white;color:var(--purple-dark);z-index:20}.skip-link:focus{top:8px}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:5}.header-inner{min-height:84px;display:flex;gap:24px;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;font-size:24px;line-height:1.3;font-weight:800;letter-spacing:.015em;white-space:nowrap}.brand-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--purple);color:white;border-radius:5px}.brand-icon .icon{width:29px;height:29px}.brand-accent{color:var(--purple)}.site-header nav{display:flex;align-items:center;gap:28px;margin-left:auto;font-size:13px;font-weight:600}.site-header nav a{padding:15px 0}.site-header nav a:hover,.site-header nav [aria-current]{color:var(--purple)}.header-cta{display:flex;align-items:center;justify-content:center;gap:12px;background:var(--purple-soft);border:1px solid var(--purple-line);color:var(--purple-dark);padding:10px 18px;font-size:13px;font-weight:700;border-radius:4px}.header-cta .icon{width:18px;height:18px}.header-cta:hover{background:#ece4f5}
.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:14px 24px;color:#fff;background:var(--purple);border:1px solid var(--purple);border-radius:4px;font-size:14px;font-weight:700;line-height:1.6;transition:background .15s,border-color .15s}.button .icon{width:20px;height:20px}.button:hover{background:var(--purple-dark);border-color:var(--purple-dark)}.button-outline{color:var(--purple-dark);background:#fff;border-color:var(--purple-line)}.button-outline:hover{background:var(--purple-soft);border-color:var(--purple)}.text-link{display:inline-flex;align-items:center;gap:12px;color:var(--purple-dark);font-weight:700;font-size:14px;min-height:44px}.text-link:hover{text-decoration:underline}.text-link .icon{width:18px;height:18px}.search-panel{border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;background:#fff;box-shadow:0 5px 20px #3c265908}.search-intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.search-intro>span{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700}.search-intro .icon{width:19px;height:19px;color:var(--purple)}.search-intro small{font-size:12px;color:var(--muted)}.search-form{display:grid;grid-template-columns:1fr 1fr 1fr 1.35fr;gap:16px;align-items:end}.search-form label{min-width:0}.search-form label>span{display:block;font-weight:600;font-size:12px;margin-bottom:8px}.search-form select{width:100%;min-height:52px;padding:10px 34px 10px 13px;border:1px solid #bdb3c9;border-radius:3px;color:var(--ink);font-size:14px;background:#fff;cursor:pointer}.search-submit{padding-inline:14px;gap:10px;white-space:nowrap}.search-submit .icon{width:18px;height:18px}.search-submit .icon:last-child{margin-left:auto}.search-note{color:var(--muted);font-size:11px;margin-top:12px;line-height:1.8}
.section{padding-block:76px}.soft-section{background:var(--purple-soft)}.section-heading{text-align:center;margin-bottom:36px}.section-heading h2{font-size:30px;letter-spacing:.025em}.section-heading h2 span{color:var(--purple)}.section-action{text-align:center;margin-top:28px}.section-action .button{min-width:270px}.section-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:15px}.section-meta a{display:flex;align-items:center;gap:6px;color:var(--purple-dark);white-space:nowrap;min-height:30px}.section-meta .icon{width:13px;height:13px}.table-note{font-size:11px;color:var(--muted);margin-top:14px;line-height:1.8}.theme-lavender{background:#eee6f8;color:#725599}.theme-sage{background:#eaf1ec;color:#426353}.theme-sand{background:#f5eee3;color:#856639}.theme-blue{background:#eaf0f8;color:#486180}
.type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.type-card{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.type-art{height:164px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#e8e0f0;color:var(--purple)}.type-art>.icon{width:92px;height:92px;stroke-width:.8;z-index:1}.type-art::after{content:"";position:absolute;bottom:30px;width:150px;border-top:1px solid currentColor;opacity:.22}.type-number{position:absolute;left:20px;top:15px;font-size:11px;font-weight:700;letter-spacing:.12em}.type-art-outdoor{background:#eee9e0;color:#8b7353}.type-art-delivery{background:#e4ede9;color:#4c7464}.type-body{padding:26px}.type-body h3{font-size:21px}.type-body h3 span{display:block;font-size:12px;font-weight:500;margin-top:7px;color:var(--purple-dark)}.type-body p{font-size:13px;color:var(--muted);margin-top:14px;min-height:72px}.type-body .text-link{margin-top:12px}.service-mark{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border-radius:5px}.service-mark .icon{width:35px;height:35px}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}.tags span{font-size:10px;color:var(--purple-dark);background:var(--purple-soft);padding:3px 10px;border:1px solid #e9e0f2;border-radius:3px;line-height:1.5}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none}.steps li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 28px}.steps li+li{border-left:1px solid var(--purple-line)}.step-count{font-size:12px;color:var(--purple);font-weight:700;letter-spacing:.13em}.steps .icon{width:44px;height:44px;margin:14px 0 20px;color:var(--purple);stroke-width:1.2}.steps h3{font-size:17px}.steps p{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.9}.checklist-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:64px;align-items:center}.checklist-layout h2{font-size:30px;margin:12px 0 20px;line-height:1.8}.checklist-layout h2 span{color:var(--purple)}.checklist-layout .button{margin-top:26px}.checklist{list-style:none;border-top:1px solid var(--line)}.checklist li{display:flex;gap:18px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.checklist li>span{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;background:var(--purple-soft);color:var(--purple);border-radius:50%}.checklist .icon{width:18px;height:18px}.checklist h3{font-size:15px}.checklist p{font-size:12px;color:var(--muted);margin-top:5px}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.guide-card{display:flex;flex-direction:column;background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}.guide-card:hover{border-color:var(--purple)}.guide-art{height:158px;background:#e9e2f0;display:grid;place-items:center;position:relative;color:var(--purple)}.guide-art>.icon{width:72px;height:72px;stroke-width:1}.guide-art-receipt{background:#e6ede8;color:#567461}.guide-art-ruler{background:#eee8df;color:#8a7251}.guide-body{padding:23px;flex-grow:1;display:flex;flex-direction:column}.guide-category{font-size:10px;font-weight:600;color:var(--purple);display:inline-block}.guide-body h3{font-size:16px;line-height:1.8;margin-top:10px}.guide-body>p{font-size:12px;color:var(--muted);margin-top:10px}.guide-bottom{margin-top:auto;padding-top:20px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px}.guide-bottom>span{display:flex;align-items:center;gap:5px}.guide-bottom .icon{width:16px;height:16px}.guide-bottom>.icon{color:var(--purple)}
.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{min-height:80px;display:flex;align-items:center;gap:20px;cursor:pointer;list-style:none;font-size:15px;font-weight:600;padding:20px 16px}.faq-item summary::-webkit-details-marker,.sources summary::-webkit-details-marker{display:none}.faq-item summary>.icon{margin-left:auto;width:18px;height:18px;color:var(--purple)}.faq-item[open] summary>.icon{transform:rotate(45deg)}.question-mark{color:var(--purple);font-size:20px;font-weight:500}.faq-item>div{display:flex;align-items:baseline;gap:22px;padding:0 16px 24px}.answer-mark{font-size:18px;color:var(--muted)}.faq-item p{font-size:13px;color:var(--muted)}.closing{padding:54px 0;background:#ece4f4;text-align:center;border-top:1px solid var(--purple-line)}.closing p{font-size:13px;color:var(--purple-dark)}.closing h2{font-size:26px;margin:12px 0 24px}.site-footer{padding:44px 0 20px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:30px}.site-footer .brand{font-size:20px}.site-footer .brand-icon{width:34px;height:34px}.site-footer .brand-icon .icon{width:25px;height:25px}.footer-top p{font-size:11px;color:var(--muted);margin-top:14px}.footer-top nav{display:flex;align-items:center;gap:20px;font-size:11px;flex-wrap:wrap}.footer-top nav a{padding-block:10px}.footer-top nav a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.footer-bottom small{font-size:10px;white-space:nowrap}
.breadcrumb{padding-top:22px;font-size:11px;color:var(--muted)}.breadcrumb ol{list-style:none;display:flex;gap:10px;flex-wrap:wrap}.breadcrumb li+li::before{content:"/";margin-right:10px;color:#aaa}.breadcrumb a:hover{text-decoration:underline}.page-heading{padding:40px 0 0}.page-heading h1{font-size:32px;margin:12px 0 14px}.page-heading>p:last-child{font-size:14px;color:var(--muted)}.results-section{padding-top:34px}.results-top{display:flex;gap:16px;justify-content:space-between;align-items:center;margin:38px 0 22px}.results-top h2{font-size:20px}.results-top h2 span{font-size:16px;color:var(--purple);margin-left:14px}.reset-link{border:0;background:transparent;min-height:44px;color:var(--purple-dark);text-decoration:underline;padding:8px;font-size:12px}.active-filters{font-size:12px;color:var(--muted);margin-bottom:22px}.empty-results{text-align:center;padding:56px 24px;background:var(--purple-soft);border:1px solid var(--purple-line);border-radius:var(--radius)}.empty-results>.icon{width:48px;height:48px;color:var(--purple);margin-bottom:20px}.empty-results h3{font-size:20px}.empty-results p{font-size:13px;margin:14px 0 24px}.results-table{margin-top:56px}.results-table h2{font-size:22px;margin-bottom:22px}.notice{padding:16px;background:var(--purple-soft);border:1px solid var(--purple-line);font-size:13px;margin-top:16px}
.service-page{padding-top:40px}.service-page-header{display:flex;align-items:center;gap:20px}.service-page-header .service-mark{width:88px;height:88px}.service-page-header .service-mark .icon{width:44px;height:44px}.service-page h1{font-size:34px;margin-top:8px}.service-page-header .tags{margin-top:10px}.service-page-lead{font-size:21px;font-weight:600;margin-top:26px;color:var(--purple-dark)}.detail-layout{display:grid;grid-template-columns:1fr 320px;gap:56px;margin-top:44px;align-items:start}.detail-block{margin-bottom:40px}.detail-block h2{font-size:22px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:20px}.detail-block>p{font-size:14px}.point-list{list-style:none;margin-top:20px}.point-list li{display:flex;gap:12px;align-items:baseline;margin-top:12px;font-size:14px}.point-list .icon{width:18px;height:18px;color:var(--purple)}.detail-facts{margin:0;font-size:14px}.detail-facts>div{display:grid;grid-template-columns:130px 1fr;border-bottom:1px solid var(--line)}.detail-facts dt{padding:14px;background:var(--purple-soft);color:var(--purple-dark)}.detail-facts dd{margin:0;padding:14px 20px}.detail-aside{background:var(--purple-soft);border:1px solid var(--purple-line);border-radius:var(--radius);padding:28px;position:sticky;top:32px}.detail-aside h2{font-size:19px;margin:12px 0 18px}.detail-aside .button{width:100%;margin-top:24px;font-size:12px;gap:10px;padding-inline:10px}.detail-aside small{display:block;font-size:10px;color:var(--muted);margin-top:12px}.sources{border:1px solid var(--line);border-radius:4px;margin-top:24px;font-size:12px}.sources summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;cursor:pointer;color:var(--purple-dark);font-weight:600}.sources summary>.icon{width:16px;height:16px}.sources[open] summary>.icon{transform:rotate(45deg)}.sources>div{padding:0 18px 18px}.sources ul{padding-left:18px;margin-top:10px}.sources a{display:inline-flex;align-items:center;gap:8px;color:var(--purple-dark);text-decoration:underline;padding:6px 0}.sources a .icon{width:12px;height:12px}
.article{padding-block:48px 80px}.article h1{font-size:32px;line-height:1.65;margin:14px 0 20px}.article-lead{font-size:16px;color:var(--muted)}.article-meta{font-size:11px;color:var(--muted);margin-top:20px}.article>section{margin-top:38px}.article>section h2{font-size:22px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:22px}.article>section p{font-size:15px;line-height:2.15;margin-top:14px}.article>section ul{padding-left:24px;margin-top:18px;line-height:2.1}.contents{margin-top:32px;padding:26px 30px;background:var(--purple-soft);border:1px solid var(--purple-line);border-radius:var(--radius)}.contents h2{font-size:15px;margin-bottom:14px}.contents ol{padding-left:22px;font-size:13px}.contents a{display:inline-block;padding-block:6px}.contents a:hover{color:var(--purple);text-decoration:underline}.article-cta{margin:42px 0;padding:32px;background:var(--purple-soft);text-align:center}.article-cta h2{font-size:19px;margin-bottom:20px}.empty-page{text-align:center;padding-block:90px}.empty-page h1{font-size:28px;margin:18px 0}
@media(max-width:1050px){.site-header nav{gap:18px}.header-cta{display:none}.search-form{grid-template-columns:repeat(3,minmax(0,1fr))}.search-submit{grid-column:1/-1}.search-submit .icon:last-child{margin-left:0}.detail-layout{grid-template-columns:1fr 280px;gap:32px}.checklist-layout{gap:38px}.footer-top{flex-direction:column;gap:20px}}
@media(max-width:767px){html{scroll-padding-top:30px}.container{width:calc(100% - 36px)}.header-inner{min-height:106px;display:grid;grid-template-columns:1fr;gap:0;justify-content:start;padding-block:14px 0}.brand{font-size:22px;width:fit-content}.brand-icon{width:35px;height:35px}.brand-icon .icon{width:25px;height:25px}.site-header nav{width:100%;justify-content:space-between;margin:8px 0 0;gap:10px;font-size:10px}.site-header nav a{min-height:40px;padding:10px 0}.search-panel{padding:22px 18px}.search-intro{display:block;margin-bottom:18px}.search-intro>span{font-size:14px}.search-intro small{display:none}.search-form{grid-template-columns:1fr 1fr;gap:14px 12px}.search-form label:last-of-type{grid-column:1/-1}.search-form label>span{font-size:11px;margin-bottom:6px}.search-form select{font-size:16px;min-height:50px;padding-left:10px;padding-right:28px}.search-submit{grid-column:1/-1;min-height:52px;font-size:14px}.search-note{font-size:10px;line-height:1.85}.section{padding-block:48px}.section-heading{margin-bottom:26px}.section-heading h2{font-size:23px;line-height:1.65;letter-spacing:0}.section-heading h2 span{display:inline}.section-meta{display:block;font-size:10px;margin-bottom:12px}.section-meta a{width:fit-content;margin-top:5px}.table-note{font-size:10px}.section-action .button{min-width:0;width:100%}.type-grid{grid-template-columns:1fr;gap:16px}.type-card{display:grid;grid-template-columns:106px 1fr}.type-art{height:100%;min-height:200px}.type-art>.icon{width:62px;height:62px}.type-art::after{width:74px;bottom:46px}.type-number{left:13px;top:12px;font-size:10px}.type-body{padding:20px 17px}.type-body h3{font-size:19px}.type-body h3 span{font-size:10px;line-height:1.7;margin-top:6px}.type-body p{font-size:11px;min-height:0;margin-top:10px}.type-body .text-link{font-size:11px;gap:8px;margin-top:8px}.service-mark{width:56px;height:56px}.service-mark .icon{width:30px;height:30px}.steps{grid-template-columns:1fr;gap:26px}.steps li{display:grid;grid-template-columns:38px 45px 1fr;column-gap:16px;text-align:left;align-items:center;padding:0 0 26px;border-bottom:1px solid var(--purple-line)}.steps li+li{border-left:0}.steps li:last-child{border-bottom:0;padding-bottom:0}.steps .step-count{grid-column:1;grid-row:1/3}.steps .icon{grid-column:2;grid-row:1/3;width:36px;height:36px;margin:0}.steps h3,.steps p{grid-column:3}.steps h3{font-size:15px}.steps p{font-size:11px;margin-top:6px}.steps p br{display:none}.checklist-layout{grid-template-columns:1fr;gap:30px}.checklist-layout h2{font-size:26px;margin-bottom:14px}.checklist-layout .button{margin-top:20px}.checklist li{padding-block:18px;gap:14px}.checklist h3{font-size:14px}.checklist p{font-size:11px}.guide-grid{grid-template-columns:1fr;gap:18px}.guide-card{display:grid;grid-template-columns:100px 1fr}.guide-art{height:100%;min-height:215px}.guide-art>.icon{width:54px;height:54px}.guide-body{padding:20px 18px}.guide-body h3{font-size:14px;margin-top:6px}.guide-body>p{font-size:11px}.guide-bottom{font-size:9px;padding-top:15px}.faq-item summary{font-size:13px;gap:14px;padding:20px 8px;min-height:76px;line-height:1.8}.question-mark{font-size:19px}.faq-item>div{padding:0 8px 22px;gap:17px}.faq-item p{font-size:12px}.closing{padding-block:40px}.closing p{font-size:11px}.closing h2{font-size:20px;line-height:1.8;margin-top:10px}.closing .button{width:100%}.site-footer{padding-top:30px}.footer-top nav{gap:0;display:grid;grid-template-columns:1fr 1fr;font-size:10px}.footer-top nav a{min-height:38px}.footer-bottom{flex-direction:column;gap:12px;font-size:9px}.page-heading{padding-top:28px}.page-heading h1{font-size:26px}.page-heading>p:last-child{font-size:12px}.breadcrumb{font-size:10px;padding-top:16px}.results-section{padding-top:26px}.results-top{margin-top:26px}.results-top h2{font-size:15px}.results-top h2 span{font-size:14px;margin-left:6px}.reset-link{font-size:10px;padding-inline:0}.active-filters{font-size:11px}.empty-results{padding:32px 20px}.empty-results h3{font-size:17px}.empty-results p{font-size:12px}.empty-results .button{font-size:12px;gap:8px}.results-table{margin-top:36px}.results-table h2{font-size:20px}.service-page{padding-top:28px}.service-page-header{gap:14px}.service-page-header .service-mark{width:64px;height:64px}.service-page-header .service-mark .icon{width:32px;height:32px}.service-page h1{font-size:23px;line-height:1.5}.service-page-lead{font-size:18px;line-height:1.8}.detail-layout{grid-template-columns:1fr;gap:30px;margin-top:30px}.detail-block{margin-bottom:30px}.detail-block h2{font-size:20px}.detail-block>p,.point-list li{font-size:13px}.detail-facts{font-size:12px}.detail-facts>div{grid-template-columns:95px 1fr}.detail-facts dt{padding:12px 9px}.detail-facts dd{padding:12px}.detail-aside{position:static;padding:24px}.detail-aside h2{font-size:21px}.detail-aside .button{font-size:14px}.article{padding-block:30px 54px}.article h1{font-size:25px;line-height:1.75}.article-lead{font-size:14px}.article>section h2{font-size:19px}.article>section p,.article>section ul{font-size:13px}.contents{padding:22px}.contents ol{font-size:12px}.article-cta{padding:26px 20px}.article-cta h2{font-size:17px}.empty-page h1{font-size:23px}.empty-page p{font-size:13px}}
@media(max-width:370px){.brand{font-size:20px}.site-header nav{font-size:9px;gap:7px}.type-card{grid-template-columns:86px 1fr}.type-body{padding:18px 14px}.guide-card{grid-template-columns:86px 1fr}.guide-body{padding:18px 14px}.guide-body h3{font-size:13px}.results-top{align-items:start}.results-top h2 span{display:block;margin-left:0}.faq-item summary{gap:10px;font-size:12px}.section-heading h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.sr-only{left:0;top:0}
.search-form select{border-color:#9686a5}
.section-heading>p{margin-top:14px;font-size:14px;color:var(--muted)}
.checklist-layout>div>p{font-size:13px;color:var(--muted)}
.detail-aside>p{font-size:12px;color:var(--muted)}
.empty-page>p{margin-bottom:26px;color:var(--muted)}
.results-table{margin-top:0}
.page-heading h1{margin-top:0}
.error-code{font-size:16px;color:var(--muted)}

/* Mobile navigation, search controls and comparison rows. */
@media(max-width:767px){
  .header-inner{min-height:94px;padding-top:10px}
  .site-header nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:6px;font-size:11px}
  .site-header nav a{min-height:44px;text-align:center;padding:11px 0}

  .section-heading>p{margin-top:10px;font-size:12px}
  #steps .section-heading h2>span,#guides .section-heading h2>span{display:block}
  .checklist-layout>div>.button{display:flex;width:fit-content;max-width:100%;margin-inline:auto}
  .checklist-layout>div>p{font-size:12px}
  .search-panel{padding:18px 16px}
  .search-intro{margin-bottom:12px}
  .search-form{gap:10px 12px}
  .search-form label>span{font-size:12px;margin-bottom:4px}
  .search-form select{min-height:48px}
  .search-submit{min-height:48px;font-size:14px}
  .search-note{font-size:11px;line-height:1.65;margin-top:10px}
  .section-meta{font-size:12px}
  .table-note{font-size:11px}
  .type-body p{font-size:13px}
  .type-body h3 span{font-size:12px}
  .type-body .text-link{font-size:13px}
  .guide-body h3{font-size:15px}
  .guide-body>p{font-size:12px}
  .faq-item summary{font-size:14px}
  .faq-item p{font-size:13px}
}
@media(max-width:370px){
  .site-header nav{font-size:11px}
  .search-panel{padding-inline:14px}
  .type-card{grid-template-columns:78px minmax(0,1fr)}
  .type-body{padding-inline:14px}
  .type-body h3 span{font-size:11px}
  .type-body .text-link{font-size:12px}
}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-card{display:flex;flex-direction:column;min-width:0;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
.service-card-heading{display:flex;align-items:center;gap:18px}
.service-card h3{font-size:21px}
.service-card h3 a:hover{color:var(--purple)}
.service-card h4{font-size:17px;color:var(--purple-dark);margin-top:24px}
.service-card>p{font-size:13px;color:var(--muted);margin-top:12px;flex-grow:1}
.service-card>.button{margin-top:24px;align-self:flex-start}
@media(max-width:767px){
  .service-grid{grid-template-columns:1fr;gap:18px}
  .service-card{padding:22px}
  .service-card-heading{gap:14px}
  .service-card h3{font-size:19px}
  .service-card h4{font-size:16px;margin-top:20px}
  .service-card>p{font-size:13px}
  .service-card>.button{width:100%;margin-top:20px}
}


/* Keep services in columns on every viewport so differences stay comparable. */
.matrix-hint{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;margin-bottom:12px}
.matrix-hint .icon{width:18px;height:18px}
.advertising-disclosure{font-size:11px;color:var(--muted);margin-block:10px}
.affiliate-ad{margin-top:20px;text-align:left}
.ad-label{display:inline-block;padding:2px 8px;font-size:11px;border:1px solid var(--line);border-radius:3px;color:var(--muted);margin-bottom:8px}
.affiliate-code>a{display:block;padding:16px 14px;background:var(--purple);color:white;border-radius:var(--radius);text-align:center;font-size:15px;line-height:1.7;text-decoration:underline;text-underline-offset:3px}
.affiliate-code>img{width:1px;height:1px;max-width:none}
.matrix-scroll{position:relative;overflow-x:auto;border:1px solid var(--purple-line);border-radius:var(--radius);background:#fff;overscroll-behavior-inline:contain}
.comparison-table{border-collapse:separate;border-spacing:0;table-layout:fixed;display:table;width:100%;min-width:880px;font-size:13px;text-align:center;line-height:1.7}
.comparison-table[data-count="5"]{min-width:1040px}
.comparison-table[data-count="6"]{min-width:1218px}
.comparison-table[data-count="7"]{min-width:1396px}
.comparison-table thead{display:table-header-group;background:var(--purple-soft);color:var(--purple-dark)}
.comparison-table tbody{display:table-row-group}
.comparison-table tr{display:table-row}
.comparison-table th,.comparison-table td{display:table-cell;padding:17px 14px;vertical-align:middle;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.comparison-table tr>*:last-child{border-right:0}
.comparison-table tbody tr:last-child>*{border-bottom:0}
.comparison-table .matrix-label{position:sticky;left:0;z-index:1;width:150px;text-align:left;background:#faf8fc;color:var(--purple-dark);font-weight:600;box-shadow:1px 0 0 var(--line)}
.comparison-table thead .matrix-label{background:#ede6f5}
.comparison-table tbody tr:hover td{background:#faf8fc}
.matrix-service{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:15px;font-weight:700;min-height:86px;justify-content:center}
.matrix-service:hover{text-decoration:underline}
.mini-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:4px;flex-shrink:0}
.mini-mark .icon{width:22px;height:22px}
.matrix-availability{font-size:24px;line-height:1;font-weight:500}
.matrix-availability.available{color:var(--purple)}
.matrix-availability.unavailable{color:#8a8392}
.matrix-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:8px 12px;background:var(--purple-soft);border:1px solid var(--purple-line);border-radius:4px;color:var(--purple-dark);font-size:12px;font-weight:700}
.matrix-link .icon{width:15px;height:15px}
.matrix-link:hover{background:#ebe3f4}
.comparison-sources{margin-top:20px}
.comparison-sources>div>div+div{margin-top:16px}
.service-card[id]{scroll-margin-top:100px}

@media(max-width:767px){
  .comparison-table{min-width:620px;font-size:12px}
  .comparison-table[data-count="3"]{min-width:488px}
  .comparison-table[data-count="2"]{min-width:354px}
  .comparison-table[data-count="1"]{min-width:282px}
  .comparison-table[data-count="5"]{min-width:758px}
  .comparison-table[data-count="6"]{min-width:892px}
  .comparison-table[data-count="7"]{min-width:1026px}
  .comparison-table th,.comparison-table td{padding:14px 10px}
  .comparison-table .matrix-label{width:88px;font-size:12px}
  .matrix-service{font-size:13px;min-height:84px;gap:8px}
  .matrix-link{font-size:11px;padding-inline:8px}
  .matrix-hint{font-size:11px;line-height:1.7}
  .comparison-sources summary{font-size:12px}
  .service-card[id]{scroll-margin-top:28px}
}


/* Reference-based first view: one continuous scene with a clear copy hierarchy. */
.hero{background:var(--purple-soft)}
.hero-scene{position:relative;overflow:hidden;background:#f8f7f5}
.hero-visual{position:absolute;inset:0}
.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center 52%}
.hero-inner{position:relative;display:flex;align-items:center;min-height:450px;padding-block:48px;z-index:1}
.hero-copy{max-width:640px}
.hero h1{font-size:44px;line-height:1.55;font-weight:700;letter-spacing:.01em}
.hero h1 span{color:var(--purple)}
.hero-subcopy{font-size:22px;font-weight:500;line-height:1.65;margin-top:24px}
.search-container{position:relative;padding-block:24px 32px}
.hero .search-form label>span{font-size:13px}
.hero .search-form select{font-size:16px}
.hero .search-submit{font-size:16px}
.hero .search-note{font-size:12px}
@media(min-width:768px) and (max-width:1100px){
  .hero h1{font-size:30px}
  .hero-copy{max-width:480px}
  .hero-inner{min-height:380px;padding-block:40px}
  .hero-subcopy{font-size:20px;line-height:1.65}
}
@media(max-width:767px){
  .hero-inner{min-height:260px;align-items:flex-start;padding-block:22px 30px}
  .hero-copy{max-width:none;width:100%}
  .hero h1{font-size:23px;line-height:1.55;letter-spacing:0}
  .hero-subcopy{font-size:18px;line-height:1.7;margin-top:22px}
  .hero-visual img{object-position:right center}
  .hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#f8f7f5 0%,#f8f7f5 34%,#f8f7f500 64%),linear-gradient(90deg,#f8f7f5 0%,#f8f7f5bb 25%,#f8f7f500 62%)}
  .search-container{padding-block:0 24px}
  .hero .search-form label>span{font-size:12px}
  .hero .search-submit{font-size:15px;min-height:50px}
  .hero .search-note{font-size:11px}
}
@media(max-width:370px){.hero h1{font-size:21px}}
@media(max-width:767px) and (max-height:700px){
  .hero-inner{min-height:184px;padding-block:12px}
  .hero h1{font-size:21px;line-height:1.5}
  .hero-subcopy{font-size:14px;line-height:1.6;margin-top:14px}
}

@media(max-width:1050px){.matrix-service .service-name-suffix{display:block}}
@media(max-width:767px){.service-page-header .service-name-suffix{display:block}}
@media(max-width:370px){.service-card .service-name-suffix{display:block}}

