/* The experience layer: purposeful movement and clearer journeys. */
:root { --ease-out:cubic-bezier(.22,1,.36,1); --blush:#f3e8df; }
html { scroll-padding-top:125px; }
.header { position:sticky; top:0; background:rgba(250,249,246,.96); backdrop-filter:blur(16px); }
.header nav { gap:26px; }
.header nav>a:not(.nav-cta) { position:relative; }
.header nav>a:not(.nav-cta)::after { content:""; position:absolute; height:1px; background:var(--red); left:0; right:0; bottom:-7px; transform:scaleX(0); transform-origin:left; transition:transform .3s var(--ease-out); }
.header nav>a:hover::after,.header nav>a:focus-visible::after { transform:scaleX(1); }
.nav-explore { position:relative; }
.nav-explore>summary { list-style:none; display:flex; align-items:center; gap:9px; min-height:44px; }
.nav-explore>summary::-webkit-details-marker { display:none; }
.nav-explore>summary span { transition:transform .25s; }
.nav-explore[open]>summary span { transform:rotate(180deg); }
.explore-menu { position:absolute; top:55px; right:-70px; width:330px; padding:27px; background:var(--paper); border:1px solid var(--line); box-shadow:0 20px 55px #25292218; border-radius:4px; }
.explore-menu .eyebrow { margin-bottom:14px; }
.explore-menu a { display:block; padding:13px 0; border-top:1px solid var(--line); }
.explore-menu strong { font-weight:500; }
.explore-menu a span { display:block; color:var(--muted); font-size:.8rem; margin-top:3px; }
.nav-explore[open] .explore-menu { animation:menu-enter .25s var(--ease-out); }
.nav-cta { border-radius:3px; transition:background .25s,color .25s,border-color .25s; }
.nav-cta:hover { background:var(--ink); border-color:var(--ink); color:white; }
.hero { padding-top:48px; column-gap:46px; }
.hero-copy { padding-top:47px; padding-bottom:38px; }
.hero .eyebrow::before,.pause-intro .eyebrow::before { content:""; display:inline-block; width:23px; height:1px; background:var(--red); margin-right:12px; vertical-align:middle; }
.hero h1 { font-size:clamp(3.8rem,6.1vw,6.6rem); }
.hero-art { margin-right:0; }
.hero-image { position:relative; border-radius:46% 46% 5px 5px; overflow:hidden; isolation:isolate; background:var(--blush); }
.hero-image img { height:545px; object-position:54% center; animation:living-light 16s ease-in-out infinite; }
.art-invitation { position:absolute; bottom:26px; left:25px; right:25px; background:#faf9f6f2; padding:17px 20px; border:1px solid #fff9; border-radius:4px; display:flex; gap:17px; align-items:center; font-size:.88rem; backdrop-filter:blur(10px); }
.art-invitation small { display:block; color:var(--muted); margin-top:2px; font-size:.75rem; }
.art-invitation>span:last-child { margin-left:auto; font-size:1.25rem; }
.invitation-mark { width:30px; height:30px; flex-shrink:0; border:1px solid var(--red); border-radius:50%; outline:1px solid #d0373733; outline-offset:6px; animation:breathe 8s ease-in-out infinite; }
.hero-art figcaption { padding:16px 12px 0; font-size:.75rem; }
.hero-art figcaption>span { display:inline; margin-left:8px; }
.hero-foot { border-top:0; padding-top:17px; padding-bottom:18px; }
.hero-foot>a { display:none; }
.journey-nav { display:grid; grid-template-columns:repeat(4,1fr); padding:23px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); gap:22px; }
.journey-nav a { font-size:.83rem; display:flex; align-items:center; gap:12px; min-height:24px; }
.journey-nav span { color:var(--red-dark); font-size:.75rem; }
.journey-nav a[aria-current] { color:var(--red-dark); text-decoration:underline; text-underline-offset:5px; }
.path-card { position:relative; overflow:hidden; border-radius:5px; min-height:470px; border:1px solid #d8ded0; background:linear-gradient(130deg,#edf0e7,#e2e7d8); transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out),border-color .3s; }
.path-card>*:not(.path-index) { position:relative; z-index:1; }
.path-card.dark { background:linear-gradient(130deg,#333c2d,#20271e); border-color:#424d3a; }
.path-card.dark:hover { background:linear-gradient(130deg,#333c2d,#20271e); }
.path-index { position:absolute; right:16px; top:72px; font:12rem/1 var(--serif); color:#45573c; opacity:.1; pointer-events:none; letter-spacing:-.09em; transition:transform .8s var(--ease-out); }
.dark .path-index { color:#eef3e8; }
.path-card h3 { margin-bottom:20px; }
.path-tags { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:25px; }
.path-tags span { font-size:.75rem; border:1px solid #89957e; padding:3px 11px; border-radius:30px; }
.dark .path-tags span { border-color:#859079; color:#e6e9e1; }
.path-card .card-bottom { border-top:1px solid #acb69f; padding-top:20px; margin-top:32px; }
.path-card.dark .card-bottom { border-color:#5d6a52; }
.card-bottom>span,.button>span,.nav-cta>span,.text-link>span { transition:transform .3s var(--ease-out); }
.button,.content-card { border-radius:4px; }
.button { transition:background .25s,box-shadow .3s,transform .3s; }
.button:active { transform:translateY(1px); }
.content-card { border:1px solid #dcded3; transition:transform .4s var(--ease-out),box-shadow .4s; }
.content-card:has(a):focus-within { border-color:var(--red); }
.status { background:#faf9f680; }
.approach { background:#efeee7; position:relative; }
.approach h2 em { color:#795649; }
.pause-section { padding-bottom:0; }
.pause-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:0 100px; align-items:end; margin-bottom:44px; }
.pause-intro>.eyebrow { grid-column:1/-1; }
.pause-intro>p:last-child { color:var(--muted); max-width:400px; }
.pause-experience { display:grid; grid-template-columns:1fr 1.2fr; gap:65px; align-items:center; background:linear-gradient(115deg,#f0e2d6,#f6efe8 65%,#eeeee6); border:1px solid #e6d6c7; border-radius:8px; padding:58px; }
.pause-dial { position:relative; height:335px; display:grid; place-items:center; }
.pause-dial i { position:absolute; border:1px solid #ac7c653d; border-radius:50%; width:95%; max-width:330px; aspect-ratio:1; transition:transform 1.3s var(--ease-out),border-color 1s; }
.pause-dial i:nth-child(2) { width:73%; max-width:250px; border-color:#ac7c6566; }
.pause-dial i:nth-child(3) { width:50%; max-width:175px; border-color:#b2695588; }
.pause-dial>span { font:3.5rem/1 var(--serif); z-index:1; color:#7c4636; }
.pause-dial>small { position:absolute; bottom:24px; text-transform:uppercase; font-size:.75rem; letter-spacing:.14em; color:#7c5b4e; }
.pause-experience[data-step="1"] .pause-dial i:nth-child(1) { transform:scale(.94); }
.pause-experience[data-step="2"] .pause-dial i:nth-child(2) { transform:scale(1.12); }
.pause-experience[data-step="3"] .pause-dial i:nth-child(3) { transform:scale(1.2); }
.pause-experience[data-step="4"] .pause-dial i { transform:scale(1.05); border-color:#ac7c65; }
.pause-content .eyebrow { color:#80533f; margin-bottom:20px; }
#pause-prompt { min-height:155px; }
#pause-prompt h3 { font-size:2.5rem; margin-bottom:17px; max-width:20ch; }
#pause-prompt p { font-size:.95rem; max-width:49ch; }
.pause-progress { display:flex; gap:18px; padding:0; margin:28px 0; list-style:none; }
.pause-progress li { font-size:.75rem; color:#696256; flex:1; padding-top:10px; position:relative; border-top:2px solid #d2c5b6; }
.pause-progress li[aria-current="step"] { border-color:var(--red); color:var(--red-dark); }
.pause-progress li.complete { border-color:#8c7864; }
.pause-actions { display:flex; gap:25px; align-items:center; flex-wrap:wrap; }
.quiet-button { padding:8px 0; background:none; border:0; border-bottom:1px solid; font-size:.85rem; }
.pause-note { font-size:.75rem; color:#756859; margin-top:19px; }
.alignment-label { position:absolute; left:50%; top:50%; transform:translate(-50%,38px); font:1.8rem var(--serif); color:var(--red-dark); }
.alignment-visual { background:radial-gradient(ellipse at center,#ede9dd80,transparent 65%); }
.alignment-ring { transition:transform 1.5s var(--ease-out),border-color .8s; }
.dimension[open] { border-top-color:var(--red); }
.dimension[open] summary { color:var(--red-dark); }
.dimension[open] p { animation:detail-enter .4s var(--ease-out); }
.dimension summary { transition:color .25s; }
.dimension summary:hover { color:var(--red-dark); }
.community-section { background:radial-gradient(ellipse at 76% 50%,#35432e,var(--ink) 64%); }
.ripple-panel { overflow:hidden; display:grid; place-items:center; min-height:450px; border-radius:6px; padding:22px; }
.ripple-panel .ripple-diagram { width:min(100%,420px); height:auto; aspect-ratio:1; overflow:hidden; }
.ripple-panel .ripple-diagram i { max-width:88%; }
.community-ripple-row { align-items:stretch; }
.community-section .ripple-diagram i { animation:ripple-life 12s ease-in-out infinite; }
.community-section .ripple-diagram i:nth-child(2) { animation-delay:-3s; }
.community-section .ripple-diagram i:nth-child(3) { animation-delay:-6s; }
.community-section .ripple-diagram i:nth-child(4) { animation-delay:-9s; border-color:#dba68e; }
.founder-type { border-radius:50% 50% 5px 5px; min-height:490px; background:linear-gradient(150deg,#e8e1d5,#f2eee6); }
.founder-type span { padding-top:20px; }
.initiative-names a { transition:color .3s,transform .3s; }
.initiative-row { transition:background .3s; }
.starting-questions { display:grid; grid-template-columns:.85fr 1.15fr; gap:100px; border-top:1px solid var(--line); }
.starting-questions>div>p:not(.eyebrow) { margin-top:25px; color:var(--muted); }
.question { border-top:1px solid var(--line); padding:24px 0; }
.question:last-child { border-bottom:1px solid var(--line); }
.question summary { list-style:none; display:flex; justify-content:space-between; gap:22px; font-size:1.02rem; font-weight:500; }
.question summary::-webkit-details-marker { display:none; }
.question summary span { font-weight:400; color:var(--red-dark); }
.question[open] summary span { transform:rotate(45deg); }
.question p { font-size:.94rem; color:var(--muted); padding-top:19px; padding-right:24px; animation:detail-enter .35s var(--ease-out); }
.invitation { background:radial-gradient(ellipse at 50% 100%,#eee1d566,transparent 66%); }
.journal-list article { transition:background .3s; }
.journal-list article:hover { background:#eeeee660; }
.page-intro:not(.ink) { background:linear-gradient(115deg,var(--paper) 35%,#f0ece2); }
.page-intro.ink { background:radial-gradient(ellipse at 95% 90%,#415038,var(--ink) 70%); }
.photo-band { padding-top:118px; padding-bottom:118px; }
.photo-band .section-heading { margin-bottom:36px; }
.photo-band h2 em { color:#8b4436; }
.photo-grid { display:grid; grid-template-columns:1.05fr 1fr 1fr; gap:18px; align-items:stretch; }
.photo-card { margin:0; min-height:340px; position:relative; overflow:hidden; border-radius:7px; background:#e8e3d8; border:1px solid #e0ded3; }
.photo-card.tall { grid-row:span 2; min-height:700px; }
.photo-card img { width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(.98); transition:transform 6s var(--ease-out),filter .6s; }
.photo-card:hover img { transform:scale(1.035); filter:saturate(.92) contrast(1); }
.photo-card figcaption { position:absolute; left:0; right:0; bottom:0; padding:26px; color:#fff; background:linear-gradient(transparent,#111810cc); font-size:.92rem; line-height:1.45; }
.photo-card.concept-card img { object-position:54% center; }
.filter-bar button { transition:background .25s,color .25s,transform .25s; }
.filter-bar button:hover { background:#e6e9dd; color:var(--ink); }
.filter-bar button[aria-pressed="true"]:hover { background:var(--ink); color:white; }
.programme:not([hidden]) { animation:detail-enter .35s var(--ease-out); }
.choice-option { border-radius:4px; transition:border-color .25s,background .25s,transform .3s; }
.choice-option:hover { border-color:#8b7665; }
.recommendation { border-left:2px solid var(--red); border-radius:4px; animation:detail-enter .4s var(--ease-out); }
.contact-form input,.contact-form textarea,.contact-form select { border-radius:3px; transition:border-color .2s,background .2s; }
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus { border-color:var(--red); background:#fff9; }
.has-entered { animation:section-enter .8s var(--ease-out) both; }
.has-entered[data-reveal-order="1"] { animation-delay:.08s; }
.has-entered[data-reveal-order="2"] { animation-delay:.16s; }
.has-entered[data-reveal-order="3"] { animation-delay:.24s; }
.reveal-item:focus-within { animation:none; }
@keyframes section-enter { from { transform:translateY(20px); } to { transform:translateY(0); } }
@keyframes detail-enter { from { transform:translateY(7px); } to { transform:translateY(0); } }
@keyframes menu-enter { from { transform:translateY(-7px); } to { transform:translateY(0); } }
@keyframes living-light { 0%,100% { transform:scale(1.01); } 50% { transform:scale(1.055) translateY(-3px); } }
@keyframes ripple-life { 0%,100% { transform:scale(.97); opacity:.65; } 50% { transform:scale(1.04); opacity:1; } }
@media(hover:hover) { .path-card:hover { transform:translateY(-6px); box-shadow:0 18px 38px #25292212; }.path-card:hover .path-index { transform:translate(-6px,-4px); }.path-card:hover .card-bottom>span,.button:hover>span,.nav-cta:hover>span,.text-link:hover>span { transform:translate(3px,-3px); }.content-card:has(a):hover { transform:translateY(-4px); box-shadow:0 10px 30px #2529220b; }.button:hover { box-shadow:0 8px 20px #af292922; }.initiative-names a:hover { transform:translateY(-3px); } }
@media(max-width:1100px) {
 .header { height:88px; padding:14px 32px; }.brand img { width:139px;height:52px; }
 .menu-toggle { display:flex;gap:15px;align-items:center;padding:10px;background:transparent;border:0;font-size:.85rem; }
 .header nav { display:none;position:absolute;top:88px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--paper);padding:18px 32px 25px;gap:0;border-bottom:1px solid var(--line);max-height:calc(100dvh - 88px);overflow-y:auto; }
 .header nav.is-open { display:flex; }.header nav>a { padding:12px; }.header nav .nav-cta { margin-top:12px;justify-content:space-between; }.header nav>a::after { display:none; }
 .nav-explore>summary { padding:12px; }.explore-menu { position:static;width:100%;box-shadow:none;border:0;border-left:1px solid var(--line);border-radius:0;margin:4px 0 16px;padding:8px 24px; }.explore-menu .eyebrow { display:none; }
 .no-js .header { height:auto;flex-wrap:wrap; }.no-js .header nav { display:flex;position:static;width:100%;max-height:none; }.no-js .menu-toggle { display:none; }
 .hero { gap:30px; }.hero h1 { font-size:5.7vw; }.hero-image img { height:490px; }.hero-art figcaption>span { display:block;margin:2px 0 0; }
 .journey-nav { gap:12px; }.journey-nav a { font-size:.78rem;gap:8px; }
 .pause-intro,.starting-questions { gap:40px; }.pause-experience { padding:35px;gap:40px; }.pause-dial { height:280px; }.pause-dial>span { font-size:3rem; }.pause-dial>small { bottom:5px; }
 .path-card { padding:32px; }.path-index { font-size:10rem; }.path-tags { max-width:280px; }
 .photo-grid { grid-template-columns:1fr 1fr; }
 .photo-card.tall { grid-row:auto; min-height:460px; }
 .photo-card { min-height:330px; }
 .ripple-panel { min-height:390px; }
}
@media(max-width:760px) {
 html { scroll-padding-top:108px; }.header { padding:14px 20px; }.header nav { padding:16px 20px 25px; }
 .hero { padding-top:36px;gap:0; }.hero-copy { padding:0; }.hero h1 { font-size:clamp(3.4rem,10vw,5rem); }.hero .eyebrow { letter-spacing:.1em; }.hero .eyebrow::before { width:15px;margin-right:7px; }
 .hero-art { margin:32px 0 12px; }.hero-image { border-radius:46% 46% 4px 4px;max-width:460px;width:100%;margin:auto; }.hero-image img { height:380px;object-position:50% center; }.art-invitation { left:17px;right:17px;bottom:17px;padding:13px 16px;gap:15px; }.invitation-mark { width:22px;height:22px;outline-offset:4px; }.art-invitation { font-size:.8rem; }.art-invitation small { font-size:.75rem; }.hero-art figcaption { padding:13px 0 0; }.hero-art figcaption>span { display:none; }
 .hero-foot { padding-bottom:22px; }.journey-nav { grid-template-columns:1fr 1fr;padding:18px 0;gap:16px 10px; }.journey-nav a { font-size:.78rem; }
 .path-card { min-height:420px;padding:29px; }.path-card .card-bottom { margin-top:25px; }.path-index { top:79px;font-size:10rem; }
 .pause-intro { grid-template-columns:1fr;gap:23px; }.pause-intro>.eyebrow { margin:0; }.pause-experience { grid-template-columns:1fr;padding:28px 24px;gap:22px; }.pause-dial { height:250px;max-width:290px;width:100%;margin:auto; }.pause-dial>small { bottom:5px; }.pause-content .eyebrow { font-size:.75rem; }.pause-content h3 { font-size:2.35rem; }#pause-prompt { min-height:180px; }.pause-progress { gap:9px; }.pause-progress li { font-size:.75rem; }
 .pause-actions { gap:17px; }.pause-actions .button { gap:20px;font-size:.83rem; }
 .founder-type { min-height:390px; }.starting-questions { grid-template-columns:1fr;gap:38px; }.question summary { font-size:.94rem; }.question p { padding-right:0; }
 .photo-band { padding-top:76px; padding-bottom:76px; }
 .photo-grid { grid-template-columns:1fr; gap:14px; }
 .photo-card,.photo-card.tall { min-height:300px; }
 .photo-card figcaption { padding:20px; font-size:.86rem; }
 .ripple-panel { min-height:310px; padding:18px; }
}
.no-js .pause-actions,.no-js .pause-progress { display:none; }
.no-motion .hero-image img { transform:none; }
.no-motion .has-entered,.no-js .has-entered { opacity:1;transform:none; }
@media(prefers-reduced-motion:reduce) { .has-entered { opacity:1;transform:none; }.hero-image img { transform:none; } }

.no-motion .path-card:hover,.no-motion .content-card:hover{transform:none}
@media(prefers-reduced-motion:reduce){.path-card:hover,.content-card:hover{transform:none}}
.hero-motion { border:0;background:none;padding:8px 0;color:var(--muted);font-size:.75rem;text-decoration:underline;text-underline-offset:4px; }
.no-js .hero-motion { display:none; }
@media(min-width:1101px) {
 .header { height:auto;min-height:104px;gap:24px;flex-wrap:wrap; }
 .header .brand { flex-shrink:0; }
 .header nav { margin-left:auto;flex-wrap:wrap;max-width:100%; }
 html { scroll-padding-top:max(125px,8rem); }
}
