:root{--navy:#103a52;--accent:#086fa8;--ink:#204357;--muted:#516e80;--line:#d6e7f0;--wash:#f0f8fc;--tint:#e6f4fc;--white:#fff;--radius:20px;color:var(--ink);background:var(--white);font-synthesis:none;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;margin:0;line-height:1.9}a{color:inherit;text-underline-offset:.3em}button,a{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:5px}footer a:focus-visible{outline-color:#8fd7ff}img,svg{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy);font-weight:700}h1{letter-spacing:.015em;font-size:clamp(2rem,3.4vw,3.15rem);line-height:1.55}h2{letter-spacing:.025em;font-size:clamp(1.5rem,2.3vw,2rem);line-height:1.65}h3{font-size:1.18rem;line-height:1.65}em{color:var(--accent);font-style:normal}.container{width:min(1160px,100% - 80px);margin-inline:auto}header{background:var(--white);border-bottom:1px solid var(--line)}.masthead{align-items:center;gap:28px;padding-block:14px;display:flex}.brand{flex:none;align-items:center;gap:13px;text-decoration:none;display:inline-flex}.brand strong{letter-spacing:.13em;font-size:1.85rem;line-height:1.2}.brand small{letter-spacing:.06em;color:var(--muted);margin-top:7px;font-size:.65rem;display:block}.brand-mark{background:var(--navy);color:var(--white);border-radius:15px 15px 15px 3px;place-items:center;width:50px;height:50px;display:grid}.brand-mark svg{width:30px}.header-note{color:var(--muted);border-left:1px solid var(--line);flex:0 auto;min-width:0;padding-left:20px;font-size:.72rem;line-height:1.7}.nav-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 32px;margin-left:auto;display:flex}.nav-links a{padding-block:10px;font-size:.82rem;font-weight:700;text-decoration:none;transition:color .18s;position:relative}.nav-links a:after{content:"";background:var(--accent);height:2px;transition:transform .18s;position:absolute;bottom:6px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a[aria-current]{color:var(--accent)}.nav-links a:hover:after,.nav-links a[aria-current]:after{transform:scaleX(1)}.hero{background:var(--wash);border-bottom:1px solid var(--line);position:relative}.hero-grid{grid-template-columns:1.14fr 1fr;align-items:center;gap:48px;padding-block:78px 72px;display:grid}.eyebrow{letter-spacing:.16em;color:var(--accent);align-items:center;gap:10px;margin-bottom:18px;font-family:Arial,sans-serif;font-size:.69rem;font-weight:700;line-height:1.7;display:flex}.eyebrow:before{content:"";background:currentColor;flex:none;width:19px;height:2px}.hero h1{margin-bottom:25px}.hero .eyebrow{margin-bottom:23px}.lead{color:var(--muted);font-size:1rem;line-height:2.1}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{background:var(--accent);min-height:52px;color:var(--white);border:1px solid var(--accent);border-radius:9px;justify-content:space-between;align-items:center;gap:20px;padding:14px 20px;font-size:.82rem;font-weight:700;text-decoration:none;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.button:hover{background:var(--navy);border-color:var(--navy);transform:translateY(-2px)}.button.outline{color:var(--navy);background:var(--white);border-color:#b7c8d1}.button.outline:hover{background:var(--navy);color:var(--white);border-color:var(--navy)}.button.small{min-height:44px;padding:10px 15px;font-size:.78rem}.hero-caption,.fine{color:var(--muted);margin-top:20px;font-size:.74rem}.hero-caption{align-items:center;gap:9px;display:flex}.hero-caption:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:5px;height:5px}.hero-art{align-content:center;align-self:stretch;display:grid;position:relative}.air-scene{background:#e1f1fa;border-radius:140px 24px 24px;padding:14px;position:relative;overflow:hidden}.air-scene svg{width:100%;display:block}.scene-topline{letter-spacing:.14em;color:#42667d;font:10px Arial,sans-serif;position:absolute;top:27px;right:27px}.art-label{letter-spacing:.17em;color:var(--muted);justify-content:space-between;align-items:center;padding:18px 10px 0;font:10px Arial,sans-serif;display:flex}.art-label span:last-child{letter-spacing:.07em}.scene-caption{background:var(--white);border:1px solid var(--line);border-radius:30px;align-items:center;gap:8px;padding:9px 13px;font-size:.66rem;font-weight:700;display:inline-flex;position:absolute;bottom:27px;left:28px}.scene-caption:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px}.section{padding-block:88px}.section-title{justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px;display:flex}.section-title h2{margin-bottom:0}.section.container>.two-grid+h2{margin-top:48px}.section-title>p{color:var(--muted);margin:0 0 4px;font-size:.82rem}.two-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.three-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-block:38px;display:grid}.audience-card{background:var(--wash);border:1px solid var(--line);border-radius:var(--radius);padding:36px 38px;text-decoration:none;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.audience-card:after{content:"↗" / "";border:1px solid #b8c8d0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:1.1rem;display:grid;position:absolute;top:30px;right:32px}.audience-card:hover{border-color:var(--navy);transform:translateY(-4px)}.audience-card.dark{background:var(--navy);color:var(--white);border-color:var(--navy)}.audience-card.dark:after{border-color:#6c8391}.audience-card.dark h3{color:var(--white)}.audience-card.dark .number{color:#8fd7ff}.number{letter-spacing:.14em;color:var(--accent);margin-bottom:26px;font:700 .72rem/1.6 Arial,sans-serif;display:block}.audience-card h3{margin-bottom:18px;font-size:clamp(1.4rem,2vw,1.65rem)}.audience-card p{margin-bottom:28px;font-size:.88rem}.audience-card>span:last-child{font-size:.82rem;font-weight:700}.text-link{min-height:44px;color:var(--accent);align-items:center;gap:8px;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.wash{background:var(--wash)}.section-intro{color:var(--muted);margin-bottom:27px;font-size:.83rem}.provider-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);flex-direction:column;min-width:0;padding:32px;display:flex}.provider-card .eyebrow{background:var(--tint);letter-spacing:.03em;border-radius:5px;align-self:start;margin-bottom:22px;padding:5px 10px;font-family:inherit;font-size:.67rem}.provider-card .eyebrow:before{display:none}.provider-card h3{margin-bottom:18px;font-size:1.22rem}.provider-card h3 a{text-decoration:none}.provider-card h3 a:hover{text-decoration:underline}.provider-card p,.provider-card li{font-size:.85rem}.provider-card p{color:var(--muted)}.provider-card ul{margin-block:0 28px;padding-left:1.2em}.provider-card li{margin-block:5px}.provider-card li::marker{color:var(--accent)}.card-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:22px;display:flex}.check-card{border-top:1px solid var(--line);padding-top:25px}.check-card .number{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;margin-bottom:22px;display:grid}.check-card p{color:var(--muted);font-size:.86rem}.guide-strip{border-top:1px solid var(--line);grid-template-columns:1.4fr 1fr 1fr;align-items:center;gap:22px;padding-block:48px 76px;display:grid}.guide-strip h2{margin-bottom:0;font-size:1.3rem}.guide-strip>a{background:var(--wash);border:1px solid var(--line);border-radius:12px;padding:26px 22px;font-size:.82rem;font-weight:700;text-decoration:none;transition:border-color .18s}.guide-strip>a:hover{border-color:var(--navy)}footer{background:var(--navy);color:var(--white);padding-block:58px 22px;font-size:.78rem}footer nav{gap:5px;display:grid}footer nav a{align-items:center;min-height:44px;display:inline-flex}footer a{text-decoration:none}footer a:hover{text-decoration:underline}.footer-grid{justify-content:space-between;gap:40px;display:flex}.footer-brand{letter-spacing:.1em;margin-bottom:16px;font-size:1.85rem;font-weight:700}.footer-grid p{color:#c3d1d9}.copyright{color:#c3d1d9;border-top:1px solid #49616f;justify-content:space-between;gap:20px;margin-top:36px;padding-top:24px;font-size:.68rem;display:flex}.page-head{border-bottom:1px solid var(--line);padding-block:60px 40px;position:relative}.page-head h1{margin-bottom:18px;font-size:clamp(1.8rem,3.2vw,2.65rem)}.page-head>p:last-child{color:var(--muted)}.article{max-width:900px;padding-block:36px 90px}.article h1{margin-bottom:28px;font-size:clamp(1.8rem,3.2vw,2.65rem)}.article h2{border-bottom:1px solid var(--line);margin-top:52px;padding-bottom:16px;font-size:1.5rem}.article h3{margin-top:28px}.article li{margin-block:10px}.article ul,.article ol{padding-left:1.4em}.article a:not(.button){text-decoration:underline}.article .provider-card{padding:26px}.article .provider-card h3{margin-top:0}.article .provider-card li{margin-block:5px}.breadcrumb{color:var(--muted);margin-bottom:40px;font-size:.72rem}.notice{background:var(--tint);border:1px solid #c4dfed;border-left:3px solid var(--accent);border-radius:0 12px 12px 0;margin-block:36px;padding:28px}.notice h2{margin-top:0}.notice p:last-child{margin-bottom:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.86rem}th,td{text-align:left;border:1px solid var(--line);vertical-align:top;padding:18px}th{background:var(--wash);font-weight:700}.sr-only,.skip:not(:focus){clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip:focus{background:var(--white);z-index:100;padding:10px;position:fixed;top:8px;left:8px}.guide-list{gap:18px;display:grid}.guide-list a{border:1px solid var(--line);border-radius:14px;padding:28px;text-decoration:none;transition:border-color .18s,background .18s;display:block}.guide-list a:hover{background:var(--wash);border-color:#a7bdc9}.guide-list h2{border:0;margin:0 0 10px;padding:0;font-size:1.2rem}.guide-list p{color:var(--muted);margin:0;font-size:.88rem}@media (width<=1100px){.header-note{display:none}.masthead{gap:20px}.nav-links{gap:6px 24px}}@media (width<=1050px){.container{width:calc(100% - 48px)}.hero-grid{gap:28px;padding-block:58px}.hero h1{font-size:clamp(1.9rem,3.8vw,2.65rem)}.hero .actions{display:grid}.hero .button{justify-content:space-between}.audience-card{padding:30px}.audience-card:after{right:24px}.guide-strip{grid-template-columns:1fr 1fr}.guide-strip>div{grid-column:1/-1}}@media (width<=900px){.masthead{flex-wrap:wrap;gap:4px 16px}.nav-links{justify-content:flex-start;gap:0 20px;width:100%;margin-left:0}}@media (width<=760px){.container{width:calc(100% - 36px)}.masthead{padding-block:14px}.brand strong{font-size:1.6rem}.brand small{margin-top:5px;font-size:.6rem}.brand-mark{border-radius:12px 12px 12px 3px;width:43px;height:43px}.nav-links a{min-height:44px;padding-block:8px;font-size:.75rem}.nav-links a:after{bottom:4px}.hero-grid{grid-template-columns:1fr;gap:34px;padding-block:42px 30px}.hero h1{font-size:clamp(1.55rem,6.6vw,2.65rem);line-height:1.65}.hero .eyebrow{margin-bottom:20px;font-size:.62rem}.hero-art{width:100%;max-width:440px;margin-inline:auto}.air-scene{border-radius:100px 18px 18px}.scene-topline{font-size:8px;top:22px;right:22px}.scene-caption{font-size:.6rem;bottom:22px;left:22px}.art-label{padding-top:12px;font-size:8px}.hero-caption{font-size:.65rem}.lead{font-size:.9rem}.hero .actions{grid-template-columns:1fr 1fr;gap:9px}.hero .button{gap:6px;padding:13px 12px;font-size:.72rem}.section{padding-block:56px}.section-title{margin-bottom:25px;display:block}.section-title>p{margin-top:18px}.section-title>.text-link{margin-top:12px}.two-grid,.three-grid,.guide-strip{grid-template-columns:1fr}.two-grid{gap:18px}.three-grid{gap:24px;margin-block:28px}.audience-card{border-radius:16px;padding:28px}.audience-card h3{font-size:1.42rem}.audience-card:after{width:34px;height:34px;top:23px;right:23px}.provider-card,.article .provider-card{border-radius:16px;padding:25px}.provider-card h3{font-size:1.16rem}.card-actions{padding-top:18px}.check-card{grid-template-columns:42px 1fr;column-gap:18px;display:grid}.check-card .number{grid-row:1/3}.check-card h3{margin-bottom:10px}.check-card p{margin-bottom:0}.footer-grid{display:block}.footer-grid nav{margin-top:25px}.copyright{flex-wrap:wrap;justify-content:flex-start;gap:10px}.copyright span{width:100%}.page-head{padding-block:38px 26px}.page-head h1,.article h1{font-size:1.8rem;line-height:1.7}.article{padding-block:25px 60px}.article h2{margin-top:38px;font-size:1.35rem}.breadcrumb{margin-bottom:28px;font-size:.68rem}.guide-strip{gap:15px;padding-block:35px 48px}.guide-strip>a,.notice{padding:22px}th,td{min-width:120px;padding:13px}.desktop{display:none}}@media (width<=374px){.hero .actions{grid-template-columns:1fr}.hero .button{font-size:.8rem}.card-actions{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.button:hover,.audience-card:hover{transform:none}}.directory-content{padding-top:30px}.company-tabs{border-bottom:2px solid var(--line);gap:8px;display:flex}.company-tabs a{max-width:280px;min-height:60px;color:var(--muted);background:var(--wash);border-radius:10px 10px 0 0;flex:1;justify-content:center;align-items:center;gap:16px;padding:18px;font-weight:700;text-decoration:none;display:flex}.company-tabs a span{letter-spacing:.1em;font:10px Arial,sans-serif}.company-tabs a[aria-current]{color:var(--white);background:var(--accent)}.company-tabs a:hover{box-shadow:inset 0 -3px var(--accent)}.directory-topline{justify-content:space-between;align-items:center;gap:20px;padding-block:20px 32px;font-size:.85rem;display:flex}.directory-topline p{margin:0}.directory-topline strong{color:var(--accent);font-size:1.15rem}.ranking-disclosure{border:1px solid var(--line);background:var(--wash);border-radius:12px;padding:24px 28px;font-size:.84rem}.ranking-disclosure strong{color:var(--navy)}.ranking-disclosure p{margin:8px 0}.ranking-disclosure a{color:var(--accent)}.category-jumps{gap:14px;margin-block:28px 52px;display:flex}.category-jumps a{border:1px solid var(--line);border-radius:8px;flex:1;justify-content:space-between;gap:12px;max-width:300px;padding:14px 20px;font-size:.85rem;font-weight:700;text-decoration:none;display:flex}.category-jumps a:hover{border-color:var(--accent);background:var(--wash)}.category-jumps span{color:var(--accent)}.ranking-group{margin-bottom:64px;scroll-margin-top:24px}.ranking-list{gap:24px;margin:0;padding:0;list-style:none;display:grid}.ranking-card{border:1px solid var(--line);border-radius:16px;overflow:hidden}.rank-heading{background:var(--wash);border-bottom:1px solid var(--line);align-items:center;gap:24px;padding:24px 30px;display:flex}.rank-heading .eyebrow{letter-spacing:.03em;margin-bottom:5px;font-family:inherit}.rank-heading h3{margin:0;font-size:1.3rem}.rank-heading h3 a{text-decoration:none}.rank-heading h3 a:hover{text-decoration:underline}.rank-badge{color:var(--accent);flex:0 0 76px;align-items:baseline;gap:3px;display:flex}.rank-badge strong{font:700 2.5rem/1 Arial,sans-serif}.rank-badge span{font-size:.68rem}.information-count{text-align:right;white-space:nowrap;margin-left:auto}.information-count>span{color:var(--muted);font-size:.68rem;display:block}.information-count strong{color:var(--accent);font:700 1.8rem/1.5 Arial,sans-serif}.information-count small{font-size:.72rem;font-weight:400}.ranking-body{padding:28px 30px}.ranking-body>p{font-size:.86rem}.evidence-checks{flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.evidence-checks li{border:1px solid var(--line);border-radius:7px;align-items:center;gap:8px;padding:8px 12px;font-size:.76rem;display:flex}.evidence-checks li>span{color:var(--accent);font-weight:700}.evidence-checks small{color:var(--accent);font-size:.65rem}.evidence-checks .unconfirmed{background:var(--wash)}.evidence-checks .unconfirmed small,.evidence-checks .unconfirmed>span{color:var(--muted)}.ranking-body .fine{color:var(--muted);font-size:.75rem}.ranking-body .card-actions{margin-top:22px}#method{scroll-margin-top:24px;font-size:.86rem}#method h2{font-size:1.4rem}.listing-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:64px;padding-top:48px;display:grid}.listing-main h2{margin-top:44px;font-size:1.35rem}.listing-main>h2:first-child{margin-top:0}.listing-main p,.listing-main li{font-size:.88rem}.listing-checklist{border:1px solid var(--line);background:var(--wash);border-radius:14px;padding:24px 24px 24px 42px}.listing-checklist li{padding-block:5px}.listing-checklist li::marker{color:var(--accent)}.listing-steps{padding-left:1.4em}.listing-steps li{margin-bottom:22px;padding-left:8px}.listing-steps li::marker{color:var(--accent);font-weight:700}.listing-steps p{color:var(--muted);margin:6px 0 0}.listing-contact{border:1px solid var(--line);background:var(--wash);border-radius:16px;padding:28px}.listing-contact h2{font-size:1.25rem}.listing-contact p{font-size:.84rem}.listing-contact .button{justify-content:center;width:100%;padding-inline:12px}.listing-contact .fine{font-size:.76rem}.listing-contact hr{border:0;border-top:1px solid var(--line);margin-block:24px}@media (width<=1050px){.listing-layout{grid-template-columns:minmax(0,1fr) 310px;gap:32px}}@media (width<=760px){.directory-content{padding-top:20px}.company-tabs{gap:5px}.company-tabs a{gap:8px;padding:14px 10px;font-size:.85rem}.company-tabs a span{font-size:8px}.directory-topline{padding-block:18px 24px;display:block}.directory-topline .text-link{margin-top:8px;font-size:.78rem}.ranking-disclosure{padding:20px}.category-jumps{gap:10px;margin-block:20px 36px}.category-jumps a{flex-direction:column;gap:3px;padding:12px;font-size:.78rem}.ranking-group{margin-bottom:44px}.rank-heading{flex-wrap:wrap;gap:12px;padding:20px}.rank-badge{flex-basis:62px}.rank-badge strong{font-size:2rem}.rank-heading>div:not(.information-count){flex:1;min-width:0}.rank-heading h3{overflow-wrap:anywhere;font-size:1.05rem}.rank-heading .eyebrow{font-size:.6rem}.information-count{text-align:left;flex-basis:100%;align-items:center;gap:12px;margin:0;display:flex}.information-count strong{font-size:1.4rem}.ranking-body{padding:20px}.evidence-checks{display:grid}.evidence-checks small{margin-left:auto}.ranking-body .card-actions{flex-wrap:wrap}.listing-layout{grid-template-columns:1fr;gap:20px;padding-top:32px}.listing-contact{grid-row:1;padding:24px}.listing-main h2{font-size:1.25rem}}.listing-page-head{padding-block:32px 20px}.listing-page-head h1{margin-bottom:10px}.listing-page-head>p:last-child{margin-bottom:0}.listing-form-container{padding-block:24px 0}.listing-form-section{border:1px solid var(--line);background:var(--wash);border-radius:20px;max-width:900px;margin-inline:auto;padding:40px;scroll-margin-top:24px}.listing-form-section h2{font-size:1.7rem}.listing-form-section>p{font-size:.87rem}.form-grid{grid-template-columns:1fr 1fr;gap:20px 24px;margin-top:30px;display:grid}.form-wide{grid-column:1/-1}.form-field{min-width:0}.form-field label{align-items:center;gap:10px;margin-bottom:8px;font-size:.86rem;font-weight:700;display:flex}.form-field label>span,.required-legend{background:var(--tint);color:var(--accent);border-radius:4px;padding:1px 6px;font-size:.65rem;font-weight:700;display:inline-block}.form-field label small{color:var(--muted);font-size:.7rem;font-weight:400}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:48px;font:inherit;color:var(--ink);background:var(--white);border:1px solid #9db6c5;border-radius:7px;padding:12px;font-size:1rem}.form-field textarea{resize:vertical}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible,.form-consent input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.form-field [aria-invalid=true]{border-color:#a32d34}.form-field input::placeholder,.form-field textarea::placeholder{color:#607785;opacity:1}.field-error{color:#a32d34;margin:5px 0 0;font-size:.78rem}.field-error:empty{display:none}.form-help{color:var(--muted);margin-top:8px;font-size:.76rem}.form-consent{margin-block:28px}.form-consent label{align-items:flex-start;gap:12px;font-size:.85rem;display:flex}.form-consent input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 20px;margin-top:5px}.form-trap{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.form-status{border:1px solid var(--line);background:var(--white);border-radius:8px;margin-block:22px;padding:16px 20px;font-size:.86rem}.form-status.is-error{color:#883037;border-color:#d0a6a9}.form-submit{cursor:pointer;font:inherit;min-width:260px;font-size:.88rem}.button:disabled,.button:disabled:hover{color:#506976;cursor:not-allowed;background:#dce7ed;border-color:#b7c8d1;transform:none}.form-fallback{border-top:1px solid var(--line);margin-top:30px;padding-top:24px;font-size:.8rem}#listing-form-heading{scroll-margin-top:24px}@media (width<=760px){.listing-page-head{padding-block:24px 18px}.listing-form-container{padding-block:20px 0}.listing-form-section{border-radius:14px;padding:24px 20px}.listing-form-section h2{font-size:1.4rem}.form-grid{grid-template-columns:1fr}.form-submit{width:100%;min-width:0}}
