:root{--bg: #f4efe7;--bg-soft: #ede6dc;--paper: rgba(255, 250, 244, .72);--paper-strong: rgba(255, 249, 242, .9);--paper-solid: rgba(255, 249, 242, .94);--line: rgba(55, 40, 24, .14);--line-strong: rgba(55, 40, 24, .24);--text: #1f1a17;--muted: #6e6258;--accent: #8a3f2d;--accent-soft: #b76c4c;--shadow: 0 24px 60px rgba(53, 34, 12, .08);--header-bg: rgba(244, 239, 231, .72);--container: 1120px;--content: 760px;--serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Palatino, "URW Palladio L", Georgia, serif;--sans: "Avenir Next", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;color-scheme:light}html[data-theme=dark]{--bg: #151211;--bg-soft: #201a18;--paper: rgba(34, 28, 26, .76);--paper-strong: rgba(41, 34, 31, .92);--paper-solid: rgba(37, 31, 29, .96);--line: rgba(248, 232, 212, .12);--line-strong: rgba(248, 232, 212, .26);--text: #f3e7d9;--muted: #ccbca9;--accent: #d79072;--accent-soft: #f0b89d;--shadow: 0 24px 70px rgba(0, 0, 0, .32);--header-bg: rgba(21, 18, 17, .76);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:radial-gradient(circle at top left,rgba(183,108,76,.16),transparent 32%),radial-gradient(circle at 80% 20%,rgba(104,87,64,.08),transparent 28%),linear-gradient(180deg,#f8f2ea,#f4efe7 45%,#efe7dc);font-family:var(--sans);line-height:1.65;transition:background .22s ease,color .22s ease}html[data-theme=dark] body{background:radial-gradient(circle at top left,rgba(215,144,114,.1),transparent 32%),radial-gradient(circle at 80% 20%,rgba(210,175,132,.06),transparent 26%),linear-gradient(180deg,#171312,#131110,#100e0d)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.15) 1px,transparent 1px);background-size:100% 36px,36px 100%;mask-image:linear-gradient(180deg,rgba(0,0,0,.28),transparent 60%);opacity:.2}html[data-theme=dark] body:before{opacity:.08}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}main{display:block}.shell{width:min(calc(100% - 2rem),var(--container));margin:0 auto}.site-header{position:sticky;top:0;z-index:10;backdrop-filter:blur(18px);background:var(--header-bg);border-bottom:1px solid var(--line)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0}.brand{display:inline-flex;flex-direction:column;gap:.15rem}.brand__name{font-family:var(--serif);font-size:1.35rem;letter-spacing:.04em}.brand__tag{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.14em}.nav{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap}.nav a{position:relative;font-size:.95rem;color:var(--muted)}.nav a:after{content:"";position:absolute;left:0;bottom:-.35rem;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.nav a:hover:after,.nav a:focus-visible:after{transform:scaleX(1)}.hero{padding:5rem 0 1.75rem;display:block;max-width:980px}.hero__content{max-width:920px}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;color:var(--accent);font-size:.8rem;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:"";width:3rem;height:1px;background:currentColor}.hero h1,.page-hero h1{margin:.6rem 0 1rem;font-family:var(--serif);font-size:clamp(3rem,8vw,6rem);line-height:.92;letter-spacing:-.03em;font-weight:500}.hero p,.page-hero p,.prose p,.card p,.entry p{color:var(--muted);font-size:1.05rem}.pill,.tag{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.5rem .9rem;background:#fffbf68c;color:var(--muted);font-size:.88rem}.card,.entry,.quote-block,.note-panel{background:var(--paper);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}.section-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}.section{padding:2.5rem 0}.section__head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.section__head h2{margin:.35rem 0 0;font-family:var(--serif);font-size:clamp(2rem,4vw,3rem);font-weight:500}.section__link{color:var(--accent);font-size:.95rem}.grid{display:grid;gap:1rem}.grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.card,.entry{padding:1.3rem;transition:transform .18s ease,border-color .18s ease,background .18s ease}.card--travel{overflow:hidden}.card__media-link{display:block;margin:-1.3rem -1.3rem 1rem}.card__media{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:28px 28px 14px 14px;background:var(--bg-soft)}.card__media--travel{aspect-ratio:4 / 5}.card:hover,.entry:hover{transform:translateY(-4px);border-color:var(--line-strong);background:var(--paper-strong)}.card__title,.entry__title{margin:.6rem 0;font-family:var(--serif);font-size:1.5rem;line-height:1.08;font-weight:500}.meta-row{display:flex;gap:.85rem;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.divider{height:1px;background:linear-gradient(90deg,rgba(138,63,45,.4),rgba(138,63,45,.05) 60%,transparent);margin:1rem 0 0}.feature-band{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.85fr);gap:1rem}.quote-block,.note-panel{padding:1.4rem}.quote-block blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.5rem,2.5vw,2.2rem);line-height:1.15}.homepage-panel__title{margin:.35rem 0 .7rem;font-family:var(--serif);font-size:clamp(1.9rem,4vw,2.7rem);font-weight:500}.page-hero{padding:4.2rem 0 1.2rem;max-width:900px}.stack{display:grid;gap:1rem}.prose{width:min(calc(100% - 2rem),var(--content));margin:0 auto;padding:1rem 0 5rem}.article-cover-wrap{width:min(calc(100% - 2rem),920px);margin:0 auto 1.5rem}.article-cover{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:30px;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--bg-soft)}.prose h1,.prose h2,.prose h3{font-family:var(--serif);line-height:1.05;font-weight:500}.prose h1{font-size:clamp(2.6rem,6vw,4.8rem)}.prose h2{margin-top:2.5rem;font-size:2rem}.prose h3{margin-top:1.6rem;font-size:1.35rem}.prose p,.prose li{font-size:1.05rem}.prose ul,.prose ol{padding-left:1.2rem}.prose code{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace;background:#8a3f2d14;border-radius:.35rem;padding:.12rem .32rem}.prose pre{overflow-x:auto;padding:1rem;border-radius:20px}.about-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:1rem}.about-list,.link-list{display:grid;gap:.75rem}.about-list div{padding-bottom:.85rem;border-bottom:1px solid var(--line)}.site-footer{padding:2rem 0 3rem;color:var(--muted)}.site-footer__inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1rem}.fade-in{opacity:0;transform:translateY(12px);animation:rise .7s ease forwards}.fade-in:nth-child(2){animation-delay:80ms}.fade-in:nth-child(3){animation-delay:.16s}.fade-in:nth-child(4){animation-delay:.24s}.floating-rail{position:fixed;right:1.4rem;bottom:1.6rem;z-index:12;display:flex;flex-direction:column;gap:.7rem}.floating-rail__button,.floating-rail__mark{width:3rem;min-height:3rem;border:1px solid var(--line);border-radius:999px;background:var(--paper-solid);box-shadow:var(--shadow);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;backdrop-filter:blur(18px);cursor:pointer;transition:transform .18s ease,border-color .18s ease,color .18s ease,background .18s ease}.floating-rail__button:hover,.floating-rail__mark:hover,.floating-rail__mark.is-active{transform:translateY(-2px);border-color:var(--line-strong);color:var(--accent);background:var(--paper-strong)}.floating-rail__button:focus-visible,.floating-rail__mark:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.floating-rail__icon{font-size:1rem;line-height:1}.floating-rail__track{position:relative;display:flex;flex-direction:column;align-items:center;padding:.55rem 0;width:3rem;border:1px solid var(--line);border-radius:999px;background:var(--paper-solid);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.floating-rail__line{position:absolute;top:.8rem;bottom:.8rem;left:50%;width:1px;background:linear-gradient(180deg,transparent,rgba(138,63,45,.3) 18%,rgba(138,63,45,.22) 82%,transparent);transform:translate(-50%)}.floating-rail__marks{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.42rem}.floating-rail__mark{position:relative;width:100%;min-height:1.2rem;background:transparent;border:0;box-shadow:none;border-radius:999px;padding:.3rem 0}.floating-rail__mark:hover,.floating-rail__mark.is-active{background:transparent;transform:none}.floating-rail__mark:before{content:"";display:block;width:.9rem;height:1px;margin:0 auto;background:#8a3f2d4d;transition:width .18s ease,background .18s ease,transform .18s ease}.floating-rail__mark.is-active:before,.floating-rail__mark:hover:before{width:1.35rem;background:var(--accent);transform:scaleY(1.2)}.floating-rail__mark-dot{position:absolute;left:50%;top:50%;width:.28rem;height:.28rem;border-radius:999px;background:var(--accent);transform:translate(-50%,-50%);opacity:0;transition:opacity .18s ease}.floating-rail__mark.is-active .floating-rail__mark-dot,.floating-rail__mark:hover .floating-rail__mark-dot{opacity:1}.floating-rail__label{position:absolute;right:calc(100% + .85rem);top:50%;transform:translateY(-50%) translate(.3rem);white-space:nowrap;border:1px solid var(--line);border-radius:999px;padding:.28rem .6rem;background:var(--paper-solid);box-shadow:var(--shadow);color:var(--muted);font-size:.76rem;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.floating-rail__mark:hover .floating-rail__label,.floating-rail__mark:focus-visible .floating-rail__label,.floating-rail__mark.is-active .floating-rail__label{opacity:1;transform:translateY(-50%) translate(0)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.feature-band,.about-grid,.grid--two,.grid--three{grid-template-columns:1fr}.hero{padding-top:3.5rem;max-width:none}.hero h1,.page-hero h1{font-size:clamp(2.8rem,16vw,4.4rem)}.floating-rail{right:1rem;bottom:1rem}.floating-rail__label{display:none}}@media(max-width:640px){.site-header__inner,.section__head,.site-footer__inner{flex-direction:column;align-items:flex-start}.nav{gap:.9rem}.card,.entry,.quote-block,.note-panel{border-radius:22px}.card__media{border-radius:22px 22px 12px 12px}.article-cover{border-radius:22px}.floating-rail__button{width:2.7rem;min-height:2.7rem}.floating-rail__track{width:2.7rem}}
