@charset "UTF-8";
/* v15: pixel-matched approved Variant 3 desktop art with real clickable overlays; independent semantic mobile layout. */
html,body{margin:0}body.v15-home{background:#edf9ff}.desktop-composition{position:relative;width:100%;max-width:2200px;margin:0 auto;line-height:0}.desktop-artwork{display:block;width:100%;height:auto;max-width:none}.hotspot{position:absolute;z-index:4;display:block;border-radius:12px;line-height:1;cursor:pointer}.hotspot:hover{background:rgba(255,255,255,.10)}.hotspot:focus-visible{outline:3px solid #ffb500;outline-offset:2px;background:rgba(255,255,255,.16)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-composition{display:none}
/* Unified internal header: same visual arrangement as desktop screenshot */
body:not(.v15-home) .site-header{position:relative;min-height:78px;background:linear-gradient(100deg,#fff 18%,#f0fbff 76%,#eafaff);border:0;box-shadow:none;backdrop-filter:none}
body:not(.v15-home) .header-inner{min-height:78px;width:min(1460px,calc(100% - 54px));gap:35px}
body:not(.v15-home) .brand-name{font:italic bold clamp(35px,3.5vw,62px)/.9 Georgia,serif;color:#164a98;letter-spacing:-.07em;text-shadow:1px 2px 0 #cceaff}
body:not(.v15-home) .brand-sub{color:#e12531;font-size:11px;letter-spacing:0}
body:not(.v15-home) .primary-nav{gap:clamp(10px,1.8vw,28px)}
body:not(.v15-home) .primary-nav>a{font-size:16px;min-height:38px;padding:7px 21px;background:transparent;border:0;box-shadow:none;border-radius:30px;color:#123a7c}
body:not(.v15-home) .primary-nav>a:hover,body:not(.v15-home) .primary-nav>a[aria-current]{background:linear-gradient(180deg,#0cb8c8,#008ba6);color:white}
body:not(.v15-home) .subhero{background:linear-gradient(110deg,#f4fcff 0%,#d7f4ff 54%,#9ce5ff 100%)}
body:not(.v15-home) .subhero-copy h1{font-family:Arial,"Segoe UI",sans-serif;font-weight:800;font-style:normal;letter-spacing:-.03em}
body:not(.v15-home) .site-footer{background:linear-gradient(180deg,#028bc7,#005b9d 46%,#06407a 100%)}
body:not(.v15-home) .site-footer:before{top:-21px;height:22px;background:linear-gradient(90deg,#b0eeff,#1cb8eb,#057bc3,#d2faff);clip-path:polygon(0 50%,12% 25%,25% 80%,45% 10%,60% 65%,80% 30%,100% 90%,100% 100%,0 100%)}
@media(max-width:1050px){body:not(.v15-home) .header-inner{width:calc(100% - 30px);gap:10px}body:not(.v15-home) .primary-nav>a{font-size:14px;padding:7px 12px}}
@media(max-width:900px){.desktop-composition{display:none}.mobile-composition{display:block}body.v15-home .site-header{position:sticky;top:0;background:rgba(247,253,255,.96);z-index:10}.v15-home .header-inner{min-height:72px}.v15-home .menu-toggle{display:block}.v15-home .primary-nav{display:none;position:absolute;z-index:11;top:calc(100% - 2px);left:15px;right:15px;flex-direction:column;align-items:stretch;background:#effbff;padding:14px;border-radius:0 0 18px 18px;box-shadow:0 12px 28px #0c609b35}.v15-home .primary-nav.open{display:flex}.v15-home .primary-nav>a{justify-content:flex-start}.v15-home .brand-name{font-size:2.5rem}.v15-home .brand-sub{font-size:10px}.mob-hero{padding:29px 0 38px;background:linear-gradient(160deg,#f4fcff 4%,#bdefff 55%,#e6faff 100%)}.mob-hero h1{font:800 clamp(29px,6.3vw,54px)/1.08 Arial,sans-serif;color:#08387f;margin:0 0 15px;letter-spacing:-.035em}.mob-hero p{font-size:16px;max-width:600px}.mob-map{margin:15px -15px 18px;border-radius:24px;overflow:hidden;box-shadow:0 12px 25px #0d84bd20}.mob-map img{width:100%;display:block}.mob-ionic{display:flex;align-items:center;justify-content:space-between;border-radius:16px;background:linear-gradient(#fff36a,#ffbd18);box-shadow:0 6px 0 #f29e06;color:#073579;padding:15px 20px;font-size:19px;font-weight:800}.mob-ionic span{font-size:26px}.mob-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.mob-benefits div{background:#fff9;border:1px solid #bee7f9;border-radius:16px;padding:14px 10px;text-align:center;min-width:0}.mob-benefits i{display:grid;place-items:center;background:#05b4c5;color:#fff;font-size:26px;font-style:normal;border-radius:100%;width:48px;height:48px;margin:auto auto 9px}.mob-benefits strong{display:block;font-size:13px;line-height:1.25;color:#093979}.mob-products{padding:36px 0;background:linear-gradient(#e3f8ff,#f7fdff)}.mob-products h2,.mob-bottom h2{font-size:clamp(24px,5vw,34px);font-weight:800;font-family:Arial,sans-serif;color:#103e83;margin:0 0 10px}.mob-products p{font-size:15px}.mob-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.mob-product-grid a{display:block;border-radius:18px;overflow:hidden;box-shadow:0 9px 22px #2b87b820;border:1px solid #c1e9f4}.mob-product-grid img{width:100%;height:auto;display:block}.mob-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;background:linear-gradient(#09c8d4,#029cb3);color:#fff;border-radius:50px;font-weight:800}.mob-bottom{padding:22px 0 50px;background:linear-gradient(#f8fdff,#dff6ff)}.mob-bottom-card{display:flex;gap:16px;align-items:center;border-radius:20px;background:#fff;border:1px solid #a9d9ef;padding:18px;margin:0 0 14px;box-shadow:0 8px 19px #0876b31a}.mob-bottom-card>span{font-size:36px;color:#06a7ba}.mob-bottom-card h2{margin:0 0 5px}.mob-bottom-card p{margin:0;font-size:14px}.mob-bottom-card>b{margin-left:auto;color:#008eaf}.v15-home .site-footer{background:linear-gradient(#0089be,#064f91);padding:25px 0}.v15-home .site-footer:before{display:none}.v15-home .footer-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.v15-home .footer-phone{font-size:17px}}
@media(max-width:650px){.mob-benefits{grid-template-columns:1fr}.mob-benefits div{display:flex;align-items:center;text-align:left;gap:14px}.mob-benefits i{margin:0;width:42px;height:42px;flex:0 0 42px}.mob-product-grid{grid-template-columns:1fr}.mob-product-grid img{width:100%;aspect-ratio:1.76/1;object-fit:cover}.mob-hero .container,.mob-products .container,.mob-bottom .container{width:calc(100% - 30px)}}
@media(max-width:850px){body:not(.v15-home) .site-header{position:sticky;top:0;z-index:20}body:not(.v15-home) .header-inner{min-height:72px}body:not(.v15-home) .primary-nav{gap:4px}body:not(.v15-home) .primary-nav>a{background:#fff;border:1px solid #b9e9f5}}
