:root { --navy:#102943; --ink:#183044; --blue:#245c83; --amber:#e6a73c; --cream:#f7f4ed; --white:#fff; --line:#d9e1e5; --muted:#5e6d77; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--cream); font:17px/1.6 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color:inherit; }
img { max-width:100%; display:block; }
.skip { position:absolute; left:-999px; top:0; padding:.75rem 1rem; background:var(--white); z-index:99; }
.skip:focus { left:1rem; top:1rem; }
.shell { width:min(1160px, calc(100% - 40px)); margin:auto; }
header { background:var(--navy); color:var(--white); position:sticky; top:0; z-index:20; box-shadow:0 2px 18px #0d223533; }
.nav { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { text-decoration:none; display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.02em; }
.brand-logo { width:156px; height:auto; display:block; background:#fff; padding:5px 8px; border-radius:6px; }
.mark { width:39px; height:39px; display:grid; place-items:center; border:1px solid #ffffff66; border-radius:50%; font-family:Georgia,serif; font-size:.9rem; color:var(--amber); }
.links { display:flex; align-items:center; gap:26px; }
.links a { text-decoration:none; font-size:.94rem; }
.links a:hover,.links a:focus-visible { color:#ffd98d; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:.72rem 1.15rem; background:var(--amber); color:#172b3e; border:2px solid var(--amber); border-radius:7px; font-weight:800; text-decoration:none; cursor:pointer; }
.button:hover,.button:focus-visible { background:#f0b954; border-color:#f0b954; }
.button.ghost { background:transparent; color:var(--white); border-color:#ffffff66; }
.button.ghost:hover { background:#ffffff12; }
.menu { display:none; background:none; border:1px solid #ffffff66; color:white; border-radius:6px; padding:.5rem .7rem; font-size:1rem; }
.hero { background:var(--navy); color:var(--white); overflow:hidden; }
.hero-grid { min-height:620px; display:grid; grid-template-columns:1.03fr .97fr; align-items:center; gap:56px; padding:72px 0 84px; }
.eyebrow { color:var(--amber); text-transform:uppercase; letter-spacing:.13em; font-weight:800; font-size:.78rem; }
h1,h2,h3 { font-family:Georgia, "Times New Roman", serif; line-height:1.12; margin:0 0 18px; }
h1 { font-size:clamp(2.75rem, 6vw, 5rem); max-width:720px; }
h2 { font-size:clamp(2rem,4vw,3.35rem); }
h3 { font-size:1.35rem; }
.lead { font-size:1.18rem; color:#dce7ef; max-width:620px; margin:0 0 30px; }
.actions { display:flex; flex-wrap:wrap; gap:12px; }
.hero-art { position:relative; min-height:430px; border-radius:18px 18px 90px 18px; overflow:hidden; background:linear-gradient(135deg,#285f83,#173951); box-shadow:0 28px 70px #07152188; }
.hero-art img { width:100%; height:100%; min-height:430px; object-fit:cover; }
.hero-art::after { content:""; position:absolute; inset:auto 0 0; height:25%; background:linear-gradient(transparent,#102943aa); }
.placeholder-art { display:grid; place-items:center; min-height:430px; padding:40px; text-align:center; color:#d5e2eb; background:radial-gradient(circle at 70% 20%,#e6a73c44,transparent 26%),linear-gradient(135deg,#285f83,#173951); }
.trust-strip { background:var(--white); border-bottom:1px solid var(--line); }
.trust-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.trust-item { padding:25px 28px; border-right:1px solid var(--line); }
.trust-item:last-child { border-right:0; }
.trust-item strong { display:block; color:var(--navy); font-size:1.03rem; }
.trust-item span { color:var(--muted); font-size:.92rem; }
section { padding:92px 0; }
.section-head { max-width:730px; margin-bottom:42px; }
.section-head p { color:var(--muted); font-size:1.06rem; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.card { background:var(--white); border:1px solid var(--line); border-radius:12px; padding:30px; box-shadow:0 10px 30px #132b3c0b; }
.card-num { color:var(--amber); font-weight:900; letter-spacing:.1em; font-size:.8rem; margin-bottom:42px; }
.card p { color:var(--muted); margin-bottom:0; }
.credential-row { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0 0; }
.credential { display:inline-flex; align-items:center; min-height:36px; padding:6px 11px; border:1px solid #ffffff3b; border-radius:999px; color:#e8f0f5; font-size:.84rem; font-weight:700; }
.subject-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.subject { background:white; border:1px solid var(--line); border-top:4px solid var(--blue); border-radius:9px; padding:22px 20px; font-weight:800; color:var(--navy); }
.subject small { display:block; margin-top:6px; color:var(--muted); font-weight:500; line-height:1.4; }
.subject-link { display:block; color:inherit; text-decoration:none; margin:-22px -20px; padding:22px 20px; }
.subject-link:hover,.subject-link:focus-visible { color:var(--blue); }
.subject-icon { width:42px; height:42px; display:grid; place-items:center; margin-bottom:17px; border-radius:10px; background:#e9f2f7; color:var(--blue); font:700 1.05rem/1 Georgia,serif; }
.wide-media { margin-top:-46px; position:relative; z-index:2; }
.wide-media img { width:100%; max-height:430px; object-fit:cover; border:8px solid #fff; border-radius:18px; box-shadow:0 18px 55px #132b3c22; }
.section-photo { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:14px; box-shadow:0 16px 45px #132b3c18; margin-bottom:30px; }
.landing-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:64px; align-items:start; }
.topic-list { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; list-style:none; padding:0; margin:28px 0 0; }
.topic-list li { background:#fff; border:1px solid var(--line); border-radius:8px; padding:15px 17px; color:var(--navy); font-weight:700; }
.landing-aside { background:var(--navy); color:#fff; border-radius:14px; padding:36px; position:sticky; top:104px; }
.landing-aside p { color:#dce7ef; }
.landing-aside .button { width:100%; margin-top:12px; }
.proof-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:32px; }
.proof-card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:24px; }
.proof-card strong { display:block; color:var(--navy); font:700 1.25rem/1.25 Georgia,serif; margin-bottom:6px; }
.price-line { color:var(--amber); font-weight:900; letter-spacing:.02em; }
.faq-list { display:grid; gap:14px; margin-top:30px; }
.faq-item { background:#fff; border:1px solid var(--line); border-radius:10px; padding:22px; }
.faq-item h3 { font-size:1.15rem; margin-bottom:8px; }
.faq-item p { margin:0; color:var(--muted); }
.bio-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin-top:25px; }
.bio-fact { padding:17px; border:1px solid var(--line); border-radius:8px; background:#fff; }
.bio-fact strong { display:block; color:var(--navy); }
.identity-card { background:#fff; border:1px solid var(--line); border-radius:16px; padding:18px; box-shadow:0 18px 55px #132b3c18; }
.portrait { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 34%; border-radius:11px; }
.identity-logo { width:min(250px,70%); margin:20px auto 6px; }
.identity-caption { text-align:center; color:var(--muted); font-size:.9rem; margin:4px 0 7px; }
.split { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.panel { background:var(--navy); color:var(--white); border-radius:14px; padding:44px; position:relative; overflow:hidden; }
.panel::before { content:"EKP"; position:absolute; right:-8px; bottom:-48px; font:800 8rem/1 Georgia,serif; color:#ffffff0a; }
.check-list { list-style:none; margin:26px 0 0; padding:0; }
.check-list li { border-top:1px solid #ffffff24; padding:15px 0; }
.check-list li::before { content:"—"; color:var(--amber); margin-right:12px; }
.muted { color:var(--muted); }
.note { padding:18px 20px; border-left:4px solid var(--amber); background:#fff8e8; color:#5b4a2c; }
.cta { background:var(--blue); color:white; padding:66px 0; }
.cta-row { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.cta h2 { max-width:720px; margin:0; }
.page-hero { padding:88px 0 64px; background:var(--navy); color:var(--white); }
.page-hero p { max-width:700px; color:#dce7ef; font-size:1.12rem; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
label { display:block; font-weight:700; font-size:.92rem; margin-bottom:7px; }
input,textarea,select { width:100%; padding:13px 14px; font:inherit; border:1px solid #afbdc6; border-radius:6px; background:white; color:var(--ink); }
textarea { min-height:150px; resize:vertical; }
.full { grid-column:1/-1; }
.field-note { font-size:.88rem; color:var(--muted); margin-top:6px; }
.contact-layout { display:grid; grid-template-columns:1.3fr .7fr; gap:58px; }
.contact-box { background:white; border:1px solid var(--line); border-radius:12px; padding:28px; }
.placeholder { color:#8a4c00; background:#fff1d2; padding:3px 7px; border-radius:4px; font-weight:700; }
footer { background:#0b2034; color:#cbd9e3; padding:50px 0; }
.footer-grid { display:flex; justify-content:space-between; gap:36px; }
.footer-links { display:flex; gap:22px; flex-wrap:wrap; }
.footer-links a { color:#dce7ef; }
@media (max-width:850px) {
 .links { display:none; position:absolute; inset:76px 0 auto; padding:20px; flex-direction:column; align-items:flex-start; background:var(--navy); border-top:1px solid #ffffff22; }
 .links.open { display:flex; } .menu { display:block; }
 .hero-grid,.split,.contact-layout,.landing-grid { grid-template-columns:1fr; } .hero-grid { padding:58px 0 70px; }
 .landing-aside { position:static; }
 .hero-art { min-height:330px; } .hero-art img,.placeholder-art { min-height:330px; }
 .cards,.subject-grid,.proof-grid { grid-template-columns:1fr 1fr; } .trust-grid { grid-template-columns:1fr; }
 .trust-item { border-right:0; border-bottom:1px solid var(--line); }
 .cta-row,.footer-grid { align-items:flex-start; flex-direction:column; }
}
@media (max-width:560px) { .shell { width:min(100% - 28px,1160px); } section { padding:68px 0; } .form-grid,.subject-grid,.bio-facts,.cards,.topic-list,.proof-grid { grid-template-columns:1fr; } .full { grid-column:auto; } h1 { font-size:2.7rem; } }
