:root{--bg:#F4FAFC;--surface:#FFFFFF;--sub:#E7F3F6;--title:#0E3A46;--text:#24505A;--muted:#4A7380;--light:#7A9AA4;--brand:#1A7F8F;--bright:#2BB3C4;--deep:#0F5B68;--pale:#D7EEF2;--border:rgba(26,127,143,.16);--shadow:0 14px 34px rgba(14,58,70,.08);--radius:18px;--max:1200px;--header:106px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Arial,sans-serif;font-size:16px;line-height:1.75;overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button,input{font:inherit}.wrap{width:min(calc(100% - 32px),var(--max));margin:0 auto}.narrow{max-width:860px}.site-header{position:fixed;left:0;right:0;top:0;z-index:40}.harbor-bar{height:58px;background:var(--pale);border-bottom:1px solid var(--border)}.harbor-inner{width:min(calc(100% - 32px),var(--max));height:100%;margin:auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}.brand-center{justify-self:center;min-height:44px;display:flex;align-items:center;justify-content:center}.top-logo{max-height:34px;width:auto}.brand-text{font-weight:800;color:var(--title);letter-spacing:.08em}.round-btn{width:44px;height:44px;border:1px solid var(--border);border-radius:50%;background:#fff;color:var(--deep);cursor:pointer;display:inline-grid;place-items:center;font-size:20px}.harbor-actions{justify-self:end;display:flex;align-items:center;gap:8px}.app-pill,.primary-btn,.secondary-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:0 20px;font-weight:700}.app-pill,.primary-btn{background:linear-gradient(135deg,#2BB3C4 0%,#1A7F8F 55%,#0F5B68 100%);color:#fff}.secondary-btn{background:#fff;color:var(--deep);border:1px solid var(--border)}.dock-nav{height:48px;background:#fff;border-bottom:1px solid var(--border)}.dock-inner{height:100%;max-width:760px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.dock-inner a{height:48px;display:flex;align-items:center;position:relative;color:var(--muted);font-size:15px}.dock-inner a.active{color:var(--brand);font-weight:700}.dock-inner a.active:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:3px;border-radius:999px;background:var(--brand)}.site-main{padding-top:var(--header)}.home-hero{padding:56px 0 30px}.home-copy{max-width:900px;margin:0 auto 28px;text-align:center}.eyebrow{margin:0 0 10px;font-size:13px;letter-spacing:.16em;font-weight:800;color:var(--brand)}h1,h2,h3{color:var(--title);line-height:1.3;margin-top:0}h1{font-size:clamp(28px,4vw,32px);margin-bottom:16px}h2{font-size:clamp(22px,3vw,28px);margin-bottom:12px}h3{font-size:18px;margin-bottom:8px}.lead{font-size:17px;color:var(--muted);max-width:820px;margin:0 auto}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px}.hero-media{max-width:1100px;margin:30px auto 0;border-radius:20px;overflow:hidden;box-shadow:var(--shadow);background:var(--sub);max-height:340px}.hero-media img{width:100%;height:340px;object-fit:cover}.media-slot{overflow:hidden;border-radius:18px;background:var(--sub);box-shadow:var(--shadow)}.media-slot img{width:100%;height:100%;object-fit:cover}.media-placeholder{display:grid;place-items:center;min-height:220px;color:var(--deep);background:linear-gradient(135deg,#E7F3F6,#D7EEF2)}.media-placeholder span{font-weight:800;letter-spacing:.2em;opacity:.7}.wide-media{aspect-ratio:16/6}.card-media{aspect-ratio:16/10;margin-bottom:18px}.app-icon-media{aspect-ratio:1/1;max-width:118px;min-height:118px}.home-section{padding:66px 0}.section-head{max-width:760px;margin-bottom:28px}.section-head>p:last-child{margin-bottom:0;color:var(--muted)}.feature-grid{display:grid;gap:18px}.six-grid{grid-template-columns:repeat(3,1fr)}.feature-card,.content-card,.mini-grid article,.path-grid article,.three-up article,.visual-strip-grid article,.faq-item,.terms-card,.story-list article,.prose-section,.link-strip,.soft-note{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.feature-card{padding:18px}.feature-card p{color:var(--muted)}.feature-card>a,.text-link,.three-up article>a{color:var(--brand);font-weight:700}.home-band{padding:64px 0;background:var(--sub)}.split-simple{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}.band-copy p{color:var(--muted)}.tide-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.tide-list a{background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px;color:var(--deep);font-weight:700}.tide-list span{display:inline-block;width:34px;color:var(--brand)}.mini-grid,.path-grid,.visual-strip-grid,.three-up{display:grid;gap:16px;margin-top:24px}.mini-grid{grid-template-columns:repeat(4,1fr)}.mini-grid article,.path-grid article,.three-up article,.visual-strip-grid article{padding:20px}.mini-grid p,.path-grid p,.three-up p,.visual-strip-grid p{color:var(--muted);margin-bottom:0}.gallery-home{background:#fff}.visual-strip-grid{grid-template-columns:repeat(4,1fr)}.visual-strip{height:120px;border-radius:14px;margin-bottom:16px;background:linear-gradient(135deg,var(--pale),#fff)}.v2{background:linear-gradient(135deg,#fff,var(--sub))}.v3{background:linear-gradient(160deg,var(--sub),var(--pale))}.v4{background:linear-gradient(30deg,var(--pale),#fff)}.path-grid{grid-template-columns:repeat(3,1fr)}.path-grid span{color:var(--brand);font-weight:800}.app-layout{display:grid;grid-template-columns:120px 1fr 1fr;gap:28px;align-items:center}.app-icon-block{align-self:start}.home-late{padding-bottom:90px}.three-up{grid-template-columns:repeat(3,1fr)}.three-up article a{display:inline-block;margin-right:14px;margin-top:10px}.page-hero{padding:58px 0 24px}.compact-hero .lead{text-align:left;margin:0}.media-section{padding:14px 0 34px}.content-stack{padding:18px 0 86px;display:grid;gap:26px}.prose-section,.terms-card,.story-list,.soft-note,.link-strip{padding:26px 28px}.prose-section p,.terms-card p,.story-list p,.soft-note p,.link-strip p{color:var(--muted);margin:12px 0 0}.terms-card article+.terms-card article,.story-list article+.story-list article{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.card-grid,.steps-grid,.window-grid,.index-grid{background:transparent}.grid-inner{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.content-card{padding:22px}.content-card p{color:var(--muted);margin-bottom:0}.card-no{color:var(--brand);font-weight:800;font-size:13px}.soft-note{background:var(--sub)}.link-strip{display:flex;align-items:center;justify-content:space-between;gap:20px}.faq-list{padding:30px 0 86px;display:grid;gap:16px}.faq-item{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:24px}.faq-item>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--sub);color:var(--brand);font-weight:800}.faq-item h2{font-size:20px;margin-bottom:8px}.faq-item p{color:var(--muted);margin:0}.site-footer{background:var(--title);color:#D4E8EC;padding:52px 0 28px}.footer-inner{width:min(calc(100% - 32px),var(--max));margin:auto}.footer-brand{max-width:520px;margin-bottom:34px}.footer-logo-wrap{display:inline-flex;margin-bottom:14px}.footer-logo{max-height:34px;width:auto}.footer-brand-name{font-size:24px;color:#fff;font-weight:800}.footer-brand strong{display:block;color:#fff;font-size:20px}.footer-brand>span{font-size:12px;letter-spacing:.18em}.footer-brand p{color:#B9D7DD}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.footer-grid h2{color:#fff;font-size:15px}.footer-grid a{display:block;color:#D4E8EC;margin:7px 0;font-size:14px}.footer-note{border-top:1px solid rgba(255,255,255,.14);margin-top:36px;padding-top:24px;color:#B9D7DD}.copyright{font-size:13px;margin-top:12px;color:#9FC3CA}.global-overlay{position:fixed;inset:0;background:rgba(14,58,70,.48);z-index:70;opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.global-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.modal-card{position:fixed;left:50%;top:50%;transform:translate(-50%,-48%);z-index:80;width:min(92%,760px);max-height:min(86vh,820px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 24px 70px rgba(14,58,70,.24);opacity:0;visibility:hidden;pointer-events:none;transition:.2s}.modal-card.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%)}.modal-head{position:sticky;top:0;z-index:2;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--border)}.modal-brand{display:flex;align-items:center;gap:12px}.modal-logo{max-height:30px;max-width:120px}.modal-head strong{display:block;color:var(--title)}.modal-head span{display:block;color:var(--muted);font-size:13px}.close-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--deep);font-size:26px;cursor:pointer}.sitemap-groups{padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:24px}.sitemap-groups section{min-width:0}.sitemap-groups h2{font-size:16px;margin-bottom:10px}.sitemap-groups a{display:block;padding:12px 0;border-bottom:1px solid var(--border)}.sitemap-groups a strong{display:block;font-size:15px}.sitemap-groups a span{display:block;color:var(--muted);font-size:13px}.search-dialog{max-width:620px}.search-box{display:flex;align-items:center;gap:10px;margin:20px;border:1px solid var(--border);border-radius:999px;padding:0 18px;min-height:50px;background:var(--bg)}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--title)}.quick-links{padding:0 20px 24px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-links a{padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:#fff;color:var(--deep);font-weight:700}.mobile-bottom{display:none}.round-btn:hover,.round-btn:focus-visible,.app-pill:hover,.app-pill:focus-visible,.primary-btn:hover,.primary-btn:focus-visible,.secondary-btn:hover,.secondary-btn:focus-visible,a:focus-visible,.close-btn:focus-visible{outline:3px solid rgba(43,179,196,.35);outline-offset:2px}.feature-card:hover,.content-card:hover,.mini-grid article:hover,.path-grid article:hover{transform:translateY(-2px);transition:.2s}
@media(max-width:900px){:root{--header:58px}.dock-nav{display:none}.six-grid{grid-template-columns:repeat(2,1fr)}.split-simple,.app-layout{grid-template-columns:1fr}.app-layout .app-icon-block{display:none}.mini-grid,.visual-strip-grid{grid-template-columns:repeat(2,1fr)}.three-up{grid-template-columns:1fr}.site-main{padding-bottom:62px}.mobile-bottom{position:fixed;left:0;right:0;bottom:0;z-index:55;height:calc(50px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid var(--border)}.mobile-bottom a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;color:var(--muted);min-height:50px}.mobile-bottom a span{font-size:17px;line-height:1}.mobile-bottom a.active{color:var(--brand);font-weight:700}.site-footer{padding-bottom:calc(80px + env(safe-area-inset-bottom))}}
@media(max-width:640px){.wrap,.harbor-inner,.footer-inner{width:calc(100% - 32px)}.harbor-inner{grid-template-columns:44px minmax(0,1fr) auto}.harbor-actions .search-trigger{display:none}.app-pill{padding:0 14px;font-size:13px}.brand-center{min-width:0}.top-logo{max-width:140px}.home-hero{padding-top:38px}.hero-media img{height:auto;max-height:300px}.home-section,.home-band{padding:48px 0}.six-grid,.grid-inner,.path-grid,.mini-grid,.visual-strip-grid{grid-template-columns:1fr}.wide-media{aspect-ratio:16/9}.tide-list{grid-template-columns:1fr}.sitemap-groups{grid-template-columns:1fr}.modal-card{width:92%;max-height:84vh}.quick-links{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.link-strip{align-items:flex-start;flex-direction:column}.prose-section,.terms-card,.story-list,.soft-note,.link-strip{padding:22px}.faq-item{grid-template-columns:44px 1fr;padding:20px}.faq-item h2{font-size:18px}.home-copy{text-align:left}.home-copy .lead{text-align:left}.hero-actions{justify-content:flex-start}}
@media(max-width:390px){.app-pill{padding:0 11px}.brand-text{font-size:15px}.footer-grid{grid-template-columns:1fr}}
