@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Prata&display=swap');
:root{--ink:#13221b;--paper:#f3efe5;--white:#fffdf8;--green:#153f30;--green2:#245e47;--lime:#d9ef87;--line:rgba(21,63,48,.15);--serif:'Prata',Georgia,serif;--sans:'Manrope',Arial,sans-serif}
body{background:radial-gradient(circle at 80% 15%,rgba(217,239,135,.16),transparent 24%),var(--paper);font-family:var(--sans)}
.site-header{height:92px;background:rgba(243,239,229,.9);border-color:var(--line)}.brand-mark{width:46px;height:46px;background:linear-gradient(145deg,var(--green2),#0d2f24);box-shadow:0 8px 22px rgba(15,48,36,.18)}.brand{letter-spacing:-.02em}.site-header nav a{font-size:14px;font-weight:600}.search-open{background:rgba(255,255,255,.45)!important;border-color:rgba(21,63,48,.18)!important;transition:.2s}.search-open:hover{background:white!important;transform:translateY(-1px)}
.hero{max-width:1360px;min-height:760px;padding-top:54px;padding-bottom:65px;grid-template-columns:.8fr 1.2fr;gap:54px}.hero-copy{position:relative;z-index:2}.hero h1{font-family:var(--serif);font-size:clamp(55px,6.3vw,94px);line-height:1.02;letter-spacing:-.045em}.hero h1 em{font-style:normal;color:var(--green2)}.hero p{font-size:18px;max-width:520px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--green2)}.eyebrow:before{content:'';width:30px;height:1px;background:currentColor}.button{border-radius:999px;padding:15px 24px;box-shadow:0 10px 30px rgba(21,63,48,.18);transition:.25s}.button:hover{background:var(--green2);transform:translateY(-2px)}.hero-art{margin:0;position:relative;min-height:610px;border-radius:180px 12px 180px 12px;overflow:hidden;background:var(--green);box-shadow:0 35px 80px rgba(19,46,36,.22)}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,35,26,.32),transparent 38%);pointer-events:none}.hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-art figcaption{position:absolute;z-index:2;left:30px;right:30px;bottom:25px;padding:14px 18px;border:1px solid rgba(255,255,255,.25);background:rgba(14,45,34,.7);backdrop-filter:blur(12px);color:#f7f1df;border-radius:4px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.hero-art figcaption span{color:var(--lime);margin-right:16px}
.stats{background:linear-gradient(110deg,#10382a,#1d553f);padding-top:38px;padding-bottom:38px}.stats div{position:relative}.stats div:not(:last-child):after{content:'';position:absolute;right:0;top:3px;height:42px;width:1px;background:rgba(255,255,255,.16)}.stats b{font-family:var(--serif);font-size:46px}
.section{padding-top:115px;padding-bottom:115px}.section-title h2{font-family:var(--serif);font-size:50px;letter-spacing:-.03em}.topics{gap:18px}.topic-card{min-height:265px;padding:30px;border-radius:2px;background:rgba(255,253,248,.72);box-shadow:0 1px 0 rgba(255,255,255,.8) inset;position:relative;overflow:hidden}.topic-card:before{content:'';position:absolute;width:120px;height:120px;border:1px solid rgba(36,94,71,.12);border-radius:50%;right:-46px;top:-42px}.topic-card:hover{background:#fffdf8;box-shadow:0 22px 55px rgba(28,57,45,.1)}.topic-card h3{font-family:var(--serif);font-size:25px}.section.soft{background:linear-gradient(180deg,#e9ede3,#f0f0e7)}.features{gap:18px}.feature{min-height:230px;border:0;border-top:3px solid var(--green2);background:rgba(255,255,255,.68);box-shadow:0 15px 40px rgba(30,57,46,.07)}.feature h3{font-family:var(--serif)}
.catalog-hero{padding-top:110px;padding-bottom:90px}.catalog-hero h1{font-family:var(--serif);font-size:92px;letter-spacing:-.04em}.catalog-section{padding:75px 0}.catalog-heading h2{font-family:var(--serif)}.catalog-grid{gap:12px;background:transparent;border:0}.catalog-item{padding:24px 26px;background:rgba(255,253,248,.65);border:1px solid var(--line);transition:.2s}.catalog-item:hover{transform:translateX(4px);border-color:rgba(36,94,71,.4);box-shadow:0 12px 35px rgba(25,56,43,.08)}.catalog-item span{font-family:var(--serif)}
.article{max-width:1120px}.article-head{max-width:900px;padding:42px 0 54px;position:relative}.article-head:after{content:'';display:block;width:76px;height:3px;background:var(--lime);margin-top:36px}.article-head h1{font-family:var(--serif);font-size:clamp(46px,6vw,76px);line-height:1.08}.article-head p{font-size:19px;max-width:760px}.article-layout{grid-template-columns:230px minmax(0,720px);gap:70px}.article-toc{border-left-color:rgba(36,94,71,.2);padding:18px 0 18px 20px;background:linear-gradient(90deg,rgba(255,255,255,.3),transparent)}.article-toc a:hover{padding-left:4px}.prose{font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.82;color:#18241f}.prose>p:first-of-type:first-letter{float:left;font-family:var(--serif);font-size:66px;line-height:.82;padding:9px 9px 0 0;color:var(--green2)}.prose h2{font-family:var(--serif);font-size:36px;color:var(--green);padding-top:12px}.prose h3{font-family:var(--serif);font-weight:400;color:var(--green2)}.prose .note{border-left:0;border-top:3px solid var(--green2);background:#e5ebdf;padding:24px 27px}.pager{margin-top:85px}.pager a{padding:22px;background:rgba(255,255,255,.45);border:1px solid var(--line);text-decoration:none;transition:.2s}.pager a:hover{background:white;transform:translateY(-2px)}
.search-box{box-shadow:0 40px 100px rgba(0,0,0,.3)}.result{transition:.15s}.result b{font-family:var(--serif)}footer{padding-top:52px;padding-bottom:52px}
@media(max-width:950px){.hero{grid-template-columns:1fr;gap:30px}.hero-art{min-height:520px;border-radius:120px 8px 120px 8px}.hero-copy{padding-top:30px}.article-layout{grid-template-columns:190px minmax(0,1fr);gap:35px}}
@media(max-width:850px){.hero{padding:42px 20px 50px}.hero h1{font-size:53px}.hero-art{min-height:440px;border-radius:80px 6px 80px 6px}.hero-art img{object-position:58% center}.hero-art figcaption{left:16px;right:16px;bottom:14px}.stats div:not(:last-child):after{display:none}.section-title h2{font-size:39px}.article-layout{display:block}.article-head{padding-top:20px}.prose{font-size:18px}.catalog-hero h1{font-size:60px}}

.contents-hero{max-width:1184px;margin:auto;padding:105px 28px 85px;display:flex;align-items:end;justify-content:space-between;gap:50px;border-bottom:1px solid var(--line)}.contents-hero h1{font:500 clamp(62px,8vw,108px)/1 var(--serif);letter-spacing:-.045em;margin:20px 0}.contents-hero p{max-width:670px;color:var(--muted);font-size:19px}.contents-mark{width:170px;height:170px;border:1px solid rgba(36,94,71,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:10px;flex:none}.contents-mark span{font:44px var(--serif);color:var(--green2)}.contents-mark small{font-size:10px;line-height:1.4;letter-spacing:.12em;text-transform:uppercase}.outline{max-width:1184px;margin:auto;padding:30px 28px 120px}.outline-chapter{border-bottom:1px solid var(--line);padding:32px 0}.outline-main{display:grid;grid-template-columns:64px minmax(260px,auto) 1fr;gap:20px;align-items:center;text-decoration:none}.outline-main>b{font:22px var(--serif);color:var(--green2)}.outline-main>span{font:26px/1.25 var(--serif)}.outline-main small{display:block;font:10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.outline-main i,.outline-sub i{height:1px;background-image:linear-gradient(90deg,rgba(36,94,71,.2) 50%,transparent 50%);background-size:7px 1px}.outline-main:after{content:'↗';font-size:18px;color:var(--green2)}.outline-subs{margin:22px 0 0 84px;max-width:850px}.outline-sub{display:grid;grid-template-columns:minmax(180px,auto) 1fr;align-items:center;gap:15px;text-decoration:none;color:var(--muted);font-size:13px;padding:6px 0}.outline-sub:hover{color:var(--green2)}.outline-sub.l3{padding-left:25px;font-size:12px}.outline-sub:after{content:'›';color:var(--green2)}
@media(max-width:850px){.contents-hero{padding-top:65px;align-items:start}.contents-mark{width:105px;height:105px}.contents-mark span{font-size:30px}.contents-mark small{display:none}.outline-main{grid-template-columns:42px minmax(0,1fr) auto}.outline-main i{display:none}.outline-main>span{font-size:21px}.outline-subs{margin-left:42px}.outline-sub{grid-template-columns:minmax(0,1fr) auto}.outline-sub i{display:none}}
