*,*::before,*::after{box-sizing:border-box}
html{background:#fafafa}
body{margin:0;font-family:system-ui,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.6;color:#262626}
h1{font-size:clamp(2rem,4vw,2.5rem);font-weight:700;line-height:1.25;margin:0 0 1rem;letter-spacing:-0.02em}
h2,h3,strong,b{font-weight:600}
h2{font-size:clamp(1.5rem,3vw,1.875rem);line-height:1.3;margin:1.75rem 0 .875rem;letter-spacing:-.01em}
h3{font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.35;margin:1.5rem 0 .75rem}
.site-header-bg{background:#e0e6eb;width:100%;position:relative}
.site-header{max-width:1200px;margin:auto;padding:10px;display:flex;justify-content:space-between;align-items:center;position:relative}
.logo-area{width:100%;max-width:230px}.logo-area img{width:100%;height:auto;aspect-ratio:230/50;display:block}
.search-area{margin:0 auto;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:min(100%, 540px)}
.search-label{font-size:1.05rem;font-weight:600;color:#444;padding-left:1.5em}
.search-box{width:100%;min-height:47px;display:block}
.gsc-control-cse{padding:0!important;background-color:transparent!important;border-style:none!important}
.gsc-input{padding-right:5px!important;line-height:1.6!important}.gsc-input:focus{outline:0!important}.gsc-input::placeholder{font-size:16px!important}
.gsc-input-box{border:2px solid #666!important;border-radius:5px;box-shadow:0 3px 5px rgba(0,0,0,.15)}.gsc-input-box:focus-within{box-shadow:0 4px 7px rgba(0,0,0,.25)}
.gsc-search-button-v2{border-radius:5px!important;padding:12px 27px 11px!important;box-shadow:0 3px 5px rgba(0,0,0,.15)}.gsc-search-button-v2:hover{cursor:pointer;box-shadow:0 4px 7px rgba(0,0,0,.25)}
.main-nav{background:#23555c;width:100%}
.main-nav ul{max-width:1200px;margin:auto;padding:0;list-style:none;display:flex;justify-content:space-between}
.main-nav li a{display:block;line-height:40px;font-size:clamp(13px,1.6vw,17px);padding:0 clamp(8px,1.2vw,18px);color:#f5f5f5;text-decoration:none;white-space:nowrap}
.main-nav li a.active,.main-nav li a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:#66d1ff}
.hamburger{position:absolute;top:12px;right:10px;display:none;cursor:pointer;padding:5px 10px;z-index:10}
.hamburger span{display:block;width:28px;height:3px;background:#005a66;margin:6px 0;border-radius:2px;transition:.3s}
.menu-toggle{display:none}
.page-container{background:#fafafa;max-width:1200px;margin:auto;padding:15px 10px;display:flex;gap:20px;align-items:flex-start}
.content-area{flex:1;min-width:0}
.page-title{display:flex;align-items:center;gap:12px;margin-bottom:1rem}.page-title h1{margin:0}.page-icon{width:clamp(1.75rem,4vw,2.25rem);height:clamp(1.75rem,4vw,2.25rem);flex-shrink:0}
.sidebar-right{width:260px;flex-shrink:0;margin:0;padding:10px;background:#f2f5f7;border-left:1px solid #eee}
.related-box{padding:10px;border:1px solid #ccc;background:#f0f8ff;box-shadow:0 2px 6px rgba(0,0,0,.1);border-radius:4px;max-height:210px;overflow-y:auto}
.related-box h2{display:flex;align-items:center;gap:8px;font-size:1.2rem;margin:0 0 6px;color:#004080;border-bottom:1px solid #004080;padding-bottom:2px}
.related-box h2::before{content:"";display:inline-block;width:20px;height:20px;background-color:currentColor;
mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='black'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cg%20transform='rotate(-45%2012%2012)'%3E%3Cpath%20d='M9%2017H7A5%205%200%200%201%207%207h2'/%3E%3Cpath%20d='M15%207h2a5%205%200%201%201%200%2010h-2'/%3E%3Cline%20x1='8'%20x2='16'%20y1='12'%20y2='12'/%3E%3C/g%3E%3C/svg%3E");
mask-position:center;mask-size:contain;mask-repeat:no-repeat}
.related-box a{display:block;font-size:.95rem;font-weight:500;padding:4px;margin:3px 0;color:#003852;border-radius:4px}
.related-box a:hover,.related-box a:focus-visible{background:#cde3f0}.related-box hr{border:none;border-top:1px solid #ccc}
.ad-box{min-height:280px;max-width:100%;overflow:hidden;margin:15px auto;text-align:center;background:#f9f9f9}
a{color:#0645ad;text-decoration:none;text-underline-offset:4px}
p a,span a{text-decoration:underline;text-decoration-thickness:0.7px}
a:hover{text-decoration-thickness:1.5px}
.content-area ul li{margin:.3rem 0}
.section-title{font-size:1.2rem;font-weight:600;margin:0 0 10px}
.store-grid{display:flex;flex-direction:column;gap:10px;margin:10px auto 20px}
.store-item a{display:flex;align-items:center;min-height:100px;gap:15px;text-decoration:none;background:#fff;padding:12px;border:1px solid #dadce0;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,0.06)}
.store-item a:hover{background:#eef3f7;border-color:#cfd8dc;box-shadow:0 2px 4px rgba(0,0,0,0.12)}
.store-item img{flex-shrink:0;width:120px;height:60px;aspect-ratio:120/60;object-fit:contain}
.store-info p{margin:3px 0 0;color:#333}
.img-container{text-align:center}.img-container img{width:100%;max-width:625px;height:auto}
summary{cursor:pointer;font-weight:600;margin:10px 0;color:navy}
.disclaimer{font-size:.875rem;color:#444;margin-top:25px;padding-top:15px;border-top:1px solid #e0e0e0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.site-footer{padding:20px 10px 16px;background:#23555c;color:#fff;text-align:center}
.footer-content{max-width:1200px;margin:auto;display:flex;flex-direction:column;align-items:center;gap:20px}
.footer-nav ul{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 30px;margin:0;padding:0;list-style:none}
.footer-nav a,.social-icons a{color:#f5f5f5}
.footer-nav a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px;text-decoration-color:#66d1ff}
.social-icons{display:flex;gap:15px}
.social-icons a{display:inline-flex;padding:6px;color:#f5f5f5;transition:color .2s ease}
.social-icons svg{width:24px;height:24px;display:block}
.social-icons a:hover{color:#66d1ff}
.footer-nav a:focus-visible,.social-icons a:focus-visible{outline:2px solid #fff;outline-offset:3px}
.footer-content>p{margin:0}
.popular-shops-section{margin:2.5rem 0}.popular-shops-section .section-header{margin-bottom:1.25rem;border-bottom:2px solid #eaeaea;padding-bottom:.5rem}.popular-shops-section h2{margin:0}.popular-shops-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:1rem}.shop-tile{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px 15px;text-align:center;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:120px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.shop-tile:hover{transform:translateY(-3px);box-shadow:0 6px 15px rgba(0,0,0,.06);border-color:#b0b0b0}.shop-tile img{max-width:100px;height:auto;max-height:45px;object-fit:contain;margin-bottom:10px}.shop-tile strong{font-size:.9rem;color:#333;font-weight:600}.section-footer-link{text-align:right}.see-all-link{font-size:1.1rem;font-weight:600;color:#0056b3;text-decoration:none;transition:color .2s ease}.see-all-link:hover{color:#003d82;text-decoration:underline}@media(max-width:900px){.popular-shops-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.popular-shops-grid{grid-template-columns:repeat(2,1fr);gap:10px}.shop-tile{padding:15px 10px;min-height:105px}}
.directory-hero{margin-bottom:1.5rem}.az-nav{display:flex;flex-wrap:wrap;gap:6px;margin:2rem 0 1.5rem;padding:10px;background:#fff;border:1px solid #e0e0e0;border-radius:6px}.az-nav a{display:inline-block;padding:6px 10px;color:#0056b3;font-weight:600;text-decoration:none;border-radius:4px;transition:background .2s}.az-nav a:hover{background:#f0f4f8}.az-directory{display:flex;flex-direction:column;gap:1.5rem}.az-group h2{font-size:1.3rem;color:#1a1a1a;border-bottom:2px solid #eaeaea;padding-bottom:.25rem;margin-bottom:.75rem}.directory-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.directory-list a{color:#333;text-decoration:none;font-weight:500;transition:color .2s}.directory-list a:hover{color:#0056b3;text-decoration:underline}
@media (max-width:900px){
.hamburger{display:block}
.site-header{flex-direction:column;align-items:flex-start;padding-right:50px}
.search-area{margin-top:12px;width:100%}
.main-nav{position:absolute;top:70px}
.main-nav ul{flex-direction:column;max-height:0;overflow:hidden;transition:max-height .35s ease-in-out}
.main-nav li a{font-size:18px;font-weight:600;line-height:50px;text-align:center;border-top:1px solid #999}
.menu-toggle:checked ~ .hamburger span:nth-child(1){transform:translate(0,9px) rotate(-45deg)}
.menu-toggle:checked ~ .hamburger span:nth-child(2){opacity:0}
.menu-toggle:checked ~ .hamburger span:nth-child(3){transform:translate(0,-9px) rotate(45deg)}
.menu-toggle:checked ~ .main-nav ul{max-height:1000px}
.page-container{flex-direction:column;align-items:stretch}
.content-area{width:100%}
.sidebar-right{width:100%;border-left:none;border-top:1px solid #eee}
.related-box{max-height:none}
.store-item a{flex-direction:column}
}
@media (max-width:480px){.page-title{align-items:flex-start}.page-icon{margin-top:.2rem}}