:root{color-scheme:light;--page:#f7f8f2;--ink:#273e36;--muted:#5f6d65;--green:#284e40;--mint:#e9f0e6;--line:#dce3d7;--active:#eed59b;--active-ink:#674c16;--rest:#dcddeb;--rest-ink:#515471;--white:#fffefa;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--page);color:var(--ink);line-height:1.55}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #487958;outline-offset:4px}button:disabled{opacity:.35;cursor:default}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.2;font-weight:600}button{border:0}button:hover:not(:disabled){filter:brightness(.96)}.page-shell{max-width:1240px;padding:0 48px;margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:30px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:19px;font-weight:600;letter-spacing:-.5px}.brand-mark{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;background:var(--green);color:var(--page);font-size:23px;letter-spacing:-1.5px}.brand-mark span{font-size:15px;align-self:flex-start;margin:5px 0 0 1px}nav{display:flex;gap:30px;font-size:15px}nav a{text-decoration:none}nav a:hover{text-decoration:underline;text-underline-offset:5px}nav a span{padding-left:5px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding:48px 0 32px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.65px;line-height:1.5}h1{font-size:clamp(36px,4vw,54px);letter-spacing:-2px;margin:9px 0 13px}.title-dot{color:#96aa80}.intro-copy{font-size:18px;color:var(--muted)}.mobile-break{display:none}.timezone{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);padding-bottom:3px;flex-shrink:0}.timezone svg{width:19px;height:19px}.timezone strong{display:block;font-size:13px;color:var(--ink);font-weight:600;margin-top:2px}.now-card{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #dce5d7;background:var(--mint);border-radius:24px;overflow:hidden}.clock-panel{padding:31px 38px 29px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.live-tag{display:flex;gap:6px;align-items:center;font-size:11px;white-space:nowrap}.live-tag>span{width:6px;height:6px;background:#548064;border-radius:50%}.custom-date{font-size:22px;margin-top:23px;font-weight:500}.custom-date span{padding:0 8px;color:#78917e}.custom-clock{font-size:clamp(68px,7.8vw,100px);line-height:1.1;letter-spacing:-5px;font-weight:550;font-variant-numeric:tabular-nums;margin:0 0 9px}.clock-note{font-size:13px;color:#526657}.day-progress{height:9px;border-radius:10px;display:flex;position:relative;margin-top:25px}.rest-progress{width:40%;background:#b6bdd2;border-radius:10px 0 0 10px}.active-progress{width:60%;background:#d6b772;border-radius:0 10px 10px 0}.day-progress>span{position:absolute;height:17px;width:5px;top:-4px;left:0;background:var(--green);border:1px solid var(--white);border-radius:3px;transform:translateX(-50%)}.progress-labels{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin-top:10px;color:#526657}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px}.rest-dot{background:#9299b6}.active-dot{background:#b48a32}.status-panel{padding:35px 36px 29px;border-left:1px solid #d2ddcf;display:flex;flex-direction:column;justify-content:center;background:#f0f4eb}.status-heading{display:flex;gap:16px;align-items:center}.status-icon{display:grid;place-items:center;border:1px solid #dfc992;background:#f5e5b9;width:57px;height:57px;border-radius:50%;font-size:37px;color:#7a611f;font-family:"Segoe UI Symbol",sans-serif}.is-resting .status-icon{background:#e1e1ee;color:#595c80;border-color:#cecedf}.status-heading .eyebrow{font-size:10px;color:var(--muted);margin-bottom:4px}.status-heading h2{font-size:30px;letter-spacing:-.75px}.status-countdown{font-size:16px;margin:15px 0 24px;color:#526657}.status-times,.weekend-times{margin:0;display:grid;gap:14px}.status-times>div{display:grid;grid-template-columns:125px 1fr;gap:12px;align-items:baseline}.status-times dt{font-size:13px;color:var(--muted)}.status-times dd{font-size:16px;font-weight:600;margin:0}.status-times dd span{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:1px}.routine-note{font-size:11px;color:var(--muted);margin-top:24px}.planning-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:24px;margin-top:28px;align-items:start}.availability-card{background:var(--white);border:1px solid var(--line);border-radius:22px;padding:30px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}.section-heading h2{font-size:29px;letter-spacing:-.8px;margin-top:7px}.section-heading .eyebrow{color:var(--muted)}.small-icon{width:41px;height:41px;background:#f1f3eb;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.section-description{font-size:14px;color:var(--muted);margin-top:12px}.date-controls{display:flex;gap:12px;align-items:flex-end;margin-top:25px}.date-field{flex:1;min-width:0}.date-field>span{display:block;font-size:12px;font-weight:600;margin-bottom:6px}input{color:var(--ink);background:var(--white);border:1px solid #cdd6c8;border-radius:9px;min-height:48px;max-width:100%;padding:8px 12px}input[type=date]{width:100%;min-width:0;font-size:16px}input[type=time]{width:100%;min-width:0}.today-button{font-size:14px;font-weight:600;border:1px solid #cdd6c8;color:var(--green);background:#f4f6ed;min-height:48px;border-radius:9px;padding:9px 20px}.week-controls{display:flex;align-items:center;justify-content:space-between;gap:5px;margin:18px 0 8px}.week-controls p{font-size:12px;color:var(--muted)}.icon-button{background:transparent;color:var(--muted);height:40px;width:40px;border-radius:8px;font-size:20px}.date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.date-chip{background:transparent;color:var(--ink);border:1px solid transparent;border-radius:11px;min-height:72px;padding:9px 2px;display:flex;align-items:center;flex-direction:column;gap:2px}.date-chip span{font-size:11px;color:var(--muted)}.date-chip strong{font-size:20px;font-weight:500;font-variant-numeric:tabular-nums}.date-chip.is-today{border-color:#ccd6c6}.date-chip[aria-pressed=true]{background:var(--green);color:white}.date-chip[aria-pressed=true] span{color:#e2e9dc}.availability-results{border-top:1px solid var(--line);margin-top:21px;padding-top:22px}.availability-results h3{font-size:18px;letter-spacing:-.25px}.availability-summary{font-size:13px;color:var(--muted);margin-top:7px}.day-timeline{display:flex;height:14px;overflow:hidden;border-radius:6px;margin-top:22px;background:var(--line)}.timeline-segment.active{background:var(--active)}.timeline-segment.resting{background:var(--rest)}.timeline-segment.unknown{background:#e1e3de}.timeline-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin:5px 0 19px}.interval-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}.interval-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:10px;padding:12px 14px;font-size:16px;font-variant-numeric:tabular-nums;background:#f5f3eb}.interval-list li.resting{background:#f1f0f6}.interval-list li.unknown{background:#f0f1ed}.interval-state{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;white-space:nowrap}.interval-state svg{width:17px;height:17px}.interval-range{font-weight:550;text-align:right}.interval-range small{font-size:10px;font-weight:400;color:var(--muted);display:block}.active .interval-state{color:var(--active-ink)}.resting .interval-state{color:var(--rest-ink)}.dst-note{font-size:12px;color:var(--muted);margin:0 0 15px}.slot-check{border-top:1px solid var(--line);margin-top:23px;padding-top:16px}.slot-check summary{cursor:pointer;list-style:none;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:space-between;min-height:36px}.slot-check summary::-webkit-details-marker{display:none}.slot-check summary>span:first-child{display:flex;align-items:center;gap:8px}.slot-check summary svg{width:19px;height:19px}.details-plus{font-size:21px;font-weight:400}.slot-check[open] .details-plus{transform:rotate(45deg)}.slot-content>p{font-size:13px;color:var(--muted);margin:12px 0}.slot-content form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px}.slot-content label{font-size:12px;font-weight:600;min-width:0}.slot-content input{display:block;margin-top:5px;font-size:15px}.primary-button{min-height:48px;border-radius:9px;background:var(--green);color:white;font-size:13px;font-weight:600;padding:10px 15px}.slot-result{font-size:13px;padding:12px;border-radius:8px;margin-top:12px;background:#edf2e8}.slot-result[data-kind=no],.slot-result[data-kind=invalid]{background:#f4ebd8;color:#6b522b}.availability-footnote{font-size:11px;color:var(--muted);margin-top:17px}.side-column{display:grid;gap:22px}.weekend-card{background:#efeee5;border:1px solid #e3e3d6;border-radius:22px;padding:0 28px 27px;overflow:hidden}.weekend-art{height:116px;margin:0 -28px 24px;overflow:hidden}.weekend-art svg{height:130px;width:100%;stroke:none;display:block}.weekend-card>.eyebrow{font-size:10px;color:#68715c}.weekend-card h2{font-size:28px;letter-spacing:-.7px;margin-top:6px}.weekend-description{font-size:13px;color:var(--muted);margin-top:7px}.weekend-countdown{display:inline-block;background:#e0e6d4;color:#435836;font-size:13px;font-weight:600;padding:5px 11px;border-radius:6px;margin:20px 0}.weekend-times{gap:15px}.weekend-times>div{display:grid;grid-template-columns:45px 1fr;gap:10px}.weekend-times dt{font-size:12px;color:var(--muted);padding-top:3px}.weekend-times dd{font-size:16px;font-weight:600;line-height:1.4;margin:0}.weekend-times dd span{display:block;font-size:13px;color:var(--muted);font-weight:400;margin-top:1px}.weekend-note{font-size:12px;color:var(--muted);margin-top:18px}.text-button{display:flex;justify-content:space-between;gap:10px;width:100%;color:var(--green);background:transparent;text-align:left;font-weight:600;font-size:14px;border-top:1px solid #d7dccd;margin-top:21px;padding:16px 0 0;min-height:44px}.routine-card{padding:6px 18px 8px}.routine-card .eyebrow{font-size:10px;color:var(--muted)}.routine-card h2{font-size:24px;letter-spacing:-.5px;margin:8px 0 12px}.routine-card p:not(.eyebrow){font-size:13px;line-height:1.75;color:var(--muted)}.routine-key{display:flex;align-items:center;gap:12px;font-size:12px;margin-top:18px}.routine-line{height:1px;width:35px;background:#bac6b4}.repeat-symbol{font-size:20px;color:var(--muted)}.about-section{display:grid;grid-template-columns:1fr 2fr;gap:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:44px 0 0;padding:29px 0}.journey-stat{display:flex;align-items:center;gap:17px}.journey-stat>strong{font-size:55px;line-height:1;letter-spacing:-2px;font-weight:500;font-variant-numeric:tabular-nums}.journey-stat>span{font-size:13px;line-height:1.5}.journey-stat small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.about-copy h2{font-size:14px;margin-bottom:7px}.about-copy p{font-size:12px;color:var(--muted);line-height:1.8}.about-copy time{font-weight:600}footer{display:flex;justify-content:space-between;gap:20px;padding:22px 0 32px;font-size:11px;color:var(--muted)}.skip-link{position:absolute;top:-80px;left:20px;z-index:20;padding:14px;background:var(--green);color:white;border-radius:8px}.skip-link:focus{top:10px}.noscript{position:fixed;bottom:15px;left:5%;width:90%;padding:20px;background:#fff0c8;border:1px solid #c2a461;border-radius:12px} [hidden]{display:none!important}
@media(min-width:1500px){.page-shell{max-width:1320px}.intro{padding-top:55px}.now-card{min-height:345px}.custom-clock{font-size:108px}.clock-panel{padding:35px 42px}.status-panel{padding:35px 42px}.planning-grid{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr)}}
@media(max-width:1000px){.page-shell{padding:0 28px}.intro{align-items:flex-start;flex-direction:column;gap:20px;padding-top:34px}.timezone{font-size:12px}.timezone strong{display:inline;margin-left:7px}.clock-panel{padding:28px}.status-panel{padding:28px}.section-top{flex-wrap:wrap}.live-tag{font-size:10px}.status-heading h2{font-size:26px}.status-times>div{grid-template-columns:1fr;gap:3px}.status-times dd span{display:inline;margin-left:6px}.status-times{gap:12px}.custom-clock{font-size:80px}.planning-grid{gap:20px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.availability-card{padding:24px}.section-heading h2{font-size:26px}.small-icon{display:none}.weekend-card{padding:0 23px 24px}.weekend-art{margin-left:-23px;margin-right:-23px}.weekend-card h2{font-size:25px}.slot-content form{grid-template-columns:1fr 1fr}.primary-button{grid-column:1/-1}.about-section{gap:24px}.journey-stat{gap:12px}}
@media(max-width:740px){.page-shell{padding:0 22px;max-width:580px}.site-header{padding:20px 0}.brand{font-size:17px}.brand-mark{width:40px;height:40px;border-radius:13px;font-size:21px}nav{font-size:12px;gap:16px}nav a:last-child{display:none}.intro{padding:32px 0 24px;gap:19px}h1{font-size:42px;letter-spacing:-1.6px;margin-top:8px}.intro-copy{font-size:16px}.mobile-break{display:block}.timezone{font-size:11px;gap:8px}.timezone strong{font-size:11px}.timezone svg{width:18px;height:18px}.now-card{grid-template-columns:1fr;border-radius:20px}.clock-panel{padding:26px}.section-top{flex-wrap:nowrap}.custom-date{font-size:23px;margin-top:20px}.custom-clock{font-size:90px;letter-spacing:-4px}.clock-note{font-size:12px}.day-progress{margin-top:21px}.progress-labels{font-size:11px}.status-panel{border-left:0;border-top:1px solid #d2ddcf;padding:25px 26px}.status-heading h2{font-size:28px}.status-icon{height:49px;width:49px;font-size:31px}.status-countdown{margin:13px 0 20px;font-size:15px}.status-times>div{grid-template-columns:115px 1fr;gap:10px}.status-times dt{font-size:12px}.status-times dd{font-size:15px}.status-times dd span{display:block;margin-left:0;font-size:12px}.routine-note{margin-top:18px;font-size:10px}.planning-grid{grid-template-columns:1fr;gap:28px;margin-top:24px}.availability-card{border-radius:20px;padding:25px 22px}.section-heading h2{font-size:28px}.section-description{font-size:13px}.date-controls{margin-top:22px}.date-strip{gap:3px}.date-chip{min-height:69px}.date-chip span{font-size:10px}.date-chip strong{font-size:20px}.availability-results h3{font-size:18px}.interval-list li{padding:12px;font-size:17px}.slot-content form{grid-template-columns:1fr 1fr auto}.primary-button{grid-column:auto}.side-column{gap:28px}.weekend-card{padding:0 26px 25px}.weekend-art{height:120px;margin:0 -26px 23px}.weekend-art svg{height:140px}.weekend-card h2{font-size:29px}.weekend-times>div{grid-template-columns:60px 1fr}.weekend-times dd{font-size:19px}.weekend-times dd span{font-size:14px}.weekend-times dt{font-size:13px}.weekend-description,.weekend-note,.text-button{font-size:14px}.routine-card{padding:0 9px}.routine-card p:not(.eyebrow){font-size:15px}.routine-card h2{font-size:27px}.routine-card h2 br{display:none}.about-section{grid-template-columns:1fr;gap:24px;margin-top:32px;padding:27px 7px}.journey-stat>strong{font-size:53px}.journey-stat>span{font-size:15px}.journey-stat small{font-size:12px}.about-copy h2{font-size:15px}.about-copy p{font-size:12px}footer{font-size:10px;padding:22px 0 28px;gap:15px}.eyebrow{font-size:10px}}
@media(max-width:390px){.page-shell{padding:0 15px}h1{font-size:37px}.clock-panel,.status-panel{padding:23px}.custom-clock{font-size:80px}.status-times>div{grid-template-columns:104px 1fr}.availability-card{padding:23px 18px}.section-heading h2{font-size:25px}.slot-content form{grid-template-columns:1fr 1fr}.primary-button{grid-column:1/-1}.timezone strong{display:block;margin-left:0}.interval-list li{font-size:15px}.interval-state{font-size:12px}footer{flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep practical information comfortably readable at every size. */
nav{font-size:16px}
.timezone{font-size:13px}.timezone strong{font-size:14px}
.clock-note{font-size:15px}.progress-labels{font-size:13px}
.status-times dt{font-size:15px}.status-times dd{font-size:21px}.status-times dd span{font-size:15px}
.routine-note{font-size:12px}.status-countdown{font-size:18px}
.section-description{font-size:16px}.date-field>span{font-size:14px}
.date-chip span{font-size:13px}.date-chip strong{font-size:23px}
.week-controls p{font-size:14px}.availability-results h3{font-size:21px}
.availability-summary{font-size:15px}.interval-list li{font-size:20px}
.interval-state{font-size:16px}.interval-range small{font-size:11px}
.timeline-labels{font-size:12px}.slot-check summary{font-size:16px}
.slot-content>p,.slot-result{font-size:15px}.slot-content label{font-size:14px}
.slot-content input{font-size:16px}.primary-button{font-size:15px}
.availability-footnote{font-size:12px}.weekend-description,.weekend-note{font-size:15px}
.weekend-times dt{font-size:14px}.weekend-times dd{font-size:20px}.weekend-times dd span{font-size:16px}
.weekend-countdown{font-size:15px}.text-button{font-size:16px}
.routine-card p:not(.eyebrow){font-size:15px}.routine-key{font-size:14px}
@media(max-width:1000px) and (min-width:741px){.status-times dd span{display:block;margin-left:0}.interval-list li{font-size:18px}.interval-state{font-size:14px}}
@media(max-width:740px){nav{font-size:14px}.timezone{font-size:12px}.timezone strong{font-size:12px}.clock-note{font-size:13px}.progress-labels{font-size:12px}.status-times dt{font-size:14px}.status-times dd{font-size:20px}.status-times dd span{font-size:14px}.section-description{font-size:15px}.date-chip span{font-size:11px}.date-chip strong{font-size:22px}.week-controls p{font-size:13px}.availability-results h3{font-size:20px}.interval-list li{font-size:18px}.interval-state{font-size:15px}.slot-content form{grid-template-columns:1fr 1fr}.primary-button{grid-column:1/-1}.interval-range small{font-size:10px}.status-times>div{grid-template-columns:115px 1fr}.routine-note{font-size:11px}}
@media(max-width:390px){.status-times>div{grid-template-columns:108px 1fr}.status-times dt{font-size:13px}.interval-list li{font-size:16px}.interval-state{font-size:13px}.availability-results h3{font-size:18px}.availability-summary{font-size:14px}.date-chip span{font-size:10px}.progress-labels{font-size:11px}.clock-note{font-size:12px}}
/* One page title, with practical schedule details beneath it. */
.site-header{gap:20px;flex-wrap:wrap;padding:30px 0 24px}
.site-header h1{font-size:42px;letter-spacing:-1.6px;margin:0}
.intro{justify-content:flex-end;align-items:center;padding:18px 0 22px}
.section-heading h2{margin:0}
.weekend-schedule{border-top:1px solid #d7dccd;margin-top:24px;padding-top:20px}
.weekend-schedule h3{font-size:18px;margin-bottom:6px}
.weekend-schedule>p{font-size:12px;color:var(--muted)}
.weekend-schedule ol{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:10px}
.weekend-schedule li{padding:13px 14px;border-radius:10px;background:#f8f4e9}
.weekend-schedule li.resting{background:#e5e5ef}
.weekend-period-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.weekend-period-heading .interval-state{font-size:14px}
.weekend-period-day{font-size:12px;color:var(--muted);white-space:nowrap}
.weekend-period-dates{display:grid;gap:5px;font-size:14px;font-variant-numeric:tabular-nums}
.weekend-period-dates>div{display:grid;grid-template-columns:35px 1fr;gap:6px;align-items:baseline}
.weekend-period-dates span{font-size:12px;color:var(--muted)}
.weekend-period-dates time{font-weight:550}
@media(max-width:1000px) and (min-width:741px){.weekend-period-heading{align-items:flex-start;flex-direction:column;gap:3px}.weekend-schedule li{padding:12px 10px}.weekend-period-dates>div{grid-template-columns:1fr;gap:0}.weekend-period-dates{gap:7px}}
@media(max-width:740px){.site-header{padding:25px 0 20px;gap:14px}.site-header h1{font-size:36px;letter-spacing:-1.2px}.intro{align-items:flex-start;padding:16px 0 22px}.weekend-period-dates{font-size:15px}.weekend-period-heading .interval-state{font-size:15px}.weekend-period-day{font-size:13px}.weekend-schedule>p{font-size:13px}.routine-card h2{font-size:24px}}
@media(max-width:390px){.site-header h1{font-size:31px}.weekend-schedule li{padding:12px 10px}.weekend-period-dates{font-size:13px}.weekend-period-heading .interval-state{font-size:13px}.weekend-period-day{font-size:11px}}
/* Date lookup: show complete periods with dated endpoints. */
.weekday-label{font-size:14px;font-weight:600;margin-top:22px}
.weekday-label+.week-controls{margin-top:4px}
.timeline-labels>span:last-child{text-align:right}
.timeline-labels small{display:block;font-size:10px}
.periods-note{font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:14px}
.interval-list li{align-items:flex-start}
.availability-period-dates{display:grid;gap:7px;font-size:16px;font-variant-numeric:tabular-nums;min-width:0}
.availability-period-dates>div{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:baseline}
.availability-period-dates span{font-size:12px;color:var(--muted)}
.availability-period-dates time{font-weight:550;overflow-wrap:anywhere}
.weekend-period-dates>div{grid-template-columns:40px minmax(0,1fr)}
.weekend-period-dates time{overflow-wrap:anywhere}
@media(max-width:1000px){.interval-list li{display:block}.availability-period-dates{margin-top:10px;font-size:15px}}
@media(max-width:390px){.availability-period-dates{font-size:14px}.availability-period-dates>div{grid-template-columns:35px minmax(0,1fr);gap:5px}}
