:root{font-family:Arial,Helvetica,sans-serif;color:#fffdf5;background:#292d2b;font-synthesis:none}*{box-sizing:border-box}html{scrollbar-width:thin;scrollbar-color:#b7b4a180 #292d2b;overscroll-behavior:none}body{margin:0}button,input,select{font:inherit}button{color:inherit;background:none;border:0;cursor:pointer}button:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid #ffe3a5;outline-offset:5px}[hidden]{display:none!important}#sky{position:fixed;inset:0;overflow:hidden;background:radial-gradient(ellipse at 20% 20%,#53584b,transparent 65%),#292d2b;contain:layout paint}#scenery,#subjects{position:absolute;inset:0;pointer-events:none}#subjects{z-index:2}.cloud{position:absolute;top:0;left:0;object-fit:fill;display:block;mask-size:100% 100%;-webkit-mask-size:100% 100%;filter:saturate(.86) sepia(.06);pointer-events:none}.scenery{opacity:.93}.subject{opacity:1}#poster{width:100%;height:100%;object-fit:contain;mask-image:radial-gradient(ellipse,#000 35%,transparent 72%);opacity:.8}#scroll-space{height:15000px}.tools{position:fixed;z-index:20;left:50%;bottom:max(23px,env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;gap:10px;align-items:center}.icon-button{width:44px;height:44px;border:1px solid #fff6;border-radius:50%;display:grid;place-items:center;background:#292d2b5c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-size:20px;text-shadow:0 1px 6px #000;flex-shrink:0}.pics-button{position:relative;isolation:isolate;overflow:hidden;border-radius:50px;border:1px solid #fff8;min-width:150px;height:48px;padding:0 24px;box-shadow:0 5px 20px #0002;background:#ffffff16;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.button-images{position:absolute;inset:0;display:flex;opacity:.44;z-index:-1}.button-images img{width:34%;height:100%;object-fit:cover;mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent)}.pics-label{font-size:14px;font-weight:600;letter-spacing:.3px;text-shadow:0 1px 4px #000,0 0 8px #000}.signature{position:fixed;z-index:10;left:24px;top:20px;width:170px;height:52px;overflow:hidden;mix-blend-mode:screen;pointer-events:none}.signature img{width:170px;height:auto;display:block;transform:translateY(-183.75px)}#controls{position:fixed;z-index:30;right:18px;bottom:85px;width:330px;max-width:calc(100vw - 36px);max-height:calc(100svh - 115px);overflow:auto;border:1px solid #a9b1a075;border-radius:22px;background:#232a23f5;box-shadow:0 15px 70px #0006;padding:24px;scrollbar-width:thin}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-head h1{font:23px Georgia,serif;margin:0}.panel-head button{width:44px;height:44px;font-size:27px;flex-shrink:0}.panel-intro{font-size:12px;line-height:1.6;color:#d3d8c9;margin:5px 0 24px}#controls>label:not(.check){font-size:12px;display:block}output{float:right;color:#e3d1a6}input[type=range]{width:100%;accent-color:#d8c59a;margin:14px 0 22px;min-height:26px}.check{font-size:12px;display:flex;align-items:center;gap:10px;margin-bottom:16px;line-height:1.6;min-height:34px}.check input{accent-color:#d8c59a;width:18px;height:18px;flex-shrink:0}.timing{border-top:1px solid #66705b;padding-top:10px}.timing p{font-size:12px;line-height:1.6;margin:8px 0}details{font-size:11px;line-height:1.7;color:#d3d8c9}summary{cursor:pointer;min-height:40px;padding-top:12px}.reset{margin-top:16px;border:1px solid #a3ae94;border-radius:30px;min-height:44px;padding:8px 18px;font-size:12px}dialog{color:#f5f3e8;background:#222922f5;border:1px solid #7b876b;border-radius:22px;width:min(1060px,94vw);max-height:95svh;padding:24px}dialog::backdrop{background:#131713c9;backdrop-filter:blur(6px)}.gallery-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.gallery-head h2{font:32px Georgia,serif;margin:0}.gallery-stage{display:flex;align-items:center;gap:22px}.gallery-stage figure{margin:0;flex:1;min-width:0;text-align:center}.gallery-stage img{max-width:100%;width:auto;height:min(62svh,650px);object-fit:contain}.gallery-stage figcaption{font-size:12px;line-height:1.6;margin-top:15px;color:#e1e5d8}.gallery-bottom{margin-top:25px;display:flex;gap:15px;align-items:center;font-size:12px}.gallery-bottom span{margin-right:auto;white-space:nowrap}select{max-width:48%;background:#374032;color:white;border:1px solid #7c886d;padding:10px;border-radius:8px}.noscript{position:fixed;z-index:10;bottom:20px;padding:20px;background:#222c;font-size:12px}@media(max-width:600px){.gallery-stage{gap:8px;position:relative;padding-bottom:60px}.gallery-stage figure{width:100%;order:-1}.gallery-stage .icon-button{position:absolute;bottom:0;left:calc(50% - 52px)}.gallery-stage #next{left:calc(50% + 8px)}.gallery-stage img{height:50svh;width:100%}.gallery-bottom label{display:none}select{max-width:70%}.tools{gap:8px}.gallery-head{margin-bottom:12px}.gallery-head h2{font-size:28px}.signature{left:18px;top:14px;width:150px;height:46px}.signature img{width:150px;transform:translateY(-162.13px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* V3: the photographic clock and the document scroll are independent. */
html{scrollbar-gutter:auto}#page{min-height:100svh}#sky{isolation:isolate;contain:layout paint;background:#262b28}#scenery{z-index:1}#poster{position:absolute;inset:0;object-fit:cover;mask-image:none;-webkit-mask-image:none;opacity:1;width:100%;height:100%}.photo-tile{position:absolute;top:0;left:0;pointer-events:none;will-change:transform}.photo-underlay{position:absolute;inset:0;overflow:hidden;mask-image:linear-gradient(to bottom,transparent,#000 var(--overlap));-webkit-mask-image:linear-gradient(to bottom,transparent,#000 var(--overlap))}.photo-fill{position:absolute;inset:-12%;width:124%;height:124%;object-fit:cover;transform:rotate(var(--tilt));filter:blur(16px) saturate(.82) brightness(.84)}.portrait{position:absolute;display:block;object-fit:fill;transform:rotate(var(--tilt));mask-size:100% 100%;-webkit-mask-size:100% 100%;filter:saturate(.91)}.rim{pointer-events:none;opacity:.08}.panel-note{font-size:11px;line-height:1.6;color:#ccd3c6;margin:-4px 0 18px}#status{position:fixed;z-index:12;bottom:90px;left:20px;max-width:280px;background:#17231de8;border-radius:20px;padding:14px;font-size:12px;line-height:1.5}
#page{overflow-x:clip}

/* V4: no duplicate blurred fill, no framed photo vignette, no inflated photo boxes. */
.photo-tile{overflow:hidden}.photo-surface,.photo-plane{position:absolute;inset:0;mask-size:100% 100%;-webkit-mask-size:100% 100%;overflow:hidden}.photo-plane{transform-origin:50% 50%}.panorama-photo{position:absolute;display:block;max-width:none;object-fit:fill;filter:saturate(.93) contrast(.99);pointer-events:none}.edge-breath{opacity:.02;pointer-events:none}

/* The cloud is one mask. Repeating it can wrap its opaque last raster row
   onto the transparent top edge at fractional sizes/Windows display scales. */
.photo-tile,.photo-surface{mask-size:100% 100%;-webkit-mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;mask-position:0 0;-webkit-mask-position:0 0;mask-mode:alpha}

/* V4.6: keep mounted rotating planes composited; avoid a second filtered image surface. */
.photo-plane{will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden}.panorama-photo{filter:none}

/* V5 foreground: steady reading surfaces; only the photographs move.
   All text sits inside an evenly tinted panel, including its outer edges.
   The gap is clear glass-free space, not an additional dimmed overlay. */
:root{--reading-gap:clamp(112px,18svh,172px);--panel-tint:rgba(12,22,20,.45);--panel-text:#fffdf5;--panel-secondary:#f5f1e7;--arrow-color:#ffdf9c}
#reading{position:relative;z-index:5;display:flex;flex-direction:column;gap:var(--reading-gap);width:min(100%,1060px);margin:0 auto;padding:clamp(24px,4.5svh,48px) 36px clamp(160px,25svh,240px)}
.reading-block{position:relative;isolation:isolate;width:min(100%,760px);padding:clamp(30px,4.8vw,54px);color:var(--panel-text);background:var(--panel-tint);border:1px solid rgba(255,251,237,.18);border-radius:20px;box-shadow:0 16px 52px rgba(0,0,0,.16);backdrop-filter:blur(10px) brightness(.7) saturate(.82);-webkit-backdrop-filter:blur(10px) brightness(.7) saturate(.82);scroll-margin-top:36px}
.reading-block:nth-child(even){align-self:flex-end}
.chapter-line{display:flex;align-items:center;justify-content:space-between;gap:18px}
.reading-block .eyebrow,.chapter-number{font-size:11px;line-height:1.6;letter-spacing:.13em;text-transform:uppercase;color:#fff0c7}
.chapter-number{font-variant-numeric:tabular-nums;letter-spacing:.07em}
.reading-block h1,.reading-block h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;text-wrap:balance;margin:22px 0 24px}
.reading-block h1{font-size:clamp(44px,6.4vw,74px);line-height:1.04}
.reading-block h2{font-size:clamp(34px,4.7vw,52px);line-height:1.1}
.reading-block p{font:18px/1.7 Arial,Helvetica,sans-serif;max-width:58ch;margin:0 0 24px;color:var(--panel-text);text-shadow:none}
.reading-block .intro-quote{font:clamp(23px,2.8vw,30px)/1.45 Georgia,'Times New Roman',serif;max-width:35ch;margin:0 0 22px;text-wrap:pretty}
.reading-block .intro-note{font-size:16px;color:var(--panel-secondary);max-width:48ch;margin-bottom:28px}
.reading-block a{color:#fff0c7;text-decoration-thickness:1px;text-underline-offset:5px;font-size:14px;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;gap:12px;padding:10px 0}
.reading-block a:hover{color:#fff9df;text-decoration-thickness:2px}
.reading-block a:focus-visible{outline:2px solid #ffe3a5;outline-offset:5px;border-radius:2px}
.chapter-links{display:flex;flex-wrap:wrap;gap:8px 30px;border-top:1px solid #ffffff30;padding-top:16px}
.content-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:30px 0 12px;font-size:16px;line-height:1.55;text-align:left}
.content-table caption{text-align:left}
.content-table th,.content-table td{padding:18px 12px 18px 0;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #ffffff30}
.content-table th:last-child,.content-table td:last-child{padding-right:0}
.content-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#fff0c7;font-weight:500;padding-top:0;padding-bottom:14px;border-bottom-color:#ffffff50}
.content-table tbody th{font-weight:600;color:var(--panel-text)}
.content-table td{color:#fffaf0}
.table-note{display:block;font-size:12px;font-weight:400;line-height:1.5;color:var(--panel-secondary);margin-top:4px}
.ventures-table th:first-child{width:43%}
.education-table th:first-child{width:15%;font-variant-numeric:tabular-nums;white-space:nowrap;padding-right:6px}
.education-table th:nth-child(2){width:44%}
.chapter-source{margin-top:10px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* The photo-button is its own light photographic glass surface. */
.pics-button{display:flex;align-items:center;justify-content:center;gap:20px;min-width:208px;height:58px;background:rgba(253,247,229,.84);border-color:rgba(255,251,238,.82);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);box-shadow:0 6px 24px #0003;color:#172d2c}
.pics-button::before{content:"";position:absolute;inset:0;z-index:-1;background:url('assets/family-sunset-800.webp') center 18% / cover no-repeat;opacity:.26;filter:brightness(1.3) saturate(.65)}
.pics-button:hover{background:rgba(255,250,238,.94);border-color:#fff9e8}
.pics-label{font-size:22px;font-weight:800;letter-spacing:.015em;text-shadow:0 1px 0 #fff8;color:#841343}
.pics-arrow{color:#123e86}
.pics-arrow{flex:none}
.reading-block a span[aria-hidden]{color:var(--arrow-color);font-size:18px;line-height:1}
.reading-block{height:auto;min-height:0;flex:none}
.introduction{width:min(100%,710px);padding-block:38px}
@media(max-width:600px){.introduction{padding-block:28px}}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.reading-block{background:rgba(12,22,20,.94)}}
@media(max-width:600px){
 :root{--reading-gap:clamp(96px,16svh,132px)}
 #reading{padding:clamp(22px,3.8svh,32px) 18px 154px}
 .reading-block{padding:30px 24px;border-radius:16px;scroll-margin-top:24px}
 .reading-block p{font-size:17px;line-height:1.65}
 .reading-block .intro-quote{font-size:24px;line-height:1.45}
 .reading-block .intro-note{font-size:15px}
 .reading-block .eyebrow,.chapter-number{font-size:10px;letter-spacing:.09em}
 .content-table{font-size:14px;line-height:1.55;margin-top:25px}
 .content-table th,.content-table td{padding:16px 10px 16px 0}
 .content-table thead th{font-size:10px;letter-spacing:.05em}
 .table-note{font-size:11px}
 .education-table th:first-child{width:18%}
 .education-table th:nth-child(2){width:43%}
 .chapter-links{gap:4px 24px}
 .chapter-links a,.chapter-source{font-size:13px}
}
@media(prefers-reduced-transparency:reduce){.reading-block{background:#15201d;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(max-width:360px){.reading-block{padding:28px 20px}.ventures-table th:first-child{width:46%}}
@media(forced-colors:active){.reading-block{background:Canvas;color:CanvasText;border-color:CanvasText;backdrop-filter:none}.reading-block p,.content-table th,.content-table td,.table-note,.reading-block .eyebrow,.chapter-number{color:CanvasText}.reading-block a{color:LinkText}}
