:root { --ink:#17342e; --green:#0e5d50; --blue:#2e82a4; --sky:#69b9d5; --lime:#d9e58d; --teal:#0f7d73; --mist:#f5f8f5; --cream:#fbf9f6; --line:#d6e2da; --white:#fff; --serif:Lora,Georgia,serif; --sans:Manrope,Arial,sans-serif; --wrap:min(76rem,calc(100% - 3rem)); --ease:cubic-bezier(.2,.8,.2,1); }
      * { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; color:var(--ink); background:var(--mist); font-family:var(--sans); line-height:1.6; } a { color:inherit; text-decoration:none; } button,input,textarea,select { font:inherit; } .skip { position:absolute; left:1rem; top:-5rem; z-index:20; background:var(--green); color:#fff; padding:.75rem 1rem; border-radius:.5rem; } .skip:focus { top:1rem; }
      .ui-icon { width:1.35rem; height:1.35rem; stroke:currentColor; fill:none; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
      .wrap { width:var(--wrap); margin-inline:auto; } .eyebrow { margin:0 0 1rem; color:var(--green); font-size:.72rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; } h1,h2,h3,p { margin-top:0; } h1,h2 { font-family:var(--serif); font-weight:400; letter-spacing:-.02em; } h1 { line-height:1.05; max-width:12ch; margin-bottom:.65rem; font-size:clamp(2.6rem,4.5vw,3.8rem); } h2 { line-height:1.12; max-width:18ch; font-size:clamp(1.85rem,2.8vw,2.5rem); } h3 { font-size:1.22rem; line-height:1.2; } .lede { max-width:38rem; color:#3d5750; font-size:1.12rem; }
      header { position:sticky; top:0; z-index:10; background:rgba(251,249,246,.92); backdrop-filter:blur(14px); border-bottom:1px solid rgba(214,226,218,.8); } .nav { min-height:5.75rem; display:flex; align-items:center; justify-content:space-between; gap:2rem; } .brand { display:flex; align-items:center; gap:.7rem; font-size:.95rem; font-weight:800; } .brand img { width:10.5rem; height:3.3rem; object-fit:contain; object-position:left center; mix-blend-mode:multiply; } .links { display:flex; align-items:center; gap:1.35rem; color:#39534b; font-size:.82rem; font-weight:700; } .links a:not(.button):hover { color:var(--green); } .button { display:inline-flex; align-items:center; justify-content:center; min-height:3rem; padding:.75rem 1.2rem; border:1px solid var(--teal); border-radius:999px; background:var(--teal); color:#fff; font-size:.76rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; transition:transform .2s var(--ease),background .2s var(--ease); } .button:hover { transform:translateY(-2px); background:#0b6760; } .button.alt { background:transparent; color:var(--teal); } .button.alt:hover { background:#e6eee9; }
      .hero { position:relative; overflow:hidden; display:flex; align-items:center; min-height:clamp(30rem,66vh,39rem); padding:clamp(3rem,6vw,5rem) 0; background:radial-gradient(ellipse at 78% 42%,#eef6f3 0%,var(--cream) 62%); } .hero-wave { position:absolute; top:2%; right:-4%; width:62%; height:94%; pointer-events:none; } .hero-wave svg { display:block; width:100%; height:100%; } .hero-wave path { fill:none; stroke-width:.7; vector-effect:non-scaling-stroke; } .hero-grid { position:relative; z-index:1; } .hero-copy { max-width:34rem; } .hero h1 { max-width:none; margin-bottom:.4rem; color:#123d37; font-size:clamp(3.2rem,6.2vw,5.4rem); line-height:1; letter-spacing:-.025em; } .hero-subtitle { margin:0 0 1.6rem; font-family:var(--serif); font-size:clamp(1.45rem,2.4vw,2.05rem); line-height:1.15; letter-spacing:-.015em; color:var(--teal); } .hero .lede { max-width:30rem; color:#33504a; font-size:1.02rem; } .hero-actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:2rem; } .hero-actions .button { min-width:11.5rem; border-radius:.7rem; } .hero-shortcuts { display:flex; flex-wrap:wrap; gap:1.25rem 2.2rem; margin:2.5rem 0 0; padding:0; list-style:none; } .hero-shortcuts a { display:flex; flex-direction:column; align-items:center; gap:.45rem; color:#33504a; font-size:.84rem; font-weight:600; transition:color .2s var(--ease); } .hero-shortcuts a:hover { color:var(--teal); } .hero-shortcuts .ui-icon { width:2.3rem; height:2.3rem; color:var(--teal); stroke-width:1.4; }
      section { padding:clamp(3.25rem,6vw,5.5rem) 0; } .problems-section { background:#eef3f0; } .problem-intro { margin-bottom:2.25rem; text-align:center; } .problem-intro h2 { max-width:none; margin:0; } .problem-intro h2:after { content:""; display:block; width:2.75rem; height:2px; margin:.9rem auto 0; border-radius:2px; background:var(--teal); } .problems { display:grid; grid-template-columns:repeat(5,1fr); gap:1.1rem; } .problem { display:flex; flex-direction:column; align-items:center; padding:1.9rem 1.1rem 1.7rem; text-align:center; background:#fff; border:1px solid rgba(214,226,218,.7); border-radius:1rem; box-shadow:0 10px 28px rgba(14,93,80,.06); transition:transform .25s var(--ease),box-shadow .25s var(--ease); } .problem:hover { transform:translateY(-5px); box-shadow:0 18px 40px rgba(14,93,80,.12); } .icon { display:grid; width:4.25rem; height:4.25rem; place-items:center; border-radius:50%; background:#eef5f3; color:var(--teal); } .icon .ui-icon { width:2.1rem; height:2.1rem; stroke-width:1.4; } .problem h3 { margin:1.1rem 0 .45rem; font-family:var(--serif); font-size:1.2rem; font-weight:500; } .problem p { margin:0; color:#557067; font-size:.82rem; line-height:1.5; }
      .proof { background:var(--green); color:#fff; } .proof-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:4rem; align-items:center; } .proof .eyebrow { color:var(--lime); } .proof h2 { max-width:22ch; } .proof p { max-width:34rem; color:#dceae2; } .proof-points { display:grid; gap:1rem; } .proof-points div { padding:1.15rem 0; border-top:1px solid rgba(255,255,255,.25); } .proof-points strong { display:block; color:var(--lime); font-size:1.35rem; } .proof-points span { color:#dceae2; font-size:.86rem; }
      .topic { display:grid; grid-template-columns:4.5rem minmax(0,.8fr) minmax(0,.8fr) minmax(18rem,1.1fr); gap:clamp(1.5rem,4vw,4.5rem); align-items:start; } .topic + .topic { margin-top:clamp(3.5rem,7vw,6rem); } .topic-number { color:var(--blue); font-family:var(--serif); font-size:3.5rem; line-height:.8; } .topic h2 { margin-bottom:1.25rem; } .topic-text { color:#526a62; } .checks { display:grid; gap:.6rem; margin:1.4rem 0 1.6rem; padding:0; list-style:none; } .checks li { display:flex; gap:.7rem; align-items:start; } .checks li:before { content:"✓"; display:grid; flex:0 0 1.35rem; height:1.35rem; place-items:center; border-radius:50%; background:#e2efc1; color:var(--green); font-size:.72rem; font-weight:800; } .topic-actions { display:flex; flex-wrap:wrap; gap:.65rem; } .dechanek-button { border-color:var(--line); background:#fff; color:#71857d; cursor:not-allowed; opacity:.78; } .dechanek-button:hover { transform:none; background:#fff; } .dechanek-button span { margin-left:.28rem; font-size:.74rem; font-weight:700; } .topic-panel { position:relative; min-height:22rem; padding:2rem; overflow:hidden; border-radius:0 3rem 3rem 3rem; } .topic-panel.mint { background:#dceee8; color:var(--green); } .topic-panel.sky { background:#e7f4f8; color:var(--green); } .topic-panel.lime { background:#dce9b3; color:var(--green); } .topic-panel:after { content:""; position:absolute; width:23rem; height:23rem; right:-9rem; bottom:-11rem; border:1px solid rgba(14,93,80,.28); border-radius:50%; box-shadow:0 0 0 3rem rgba(255,255,255,.16); } .topic-panel p { position:relative; z-index:1; max-width:25rem; margin-bottom:1.4rem; font-family:var(--serif); font-size:clamp(1.35rem,2vw,1.85rem); line-height:1.15; letter-spacing:-.015em; } .tags { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:.5rem; } .tags span { padding:.4rem .65rem; border:1px solid rgba(14,93,80,.28); border-radius:999px; font-size:.73rem; font-weight:800; }
      .methods { background:#eaf2ef; } .method-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-top:2.5rem; } .method { padding:2rem; border-radius:1.25rem; background:#fff; } .method .label { color:var(--blue); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; } .method h3 { margin:1rem 0 .75rem; font-family:var(--serif); font-size:2rem; font-weight:400; } .method p { max-width:34rem; margin-bottom:0; color:#506961; }
      .process-head { display:flex; justify-content:space-between; gap:2rem; align-items:end; } .process-head p { max-width:29rem; color:#526a62; } .steps { display:grid; grid-template-columns:repeat(5,1fr); gap:0; margin-top:3rem; border-top:1px solid var(--line); border-bottom:1px solid var(--line); } .step { padding:1.7rem 1.2rem 1.8rem 0; border-right:1px solid var(--line); } .step + .step { padding-left:1.2rem; } .step:last-child { border-right:0; } .step b { display:block; margin-bottom:1.4rem; color:var(--blue); font-family:var(--serif); font-size:2.4rem; font-weight:400; } .step h3 { margin-bottom:.55rem; } .step p { margin:0; color:#647a72; font-size:.78rem; line-height:1.5; }
      .about { background:#fff; } .about-grid { display:grid; grid-template-columns:.84fr 1.16fr; gap:clamp(2rem,7vw,8rem); align-items:center; } .portrait { position:relative; min-height:38rem; border-radius:1.5rem; overflow:hidden; } .portrait img { width:100%; height:100%; object-fit:cover; object-position:64% center; } .about-card { margin-top:2rem; padding:1.25rem; border-left:3px solid var(--lime); background:#f5f8f5; color:#426057; font-size:.92rem; }
      .sources-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:2.5rem; } details { padding:1.35rem; border:1px solid var(--line); border-radius:.9rem; background:#fff; } summary { cursor:pointer; color:var(--green); font-weight:800; } details p { margin:1rem 0 0; color:#5d756c; font-size:.88rem; } .certs { display:flex; gap:1rem; margin-top:2rem; } .cert { flex:1; min-height:10rem; padding:1.25rem; border-radius:1rem; background:linear-gradient(150deg,#fff,#eaf2ef); border:1px solid var(--line); } .cert .stamp { display:grid; width:2.35rem; height:2.35rem; place-items:center; border:1px solid var(--green); border-radius:50%; color:var(--green); font-size:.68rem; font-weight:800; } .cert p { margin:.9rem 0 0; color:#536c63; font-size:.82rem; }
      .content-strip { background:#dce9b3; } .content-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:2rem; align-items:center; } .content-strip h2 { max-width:18ch; } .content-grid p { color:#35534a; } .preview-list { display:grid; gap:.75rem; } .preview { display:flex; justify-content:space-between; gap:1rem; padding:1rem 0; border-top:1px solid rgba(14,93,80,.3); color:var(--green); font-size:.9rem; font-weight:800; }
      .faq-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:4rem; align-items:start; } .faq-grid details + details { margin-top:.65rem; } .contact { position:relative; overflow:hidden; background:var(--green); color:#fff; } .contact:after { content:""; position:absolute; right:-12rem; bottom:-13rem; width:36rem; height:36rem; border:1px solid rgba(217,229,141,.6); border-radius:50%; box-shadow:0 0 0 5rem rgba(217,229,141,.08); } .contact-grid { position:relative; z-index:1; display:grid; grid-template-columns:.8fr 1.2fr; gap:5rem; } .contact .eyebrow { color:var(--lime); } .contact h2 { max-width:14ch; } .contact p { color:#dceae2; } .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; } label { display:grid; gap:.45rem; color:#e7f1eb; font-size:.78rem; font-weight:800; } input,textarea,select { width:100%; border:1px solid rgba(255,255,255,.42); border-radius:.5rem; background:rgba(255,255,255,.08); color:#fff; padding:.75rem; outline:none; } textarea { min-height:7rem; resize:vertical; } .wide { grid-column:1/-1; } input:focus,textarea:focus,select:focus { outline:2px solid var(--lime); outline-offset:2px; } .form-note { color:#c8dbd1; font-size:.72rem; } .contact .button { border-color:var(--lime); background:var(--lime); color:var(--green); } footer { padding:1.8rem 0; background:#0b453b; color:#d9e8df; font-size:.78rem; } footer .wrap { display:flex; justify-content:space-between; gap:1rem; }
      @media (max-width: 72rem) { .links a:not(.button) { display:none; } .problems { grid-template-columns:repeat(3,1fr); } .topic { grid-template-columns:3.5rem minmax(0,1fr) minmax(15rem,1fr); } .topic-panel { grid-column:2 / -1; } .steps { grid-template-columns:repeat(3,1fr); } .step:nth-child(3) { border-right:0; } .step:nth-child(n+4) { border-top:1px solid var(--line); } }
      @media (max-width: 48rem) { :root { --wrap:min(100% - 2rem,76rem); } .nav { min-height:4.7rem; gap:1rem; } .brand img { width:8.8rem; } .nav .button { min-height:2.6rem; padding:.55rem .9rem; font-size:.68rem; white-space:nowrap; } .hero { display:block; min-height:0; padding:2.75rem 0 3.5rem; } .hero-wave { top:auto; bottom:0; right:-35%; width:140%; height:50%; opacity:.6; } .hero-shortcuts { gap:1rem 1.4rem; } .proof-grid,.about-grid,.content-grid,.faq-grid,.contact-grid { grid-template-columns:1fr; } .problems { grid-template-columns:1fr 1fr; } .topic { grid-template-columns:1fr; gap:1rem; } .topic-number { font-size:2.6rem; } .topic + .topic { margin-top:4rem; } .topic-panel { grid-column:auto; min-height:18rem; } .method-grid,.sources-grid { grid-template-columns:1fr; } .steps { grid-template-columns:1fr; } .step,.step + .step { padding:1.25rem 0; border-right:0; border-top:1px solid var(--line); } .step:first-child { border-top:0; } .portrait { min-height:29rem; } .form-grid { grid-template-columns:1fr; } footer .wrap { flex-direction:column; } }
      @media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }

.withdrawal-page { background:var(--cream); }
.withdrawal-intro { max-width:42rem; margin-bottom:2rem; color:#526a62; }
.withdrawal-intro p + p { margin-top:1rem; }
.withdrawal-card { max-width:40rem; padding:2rem; background:#fff; border:1px solid var(--line); border-radius:1.25rem; box-shadow:0 12px 32px rgba(14,93,80,.08); }
.withdrawal-card label { color:#39534b; }
.withdrawal-card input,.withdrawal-card textarea,.withdrawal-card select { border:1px solid var(--line); border-radius:.5rem; background:#fff; color:var(--ink); padding:.75rem; }
.withdrawal-card input:focus,.withdrawal-card textarea:focus,.withdrawal-card select:focus { outline:2px solid var(--teal); outline-offset:2px; }
.withdrawal-card .form-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.withdrawal-card .wide { grid-column:1/-1; }
.withdrawal-card .form-note { margin-top:1rem; color:#62786f; font-size:.78rem; }
.withdrawal-confirm { display:none; margin-top:1.5rem; padding:1.25rem; border-radius:.9rem; background:#eef5f3; border:1px solid var(--line); }
.withdrawal-confirm.is-visible { display:block; }
.withdrawal-confirm dl { margin:0; display:grid; gap:.65rem; }
.withdrawal-confirm dt { font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:#5a7269; }
.withdrawal-confirm dd { margin:0; color:var(--ink); }
.withdrawal-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.25rem; }
@media (max-width:48rem) { .withdrawal-card .form-grid { grid-template-columns:1fr; } }

html.site-notice-open { overflow:hidden; }
.site-notice { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:1.25rem; }
.site-notice__backdrop { position:absolute; inset:0; background:rgba(23,52,46,.55); backdrop-filter:blur(4px); }
.site-notice__panel { position:relative; width:min(28rem,calc(100% - 1rem)); padding:clamp(1.75rem,4vw,2.25rem); border-radius:1.25rem; background:#fff; border:1px solid var(--line); box-shadow:0 24px 60px rgba(14,93,80,.22); }
.site-notice__panel h2 { max-width:none; margin-bottom:1rem; font-size:clamp(1.5rem,3vw,1.85rem); color:#123d37; }
.site-notice__panel p { margin:0 0 .85rem; color:#526a62; font-size:.95rem; line-height:1.55; }
.site-notice__panel p strong { color:var(--ink); font-weight:700; }
.site-notice__button { width:100%; margin-top:1.25rem; border-radius:.7rem; }
