*{box-sizing:border-box} :root{color-scheme:light dark;--bg:light-dark(#f6f8fb,#10151d);--surface:light-dark(#ffffff,#171f2b);--surface2:light-dark(#edf2f8,#202b39);--text:light-dark(#172235,#edf3fb);--muted:light-dark(#5c6879,#aab7c8);--border:light-dark(#dce4ee,#2c394a);--brand:light-dark(#087e8b,#49c3cb);--brand2:light-dark(#075c68,#9ae9e8);--shadow:0 14px 40px rgba(20,38,60,.08)}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;line-height:1.75}a{color:inherit;text-decoration:none}a:hover{color:var(--brand)}button,input{font:inherit}.wrap{width:min(1160px,calc(100% - 32px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:20;background:var(--surface);border-bottom:1px solid var(--border);backdrop-filter:blur(12px)}.head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:1.1rem;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:white;background:linear-gradient(135deg,#087e8b,#36b8b0);font-weight:900;box-shadow:0 7px 18px #087e8b33}.nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.nav a{font-size:.92rem;color:var(--muted);font-weight:650}.nav a:hover,.nav a.active{color:var(--brand)}.head-tools{display:flex;align-items:center;gap:8px}.tool-select,.icon-btn{border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);padding:8px 10px;cursor:pointer}.icon-btn{min-width:42px;min-height:42px}.menu-toggle{display:none}.hero{padding:58px 0 38px}.hero-box{position:relative;overflow:hidden;border-radius:30px;padding:clamp(28px,5vw,60px);background:linear-gradient(120deg,light-dark(#e2f7f5,#12323c),light-dark(#edf2ff,#1d263c));border:1px solid var(--border)}.hero-box:after{content:"";position:absolute;inset:auto -60px -120px auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#34b8b055,transparent 68%);pointer-events:none}.eyebrow{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--border);border-radius:999px;padding:5px 12px;background:var(--surface);color:var(--brand);font-size:.82rem;font-weight:800}.hero h1{max-width:800px;font-size:clamp(2rem,5vw,3.7rem);line-height:1.17;letter-spacing:-.035em;margin:18px 0}.hero p{max-width:690px;color:var(--muted);font-size:1.08rem;margin:0 0 24px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:13px;padding:11px 17px;font-weight:750;border:1px solid var(--border);transition:transform .15s,background .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand);border-color:var(--brand);color:white}.btn-primary:hover{color:white;background:var(--brand2)}.btn-secondary{background:var(--surface)}.section{padding:28px 0 42px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:20px}.section-head h2{font-size:clamp(1.45rem,3vw,2rem);line-height:1.25;margin:0}.section-head p{color:var(--muted);margin:7px 0 0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-card,.article-card,.content-card{background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:20px;box-shadow:var(--shadow);min-width:0}.category-card{display:flex;flex-direction:column;min-height:180px;transition:transform .18s,border-color .18s}.category-card:hover,.article-card:hover{transform:translateY(-3px);border-color:var(--brand)}.cat-number{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--surface2);color:var(--brand);font-weight:900;margin-bottom:12px}.category-card h3,.article-card h3{font-size:1.08rem;line-height:1.45;margin:0 0 8px}.category-card p,.article-card p{color:var(--muted);font-size:.94rem;margin:0 0 12px}.card-link{color:var(--brand);font-weight:800;margin-top:auto}.article-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.82rem;margin-bottom:9px}.article-card{display:flex;flex-direction:column;min-height:240px}.article-art{height:110px;border-radius:14px;margin-bottom:16px;background:linear-gradient(135deg,#0a7886,#52c4b2);position:relative;overflow:hidden}.article-art:before,.article-art:after{content:"";position:absolute;border:1px solid #ffffff66;border-radius:50%;width:160px;height:160px;inset:-65px auto auto -20px}.article-art:after{width:110px;height:110px;inset:auto -25px -55px auto;background:#ffffff18}.ad-slot{margin:24px 0;padding:20px;border:1px dashed var(--border);border-radius:16px;background:var(--surface2);text-align:center;color:var(--muted)}.ad-slot strong{display:block;color:var(--text);font-size:.9rem}.ad-slot span{font-size:.82rem}.page-top{padding:42px 0 22px}.breadcrumbs{font-size:.88rem;color:var(--muted);margin-bottom:12px}.page-top h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.2;margin:0 0 12px}.page-top p{max-width:760px;color:var(--muted);margin:0}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:26px;align-items:start}.prose{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:clamp(20px,4vw,40px);min-width:0}.prose h2{font-size:1.35rem;margin:28px 0 8px}.prose p{margin:0 0 16px}.prose p:last-child{margin-bottom:0}.side-stack{display:grid;gap:16px}.search-box{display:flex;gap:10px;margin:22px 0}.search-box input{flex:1;min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:12px 14px;color:var(--text)}.result-count{color:var(--muted);margin:10px 0 18px}.notice{padding:15px 17px;background:var(--surface2);border-inline-start:4px solid var(--brand);border-radius:12px;color:var(--muted);font-size:.9rem}.site-footer{margin-top:36px;border-top:1px solid var(--border);background:var(--surface)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px;padding:36px 0}.footer-grid h3{font-size:1rem;margin:0 0 10px}.footer-grid p{color:var(--muted);margin:8px 0}.footer-links{display:grid;gap:7px;color:var(--muted);font-size:.92rem}.copyright{border-top:1px solid var(--border);padding:15px 0;color:var(--muted);font-size:.82rem}.pill{display:inline-flex;padding:4px 10px;border-radius:999px;background:var(--surface2);color:var(--brand);font-size:.8rem;font-weight:800}.empty-state{padding:30px;border:1px dashed var(--border);border-radius:18px;color:var(--muted);text-align:center}.skip-link{position:absolute;top:-100px;inset-inline-start:12px;background:var(--surface);padding:10px;border-radius:8px;z-index:50}.skip-link:focus{top:8px}.mobile-nav{display:none}.small{font-size:.88rem;color:var(--muted)}@media(max-width:980px){.nav{gap:10px}.nav a{font-size:.85rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:minmax(0,1fr) 230px}}@media(max-width:760px){.head-row{min-height:68px}.menu-toggle{display:inline-flex}.nav{display:none;position:absolute;top:100%;inset-inline:0;padding:16px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:7px 8px;font-size:.96rem}.head-tools .theme-label{display:none}.hero{padding-top:26px}.hero-box{border-radius:22px}.grid{grid-template-columns:1fr}.category-card{min-height:unset}.article-layout{grid-template-columns:1fr}.side-stack{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:22px}.section{padding:22px 0 30px}.search-box{flex-direction:column}.search-box .btn{width:100%}}@media(min-width:761px){.mobile-nav{display:none!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Mobile responsive improvements */
@media (max-width: 760px) {
  .head-row {
    flex-wrap: wrap;
    gap: 10px;
    padding-block: 10px;
  }

  .brand {
    min-width: 0;
    font-size: 1rem;
    gap: 8px;
  }

  .brand-mark {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
  }

  .head-tools {
    gap: 6px;
    margin-inline-start: auto;
    min-width: 0;
  }

  .tool-select {
    max-width: 110px;
    min-width: 0;
  }

  .icon-btn {
    flex: 0 0 40px;
    min-width: 40px;
    min-height: 40px;
    padding: 6px;
  }

  .hero h1 {
    overflow-wrap: anywhere;
  }

  img,
  video,
  iframe {
    max-width: 100%;
  }

  .content-card,
  .article-card,
  .category-card {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .wrap {
    width: min(100% - 24px, 1160px);
  }
}

@media (max-width: 400px) {
  .head-row {
    column-gap: 6px;
  }

  .brand {
    font-size: .9rem;
    gap: 6px;
  }

  .brand-mark {
    flex-basis: 34px;
    width: 34px;
    height: 34px;
  }

  .head-tools {
    gap: 4px;
  }

  .head-tools .small {
    display: none;
  }

  .tool-select {
    max-width: 88px;
    padding: 7px 4px;
    font-size: .82rem;
  }

  .icon-btn {
    flex-basis: 36px;
    min-width: 36px;
    min-height: 36px;
  }

  .wrap {
    width: calc(100% - 20px);
  }

  .hero-box {
    padding: 22px 16px;
  }

  .actions {
    gap: 8px;
  }

  .actions .btn {
    max-width: 100%;
    white-space: normal;
    text-align: center;
  }
}

/* Fix horizontal overflow in the mobile header */
@media (max-width: 400px) {
  .site-header {
    width: 100%;
    max-width: 100%;
  }

  .site-header .wrap.head-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: calc(100% - 20px);
    max-width: 100%;
    gap: 10px;
    padding-block: 10px;
  }

  .site-header .brand {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
  }

  .site-header .head-tools {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    gap: 8px;
  }

  .site-header .tool-select {
    width: auto;
    max-width: 120px;
    min-width: 0;
  }

  .site-header .icon-btn {
    flex: 0 0 40px;
    width: 40px;
    min-width: 40px;
    min-height: 40px;
  }
}

/* Mobile header: keep all controls inside the viewport */
@media (max-width: 760px) {
  .site-header,
  .site-header .head-row {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .site-header .head-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 10px 0;
  }

  .site-header .brand {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
  }

  .site-header .nav {
    display: none;
  }

  .site-header .head-tools {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
  }

  .site-header .head-tools .small {
    display: none;
  }

  .site-header .tool-select {
    flex: 0 1 auto;
    width: auto;
    min-width: 0;
    max-width: 120px;
  }

  .site-header .head-tools .icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    min-width: 40px;
    min-height: 40px;
  }

  .site-header .head-tools .menu-toggle {
    display: inline-flex;
  }
}

/* Compact header width on mobile */
@media (max-width: 760px) {
  .site-header .head-row {
    display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    width: calc(100% - 20px);
    max-width: 100%;
    min-width: 0;
    margin-inline: auto;
  }

  .site-header .brand {
    flex: 1 1 0;
    min-width: 0;
    gap: 5px;
    font-size: .82rem;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .site-header .brand-mark {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
  }

  .site-header .head-tools {
    flex: 0 0 auto;
    width: auto;
    gap: 3px;
    min-width: 0;
  }

  .site-header .tool-select {
    max-width: 78px;
    padding-inline: 3px;
    font-size: .78rem;
  }

  .site-header .head-tools .icon-btn {
    flex: 0 0 32px;
    width: 32px;
    min-width: 32px;
    min-height: 36px;
    padding: 3px;
  }
}

/* Keep the entire website within the mobile viewport */
html {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

body {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  overflow-x: clip;
}

@media (max-width: 760px) {
  .site-header {
    width: 100%;
    max-width: 100%;
  }

  .site-header .wrap.head-row {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    padding-inline: 10px;
    margin-inline: 0;
  }

  main.wrap,
  .site-footer .wrap {
    box-sizing: border-box;
    width: calc(100% - 20px);
    max-width: 100%;
    margin-inline: auto;
  }

  img,
  video,
  iframe,
  table {
    max-width: 100%;
  }
}

@media (max-width: 760px) {
  .site-header {
    position: relative;
    z-index: 1000;
  }

  .site-header .head-row {
    position: relative;
  }

  .site-header .nav.open {
    display: flex !important;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1001;
    max-height: 75vh;
    overflow-y: auto;
    background: var(--surface);
  }
}
