/* Applied from style.md and the rendered About / Work With Me references.
   White-on-white text and zero-padding extraction errors are corrected. */
:root{--color-primary:#0022cb;--color-secondary:#3366ff;--color-bg:#fff;--color-bg-secondary:#f5f5f7;--color-text:#1d1d1f;--color-text-secondary:#666;--reference-shadow:8px 8px 16px rgba(0,0,0,.08);--reference-radius:28px;--reference-space:24px}
body{color:var(--color-text)}h1,h2,h3{letter-spacing:-.022em;font-weight:600}h2{font-size:clamp(34px,4vw,48px);line-height:1.1}.section{padding-block:96px}.inner-page main{background-image:linear-gradient(#0a1a3308 1px,transparent 1px),linear-gradient(90deg,#0a1a3308 1px,transparent 1px);background-size:40px 40px}.inner-page .inner-hero{padding-top:72px;padding-bottom:72px;text-align:center}.inner-hero h1{font-size:clamp(48px,7vw,96px);line-height:.95;letter-spacing:-.022em;max-width:1160px;margin-inline:auto}.inner-intro{font-size:21px;line-height:1.5;max-width:860px;margin:36px auto;padding:36px;background:white;border:1px solid #0000000d;border-radius:28px;box-shadow:var(--reference-shadow);text-align:left}.inner-hero .eyebrow{text-align:center}.breadcrumb{text-align:left;margin-bottom:48px}.inner-page .ruled{border-color:transparent}.inner-page .founder{background:#f5f5f7;color:var(--color-text)}.inner-page .founder .eyebrow,.inner-page .founder .editorial-grid span{color:var(--blue)}.inner-page .founder h2 span{color:#666}.inner-page .founder .editorial-grid p{color:#666}
.service,.workshop-card,.editorial-grid article,.inner-page .offering,.faqs details,#project-brief{background:#fff;border:1px solid #0000000d;border-radius:28px;box-shadow:var(--reference-shadow)}.service{padding:28px}.service h3{font-size:26px;line-height:1.2}.workshop-card{padding:28px}.editorial-grid{gap:24px}.editorial-grid article{padding:28px}.editorial-grid h3{font-size:26px;line-height:1.2}.inner-page .founder .editorial-grid p{color:#666}.offering-section,.inner-page .enquiry-section{background:transparent}.inner-page .offering{padding:36px;margin-top:24px;gap:48px}.offering-title h2{font-size:clamp(30px,3.2vw,44px)}.offering-body h3{font-size:24px;line-height:1.3}.workshop-card h3{font-size:26px;line-height:1.2}.service-grid,.workshop-grid{gap:24px}.contact{background:#f5f5f7}.contact h2{font-size:clamp(44px,6vw,80px);line-height:1;letter-spacing:-.022em}.button{font-weight:500;min-height:52px;padding:12px 24px}.button.small{min-height:44px;padding:8px 20px}.text-link{font-weight:500}
/* Observed full-width vertical rail, 24px card padding, offset markers. */
.timeline{position:relative;display:flex;flex-direction:column;gap:16px;margin:48px auto 0;padding:0 0 0 40px;list-style:none;max-width:1080px}.timeline::before,.timeline::after{content:"";position:absolute;left:11px;top:0;width:2px;height:100%;border-radius:4px}.timeline::before{background:#0022cb26}.timeline::after{background:linear-gradient(#58b6ff,#3366ff);box-shadow:0 0 12px #58b6ff99;transform-origin:top;transform:scaleY(var(--timeline-progress,1));will-change:transform}.timeline>li{position:relative;padding:24px;border:1px solid #0000000d;border-radius:28px;background:#fff;box-shadow:var(--reference-shadow);margin:0;min-width:0;transition:opacity 700ms ease-out,translate 700ms ease-out,border-color 700ms ease-out}.timeline>li::before{content:"";position:absolute;left:-38px;top:28px;width:14px;height:14px;border-radius:50%;border:2px solid #dce7f5;background:#f5f5f7;box-sizing:border-box}.timeline>li>span{font:600 11px/18px 'Space Grotesk',sans-serif;letter-spacing:.18em;color:#666}.timeline h3{font-size:22px;line-height:1.35;margin:12px 0 8px}.timeline p{font-size:17px;color:#666;margin:0;max-width:780px}.reference-motion .timeline>li:not(.is-active){opacity:.3;translate:24px 0}.reference-motion .timeline>li.is-active{opacity:1;translate:0;border-color:#58b6ff99}.reference-motion .timeline>li.is-active::before{background:#a6d5ff;border-color:#0022cb99;box-shadow:0 0 12px #58b6ff66}.timeline>li:focus-within{opacity:1!important;translate:0!important}
/* Native disclosures match the reference: open initially, independent toggle. */
.inner-page .section:has(.faqs)>.split{display:block;max-width:860px;margin:auto}.section:has(.faqs) h2{margin-bottom:28px}.faqs{display:flex;flex-direction:column;gap:12px;max-width:860px;margin:auto}.faqs details,.faqs details:first-child{padding:20px 24px}.faqs summary{list-style:none;font-family:'SF Pro Display',-apple-system,sans-serif;font-size:21px;font-weight:600;line-height:1.5;min-height:44px;padding:0;display:flex;align-items:center}.faqs summary::-webkit-details-marker{display:none}.faqs details p{margin:12px 0 0;color:#666;font-size:17px;line-height:1.6}
/* Observed contact: heading above a white 28px card; quiet grey inputs. */
.enquiry-section>.split{display:block;max-width:1080px}.enquiry-section h2{font-size:40px;line-height:1.1}.enquiry-section .split>div>p:not(.eyebrow){max-width:860px}.enquiry-section .split>div{margin-bottom:32px}.enquiry-section .text-link{margin-bottom:0}#project-brief{padding:40px}#project-brief label{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#535353;font-weight:600}#project-brief input,#project-brief select,#project-brief textarea{background:#ececf0;border:1px solid #00000014;border-radius:12px;padding:12px 16px;box-shadow:none;font-size:17px}#project-brief .field-row{gap:24px}#project-brief .button{border:0}.form-note{font-size:13px;line-height:1.6}.header{border-bottom-color:#e5e5e7}#reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:100;pointer-events:none;background:linear-gradient(90deg,#90caff,#3366ff);transform-origin:left;transform:scaleX(var(--page-progress,0))}
.reference-motion .scroll-reveal{opacity:var(--reveal-opacity,1);translate:0 var(--reveal-y,0px);will-change:opacity,translate}.reference-motion .scroll-reveal:focus-within{opacity:1;translate:0}.service,.workshop-card,.editorial-grid article{transition:transform .32s cubic-bezier(.4,0,.6,1),border-color .32s cubic-bezier(.4,0,.6,1)}
@media(max-width:1000px){.section{padding-block:72px}.inner-hero h1{font-size:clamp(48px,7vw,80px)}.inner-page .offering{padding:28px;gap:28px}}
@media(max-width:700px){.section{padding-block:48px}.inner-page .inner-hero{padding-block:48px}.inner-hero h1{font-size:clamp(40px,10vw,56px);line-height:1}.breadcrumb{margin-bottom:36px}.inner-intro{padding:24px;font-size:18px;margin-block:28px}.inner-page .offering{padding:24px;gap:24px}.editorial-grid article,.workshop-card,.service{padding:24px}.timeline{padding-left:32px;margin-top:32px}.timeline::before,.timeline::after{left:7px}.timeline>li{padding:24px}.timeline>li::before{left:-31px}.timeline h3{font-size:21px}.timeline p{font-size:16px}.reference-motion .timeline>li:not(.is-active){translate:12px 0}.faqs details,.faqs details:first-child{padding:20px 24px}.faqs summary{font-size:19px}.faqs details p{font-size:16px}#project-brief{padding:24px}.enquiry-section h2{font-size:34px}.enquiry-section .split>div{margin-bottom:24px}.contact h2{font-size:44px}}
@media(prefers-reduced-motion:reduce){.timeline>li,.scroll-reveal{opacity:1!important;translate:none!important;transition:none!important}.timeline::after{transform:scaleY(1)}#reading-progress{display:none}}
@media print{.timeline>li,.scroll-reveal{opacity:1!important;translate:none!important}#reading-progress{display:none}}
:root{--muted:#666}body{font-size:19px}.section:has(>.principles-timeline)>h2{font-size:clamp(40px,6vw,80px);line-height:1}.inner-page .offering-body p,.inner-page .offering-body li{font-size:19px}.inner-page .caption,.inner-page .form-note{font-size:13px}@media(max-width:700px){body{font-size:17px}.inner-page .offering-body p,.inner-page .offering-body li{font-size:17px}}
.hero h1{letter-spacing:-.022em}
/* Keep timeline markers on the rail while their cards slide into place. */
.timeline{--timeline-indent:40px;--timeline-rail-x:11px}
.timeline>li{--timeline-shift:0px;translate:var(--timeline-shift) 0}
.reference-motion .timeline>li:not(.is-active){--timeline-shift:24px;translate:var(--timeline-shift) 0}
.timeline>li::before{left:calc(var(--timeline-rail-x) - var(--timeline-indent));transform:translateX(-50%);translate:calc(-1 * var(--timeline-shift)) 0;transition:translate 700ms ease-out}
.timeline>li:focus-within{--timeline-shift:0px!important}
@media(max-width:700px){.timeline{--timeline-indent:32px;--timeline-rail-x:7px}.reference-motion .timeline>li:not(.is-active){--timeline-shift:12px}}
@media(prefers-reduced-motion:reduce){.timeline>li{--timeline-shift:0px!important}.timeline>li::before{translate:0;transition:none}}
@media print{.timeline>li{--timeline-shift:0px!important}.timeline>li::before{translate:0;transition:none}}
