    :root{color-scheme:light;--ink:#0d2c39;--muted:#617883;--teal:#04aaa9;--line:#dfebec}
    *{box-sizing:border-box}
    html{background:#fff}
    body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.45 "DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration:none}
    .page{width:min(100%,480px);min-height:100vh;margin:0 auto;background:#fff}
    .icon{width:23px;height:23px;display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
    .masthead{position:relative;isolation:isolate;overflow:hidden;min-height:244px;padding:20px 25px 58px;text-align:center;color:#fff;background:linear-gradient(118deg,#074955 0%,#037f88 50%,#12bbb4 100%)}
    .masthead:before{content:"";position:absolute;z-index:-1;width:220px;height:220px;left:-100px;top:-96px;border-radius:50%;background:#72e5dc;filter:blur(30px);opacity:.34}
    .masthead:after{content:"";position:absolute;z-index:-1;width:270px;height:220px;right:-90px;bottom:-150px;border-radius:50%;background:#103b70;filter:blur(43px);opacity:.55}
    .masthead img{display:block;width:188px;max-width:66%;height:auto;margin:0 auto 7px}
    .masthead p{margin:0;color:#d9ffff;font-size:.79rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
    .content{position:relative;margin-top:-31px;padding:33px 22px 28px;border-radius:31px 31px 0 0;background:#fff;text-align:center}
    .intro{max-width:340px;margin:0 auto 27px}
    h1{margin:0 0 10px;font-size:clamp(1.58rem,7vw,1.92rem);line-height:1.12;letter-spacing:-.045em;font-weight:800}
    .intro p{margin:0;color:var(--muted);font-size:.94rem;line-height:1.5}
    .links{display:grid;gap:13px;text-align:left}
    .link{display:flex;align-items:center;min-height:68px;gap:14px;padding:12px 16px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 23px rgba(20,78,89,.055);transition:transform .18s ease,box-shadow .18s ease}
    .link:hover,.link:focus-visible{transform:translateY(-2px);box-shadow:0 13px 27px rgba(20,78,89,.1)}
    .link:active{transform:scale(.99)}
    .link .icon-wrap{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:13px;background:#e9f7f6;color:#028f94}
    .link .label{flex:1;min-width:0}
    .link strong{display:block;font-size:1rem;line-height:1.2;letter-spacing:-.018em;font-weight:800}
    .link small{display:block;margin-top:4px;font-size:.78rem;color:#6e848a}
    .link>.icon:last-child{width:18px;height:18px;color:#56737d}
    .link.primary{background:linear-gradient(115deg,#0abdb7,#078e9d);border-color:#09abae;color:#fff;box-shadow:0 12px 24px rgba(4,131,140,.21)}
    .link.primary .icon-wrap{background:rgba(255,255,255,.17);color:#fff}
    .link.primary small,.link.primary>.icon:last-child{color:#edffff}
    button.link{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}
    .contact-trigger>.icon:last-child{transform:rotate(90deg)}
    .contact-dialog{position:fixed;inset:auto 0 0;width:min(100%,480px);max-height:calc(100dvh - 20px);margin:auto auto 0;padding:25px 22px max(24px,env(safe-area-inset-bottom));border:0;border-radius:28px 28px 0 0;background:#fff;color:var(--ink);box-shadow:0 -20px 60px rgba(0,35,43,.18);overflow:auto}
    .contact-dialog::backdrop{background:rgba(3,30,37,.62)}
    .dialog-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:21px;text-align:left}
    .dialog-head>div{flex:1}
    .dialog-head h2{margin:0 0 5px;font-size:1.35rem;line-height:1.2;letter-spacing:-.035em}
    .dialog-head p{margin:0;color:var(--muted);font-size:.85rem}
    .dialog-close{display:grid;place-items:center;width:36px;height:36px;flex:none;border:0;border-radius:50%;background:#edf5f5;color:var(--ink);font:600 1.35rem/1 "DM Sans",sans-serif;cursor:pointer}
    .contact-options{display:grid;gap:10px}
    .contact-option{display:flex;align-items:center;min-height:68px;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;text-align:left;transition:background .18s ease,transform .18s ease}
    .contact-option:hover,.contact-option:focus-visible{background:#f1fbfa;transform:translateY(-1px)}
    .contact-option .icon-wrap{display:grid;place-items:center;width:41px;height:41px;flex:none;border-radius:12px;background:#e9f7f6;color:#028f94}
    .contact-option .option-label{flex:1;min-width:0}
    .contact-option strong{display:block;font-size:.98rem;line-height:1.2}
    .contact-option small{display:block;margin-top:4px;color:var(--muted);font-size:.75rem}
    .contact-option>.icon:last-child{width:17px;height:17px;color:#56737d}
    .catalog{position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden;min-height:177px;margin-top:29px;padding:21px;border-radius:23px;background:radial-gradient(circle at 88% 5%,#128d90 0,#0b5865 42%,#083b4b 100%);color:#fff;text-align:left;box-shadow:0 17px 31px rgba(14,85,95,.14);transition:transform .18s ease,box-shadow .18s ease}
    .catalog:hover,.catalog:focus-visible{transform:translateY(-2px);box-shadow:0 21px 35px rgba(14,85,95,.19)}
    .catalog:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#083b4b 0%,rgba(8,59,75,.98) 42%,rgba(8,59,75,.16) 100%)}
    .catalog img{position:absolute;z-index:-2;right:-33px;bottom:-14px;width:67%;height:auto;filter:drop-shadow(0 14px 14px rgba(0,19,27,.36));transform:rotate(-3deg)}
    .catalog-copy{position:relative;z-index:1;width:61%;max-width:205px}
    .catalog-copy .eyebrow{display:block;margin-bottom:8px;color:#90e9e2;font-size:.69rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
    .catalog-copy strong{display:block;font-size:1.29rem;letter-spacing:-.035em;line-height:1.14;font-weight:800}
    .catalog-copy .cta{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:.78rem;font-weight:800;color:#a8fff7}
    .catalog-copy .cta .icon{width:15px;height:15px}
    .more{margin-top:36px;text-align:center}
    .more h2{margin:0 0 16px;font-size:1.08rem;letter-spacing:-.025em}
    .socials{display:flex;justify-content:center;gap:17px}
    .socials a{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#0a333c;color:#fff;transition:transform .18s ease,background .18s ease}
    .socials a:hover,.socials a:focus-visible{transform:translateY(-2px);background:#078f95}
    .socials .icon{width:22px;height:22px}
    .map{overflow:hidden;height:220px;margin-top:25px;border-radius:19px;background:#e9f2f2}
    .map iframe{display:block;width:100%;height:100%;border:0}
    .address{margin:10px 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}
    .hours{margin:27px auto 0;color:var(--ink)}
    .hours strong{display:block;margin-bottom:5px;font-size:.93rem}
    .hours span{display:block;color:var(--muted);font-size:.88rem}
    .brand-band{height:18px;margin:32px -22px 0;background:#03aaa9}
    .footer{padding:21px 0 2px;color:#8b9ea4;font-size:.76rem}
    :focus-visible{outline:3px solid #0cbdb9;outline-offset:4px}
    @media(max-width:360px){.content{padding-left:17px;padding-right:17px}.catalog-copy{width:64%}.catalog img{width:65%;right:-44px}.brand-band{margin-left:-17px;margin-right:-17px}}
    @media(min-width:700px){body{background:#eef6f7}.page{margin:25px auto;min-height:calc(100vh - 50px);border-radius:30px;overflow:hidden;box-shadow:0 25px 70px rgba(20,84,94,.13)}.contact-dialog{inset:0;margin:auto;border-radius:28px}}
    @media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important}}
