
:root{--bg:#f7f5f2;--surface:#fff;--text:#1c1917;--muted:#78716c;--primary:#1e3a5f;--secondary:#3d5a80;--accent:#c9a66b;--fd:Georgia,serif;--fb:system-ui,sans-serif;--r:12px;--shadow:0 8px 30px rgba(15,23,42,.06)}
*{box-sizing:border-box;margin:0;padding:0}
body.g40-body{font-family:var(--fb);color:var(--text);background:var(--bg);line-height:1.65;font-size:16px}
.g40-wrap{width:min(1100px,92vw);margin:0 auto}
a{color:var(--primary);text-decoration:none}
h1,h2,h3{font-family:var(--fd);line-height:1.2;font-weight:600}
.g40-top{background:var(--primary);color:#e8eef5;font-size:.88rem}
.g40-top .g40-wrap{display:flex;justify-content:space-between;align-items:center;padding:.55rem 0;gap:1rem;flex-wrap:wrap}
.g40-header{background:var(--surface);border-bottom:1px solid color-mix(in srgb,var(--muted) 25%,transparent);position:sticky;top:0;z-index:40;backdrop-filter:blur(8px)}
.g40-hbar{display:flex;align-items:center;gap:1rem;padding:1rem 0;flex-wrap:wrap}
.g40-brand{display:flex;align-items:center;gap:.7rem;color:var(--text);font-weight:700;max-width:min(520px,70vw)}
.g40-brand span:last-child{font-size:.92rem}
.g40-mark{width:42px;height:42px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-weight:700}
.g40-nav{display:flex;gap:.2rem;margin-left:auto;flex-wrap:wrap}
.g40-a{padding:.45rem .8rem;border-radius:8px;color:var(--text);font-weight:500}
.g40-on,.g40-a:hover{background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}
.g40-on{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}
.g40-lang button{border:1px solid color-mix(in srgb,#fff 35%,transparent);background:transparent;color:inherit;padding:.2rem .5rem;border-radius:6px;cursor:pointer;margin-left:.2rem}
.g40-lang button.is-on{background:rgba(255,255,255,.18)}
.g40-header .g40-lang button{border-color:color-mix(in srgb,var(--muted) 40%,transparent);color:var(--text)}
.g40-burger{display:none;margin-left:auto;border:1px solid color-mix(in srgb,var(--muted) 35%,transparent);background:var(--surface);padding:.35rem .6rem;border-radius:8px}
.g40-hero{padding:4.2rem 0 3.2rem;background:linear-gradient(160deg,color-mix(in srgb,var(--primary) 8%,var(--bg)),var(--bg))}
.g40-eye{color:var(--secondary);font-weight:600;margin-bottom:.7rem;letter-spacing:.04em;text-transform:uppercase;font-size:.82rem}
.g40-hero h1{font-size:clamp(2rem,4.5vw,3.2rem);max-width:18ch;margin-bottom:1rem}
.g40-lead{color:var(--muted);font-size:1.08rem;max-width:60ch;margin-bottom:1.4rem}
.g40-cta{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1rem}
.g40-btn{display:inline-block;padding:.75rem 1.2rem;border-radius:var(--r);background:var(--primary);color:#fff;font-weight:600;border:2px solid var(--primary);cursor:pointer;font:inherit}
.g40-ghost{background:transparent;color:var(--primary)}
.g40-tag{display:inline-block;padding:.25rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 25%,transparent);color:var(--text);font-size:.85rem}
.g40-sec{padding:3.2rem 0}
.g40-alt{background:var(--surface)}
.g40-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1.2rem}
.g40-card{background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 22%,transparent);border-radius:var(--r);padding:1.2rem;box-shadow:var(--shadow)}
.g40-muted{color:var(--muted);font-size:.92rem;margin-top:.35rem}
.g40-more{margin-top:1.2rem}
.g40-split{display:grid;grid-template-columns:1.15fr .85fr;gap:2rem;align-items:start}
.g40-box{background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 22%,transparent);border-radius:var(--r);padding:1.4rem;box-shadow:var(--shadow)}
.g40-box dl div{display:grid;grid-template-columns:100px 1fr;gap:.4rem;padding:.4rem 0;border-bottom:1px dashed color-mix(in srgb,var(--muted) 30%,transparent)}
.g40-ph{padding:2.8rem 0 1.8rem;background:var(--surface);border-bottom:1px solid color-mix(in srgb,var(--muted) 20%,transparent)}
.g40-prose{max-width:70ch}
.g40-prose h2{margin:1.4rem 0 .6rem;color:var(--primary)}
.g40-vals{margin:1rem 0 0 1.2rem}
.g40-svclist{display:grid;gap:1rem}
.g40-svc{display:grid;grid-template-columns:auto 1fr;gap:.8rem 1rem;background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 22%,transparent);border-radius:var(--r);padding:1.2rem}
.g40-num{font-family:var(--fd);font-size:1.4rem;color:var(--accent);font-weight:700}
.g40-cgrid{display:grid;grid-template-columns:1fr 1.1fr;gap:2rem}
.g40-form{display:grid;gap:.8rem;background:var(--surface);border:1px solid color-mix(in srgb,var(--muted) 22%,transparent);border-radius:var(--r);padding:1.4rem}
.g40-form label{display:grid;gap:.3rem;font-weight:500}
.g40-form input,.g40-form textarea{padding:.7rem .8rem;border:1px solid color-mix(in srgb,var(--muted) 35%,transparent);border-radius:8px;font:inherit;background:var(--bg);color:var(--text)}
.g40-check{display:flex!important;gap:.55rem;align-items:flex-start;font-weight:400;font-size:.92rem}
.g40-msg{padding:.7rem;border-radius:8px;background:#ecfdf5;color:#065f46}
.g40-band{text-align:center}
.g40-foot{background:color-mix(in srgb,var(--primary) 92%,#000);color:#d7e0ea;margin-top:2rem}
.g40-fgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1.8rem;padding:2.4rem 0 1.4rem}
.g40-foot a{color:#e8eef5;display:block;margin:.25rem 0}
.g40-fbot{border-top:1px solid rgba(255,255,255,.12);padding:1rem 0;font-size:.9rem}
@media(max-width:800px){
 .g40-burger{display:block}
 .g40-nav{display:none;width:100%;flex-direction:column}
 .g40-nav.open{display:flex}
 .g40-cgrid,.g40-fgrid,.g40-split{grid-template-columns:1fr}
}

