/* Abundancia 888 — Marfil, champagne y oro. */
:root{--paper:#f9f5ec;--ivory:#fffcf6;--champagne:#eee2ca;--ink:#33291e;--muted:#75644f;--gold:#94641e;--gold-bright:#d5ad60;--line:#ded0b6;--shadow:0 20px 70px #74532412;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}::selection{background:#dfc593;color:#33291e}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}img{display:block;max-width:100%}p{margin:0 0 1.3em}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.1;margin:0 0 .55em;letter-spacing:-.045em}h1{font-size:clamp(48px,6vw,86px)}h2{font-size:clamp(38px,4.4vw,62px)}h3{font-size:32px}em{font-weight:400;color:var(--gold)}strong{font-weight:600}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #916117;outline-offset:5px}button:focus:not(:focus-visible){outline:none}.skip{position:fixed;left:20px;top:-100px;padding:12px 24px;background:var(--ink);color:white;z-index:100}.skip:focus{top:10px}.muted{color:var(--muted)}.lead{font-size:20px;line-height:1.7}.eyebrow{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:650;line-height:1.5;letter-spacing:.19em;color:var(--gold);margin:0 0 24px}.eyebrow .line{width:32px;height:1px;background:var(--gold)}.section{width:min(1280px,calc(100% - 112px));margin:auto;padding:108px 0}.section-heading{margin-bottom:50px}.section-heading.centered{text-align:center}.centered .eyebrow{justify-content:center}.section-heading h2{margin-bottom:0}.split{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.split>p{max-width:350px;color:var(--muted);margin:0 0 6px}.icon{display:block;width:20px;height:20px;flex:none;stroke-width:1.5}span:has(>.icon){display:inline-flex;flex:none}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:56px;padding:15px 27px;border:1px solid #b49762;border-radius:5px;background:#fffbf2;color:var(--ink);font-size:14px;line-height:1.45;font-weight:600;letter-spacing:.015em;text-align:center;transition:transform .25s,box-shadow .25s,background .25s;box-shadow:inset 0 1px #ffffff70}.button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #84612825}.button.primary{color:#fffaf0;border-color:#b08039;background:linear-gradient(110deg,#775018 0%,#916022 36%,#976626 52%,#96671f 77%,#785019 100%);background-size:170% 100%;box-shadow:inset 0 1px #f6de9c90,0 6px 18px #79541822;transition:background-position .5s,transform .25s,box-shadow .25s}.button.primary:hover{background-position:100% 50%;box-shadow:inset 0 1px #f6de9c90,0 10px 25px #79541835}.button.small{min-height:44px;padding:11px 20px;font-size:14px;gap:10px}.button.ghost{background:#fffcf660;border-color:#bda579}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:550;color:#74501f;line-height:1.5;padding:8px 0;border-bottom:1px solid #b89a643d;transition:border-color .2s}.text-link:hover{border-color:var(--gold)}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:12px max(32px,calc((100vw - 1340px)/2));height:132px;background:#fbf7eeed;border-bottom:1px solid #c7ad7744;position:relative;z-index:20;backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:17px;flex:none}.brand img{width:106px;height:106px;object-fit:cover;border-radius:50%;clip-path:circle(48%);filter:drop-shadow(0 3px 8px #80551e30)}.brand>span{font-family:var(--serif);font-size:23px;letter-spacing:.06em;white-space:nowrap;line-height:1.2}.brand b{font-weight:400;color:var(--gold)}.brand small{display:block;font-family:var(--sans);font-size:14px;letter-spacing:.24em;color:var(--muted);margin-top:10px}.header nav{display:flex;gap:32px;font-size:14px;color:#645340}.header nav a{padding:10px 0}.header nav a:hover{color:var(--gold)}
/* The opening image is full-bleed; all copy remains live and accessible. */
.hero{position:relative;min-height:745px;isolation:isolate;overflow:hidden;background:#eee0c5}.hero-scene,.hero-scene img,.hero-wash{position:absolute;inset:0;width:100%;height:100%}.hero-scene{z-index:-3}.hero-scene img{object-fit:cover;object-position:center 40%;animation:scene-arrive 1.8s cubic-bezier(.2,.65,.3,1) both}.hero-wash{z-index:-2;background:linear-gradient(90deg,#f7edddad 0%,#f7eddd85 27%,#f7eddd10 52%,transparent 65%)}.hero-content{width:min(1280px,calc(100% - 112px));margin:auto;padding:70px 0 110px;position:relative;animation:content-arrive 1s .1s both}.hero-content .eyebrow{font-size:14px;letter-spacing:.17em}.hero h1{font-size:clamp(66px,6.1vw,94px);line-height:1.02;letter-spacing:-.065em;max-width:620px;margin:0 0 26px;color:#493521}.hero h1 em{display:block;font-size:.67em;line-height:1.16;letter-spacing:-.05em;margin-top:7px;color:#8b5b20}.hero-description{font-size:19px;line-height:1.65;max-width:400px;color:#5d4833}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.hero-signature{display:flex;align-items:center;gap:14px;margin-top:36px;font-size:14px;line-height:1.8;color:#6b573e}.hero-signature strong{font-size:14px}.signature-mark{height:45px;width:45px;color:#9a742e}.hero-caption{position:absolute;bottom:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px max(56px,calc((100vw - 1280px)/2));background:linear-gradient(90deg,#f8efdfba,#f9edd57d);border-top:1px solid #fbf2dd80;font-size:14px;letter-spacing:.2em;color:#684c2a;backdrop-filter:blur(5px)}.experience-ribbon{display:flex;align-items:center;justify-content:center;gap:42px;background:#f0e6d3;border-bottom:1px solid var(--line);padding:23px 24px;color:#6a583e;font-size:14px}.experience-ribbon>span{font-size:14px;letter-spacing:.16em;max-width:160px;line-height:1.8}.experience-ribbon div{display:flex;gap:12px;align-items:center}.experience-ribbon strong{font-family:var(--serif);font-size:36px;font-weight:400;color:var(--gold);line-height:1}.experience-ribbon i{height:28px;width:1px;background:#cdb88f}
/* Editorial photographic sections. */
.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro-visual{position:relative;align-self:stretch;min-height:610px;margin:12px 0 28px}.intro-visual>img{width:100%;height:100%;object-fit:cover;object-position:43% center;position:absolute;inset:0;border-radius:160px 160px 2px 2px}.intro-visual:after{content:'';position:absolute;inset:-12px 14px 14px -12px;border:1px solid #b99b6260;border-radius:170px 170px 2px 2px;z-index:-1}.image-note{position:absolute;bottom:-28px;right:-28px;padding:28px 38px;background:linear-gradient(125deg,#fffdf3f2,#eee1c9ed);border:1px solid #c2a571;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.image-note .eyebrow{font-size:14px;margin-bottom:14px}.image-note p{font-family:var(--serif);font-size:30px;line-height:1.2;margin:0}.intro-copy>p:not(.eyebrow){font-size:15px;color:#715f4b}.intro-copy>p.lead{font-size:19px;color:#463724}.intro-copy h2{font-size:clamp(38px,4vw,57px);margin-bottom:28px}.features{padding-top:25px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.feature-image{position:relative;overflow:hidden;aspect-ratio:1.1}.feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.visual-feature:hover .feature-image img{transform:scale(1.04)}.feature-index{position:absolute;bottom:18px;left:20px;border:1px solid #fff8dd99;display:grid;place-items:center;width:42px;height:42px;color:#fff8e9;background:#60431e55;backdrop-filter:blur(12px);font-family:var(--serif);font-size:24px;border-radius:50%}.feature-copy{padding:28px 8px 0}.feature-copy .eyebrow{margin-bottom:12px}.feature-copy h3{font-size:32px;margin-bottom:15px}.feature-copy>p:last-child{font-size:15px;color:var(--muted);margin-bottom:0}.quote-band{position:relative;isolation:isolate;min-height:460px;display:grid;place-items:center;overflow:hidden;padding:60px 32px}.quote-band>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.quote-band:after{content:'';position:absolute;inset:0;background:#fcf5e3c7;z-index:-1}.quote-content{text-align:center;max-width:1100px}.quote-flower{width:92px;height:92px;display:block;margin:0 auto 24px;color:#a8833a}.quote-band blockquote{margin:0 0 27px;font-family:var(--serif);font-size:clamp(30px,3.5vw,49px);line-height:1.3;letter-spacing:-.025em}.quote-band .eyebrow{justify-content:center;margin:0;font-size:14px}.curriculum-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:55px;align-items:start}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}#curriculum{border-top:1px solid var(--line)}#curriculum summary{display:grid;grid-template-columns:62px 1fr 24px;column-gap:18px;align-items:center;padding:24px 0;font-family:var(--serif);font-size:22px;line-height:1.25}.chapter-index{font-family:var(--sans);font-size:14px;color:var(--gold);letter-spacing:.02em}.chapter-ritual{grid-column:2;font-family:var(--sans);font-size:14px;letter-spacing:.12em;color:#8f7754;margin-top:7px}.chapter-toggle{grid-column:3;grid-row:1/3;color:var(--gold);transition:transform .3s}details[open] .chapter-toggle{transform:rotate(45deg)}#curriculum details[open] summary{padding-bottom:15px}.chapter-list{padding:0 25px 22px 80px;font-size:14px;color:var(--muted)}.chapter-list p{margin-bottom:8px}.chapter-list .ritual-tag{margin:16px 0 0;color:var(--gold);font-size:14px;border-top:1px solid #d9c7a54d;padding-top:12px}.ritual-aside{position:sticky;top:35px;overflow:hidden;min-height:670px}.ritual-aside>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ritual-aside:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 38%,#3e2a13eb 100%)}.ritual-aside>div{position:absolute;bottom:0;left:0;right:0;padding:40px 30px;color:#fff8e8;z-index:1}.ritual-aside .eyebrow{color:#e1c790;font-size:14px}.ritual-aside h3{font-size:36px}.ritual-aside em{color:#e7c788}.ritual-aside p:last-child{font-size:14px;color:#e8d8bc;margin:0}.platform-section{background:#eee3ce;border-block:1px solid #dbccaf}.platform{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.platform-visual{position:relative;min-height:480px}.platform-visual>img{width:100%;height:480px;object-fit:cover;border-radius:3px}.platform-copy>p:not(.eyebrow){color:#6e5d46}.platform-seal{width:172px;height:172px;position:absolute;bottom:-40px;right:-35px;background:#fbf6e9;border-radius:50%;display:grid;place-items:center;box-shadow:0 12px 30px #74532120}.platform-seal>span{position:absolute;inset:7px;color:#b39350;opacity:.6}.platform-seal p{text-align:center;margin:0;font-size:14px;line-height:1.8;letter-spacing:.1em;background:#fbf6e9b8;z-index:1;padding:10px}.platform-seal strong{font-family:var(--serif);font-size:24px;font-weight:400;letter-spacing:-.03em}.checks{list-style:none;padding:0;margin:25px 0 32px;display:grid;gap:12px;font-size:14px}.checks li{display:flex;gap:12px;align-items:center}.checks .icon{width:17px;height:17px;color:var(--gold)}.guide{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.guide-photo{position:relative}.guide-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;box-shadow:0 20px 60px #916e2520}.portrait-caption{display:block;margin-top:18px;text-align:center;color:#8f7348;font-size:14px;letter-spacing:.2em}.guide-copy h2{font-size:clamp(42px,4.8vw,67px)}.guide-copy>p:not(.eyebrow){color:var(--muted)}.guide-copy>p.lead{font-size:19px;color:#59452e}.guide-copy blockquote{margin:25px 0;padding-left:22px;border-left:1px solid var(--gold-bright);font-family:var(--serif);font-size:24px;line-height:1.5;font-style:italic;color:var(--gold)}.guide-logo{width:115px;height:115px;border-radius:50%;clip-path:circle(48%);margin-top:35px}.expansion{padding-top:25px;text-align:center}.expansion-heading>span{display:block;width:115px;height:115px;margin:0 auto 30px;color:#b39350}.expansion-heading .eyebrow{justify-content:center}.expansion-copy{max-width:810px;margin:28px auto;font-size:16px;color:var(--muted)}.sales-depth{max-width:800px;margin:35px auto;border:1px solid var(--line);text-align:left}.sales-depth summary{display:flex;align-items:center;justify-content:space-between;padding:22px 25px;font-size:15px;gap:20px}.sales-depth .prose{padding:0 26px 10px;color:var(--muted);font-size:15px}.sales-depth[open] summary .icon,.faq details[open] summary .icon{transform:rotate(45deg)}.words{display:flex;align-items:center;justify-content:center;gap:26px;padding-top:18px;color:#9a783c;font-family:var(--serif);font-size:25px;font-style:italic}.words i{width:4px;height:4px;background:#b89860;transform:rotate(45deg)}.enrollment{display:grid;grid-template-columns:1fr 1fr;min-height:690px;background:linear-gradient(130deg,#eee0c5,#faf4e7);border-block:1px solid var(--line)}.enrollment-photo{position:relative;min-width:0}.enrollment-photo img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:42% center}.enrollment-content{padding:68px 50px;text-align:center;align-self:center}.enrollment-content .eyebrow{justify-content:center}.enrollment-content h2{font-size:clamp(36px,3.8vw,54px)}.enrollment-content>p{color:var(--muted);font-size:15px}.price{border-block:1px solid #cbb18166;padding:22px 0;margin:26px auto;width:min(345px,100%)}.price>span{font-size:14px;letter-spacing:.18em;color:var(--gold)}.price strong{display:block;font-family:var(--serif);font-size:63px;line-height:1.15;font-weight:400;color:#7c531f;margin:8px 0;letter-spacing:-.045em}.price strong small{font-size:25px;letter-spacing:0}.price p{font-size:14px;color:var(--muted);margin:0}.enrollment-content .button{min-width:285px}.enrollment-content .payment-note{font-size:14px;margin:23px auto 0;line-height:1.75;max-width:390px}.faq{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.faq>div:last-child{border-top:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 0;font-size:15px;line-height:1.5}.faq summary .icon{width:17px;height:17px;color:var(--gold)}.faq details>p{font-size:14px;color:var(--muted);margin:0;padding:0 25px 22px 0}footer{background:#eee3cf;padding:55px max(32px,calc((100vw - 1280px)/2)) 0;border-top:1px solid var(--line)}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:45px;padding-bottom:38px}.footer-main>p{font-family:var(--serif);font-size:28px;line-height:1.3;margin:0}.footer-main>div{display:grid;gap:12px;font-size:14px;min-width:160px}.footer-main>div a{display:flex;justify-content:space-between;gap:15px}.footer-main>div .icon{width:16px;height:16px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c7b49175;padding:24px 0;font-size:14px;color:#80694b}.whatsapp-float{position:fixed;right:26px;bottom:24px;z-index:15;width:55px;height:55px;border:1px solid #e6c782;background:linear-gradient(135deg,#af823b,#795018);border-radius:50%;display:grid;place-items:center;color:#fff8e5;box-shadow:0 7px 20px #4e340c38;transition:transform .25s}.whatsapp-float:hover{transform:translateY(-4px)}.whatsapp-float .icon{width:26px;height:26px}.geometry{width:100%;height:100%;display:block}.geometry.slow{animation:orbit 100s linear infinite}.geometry.reverse{animation-direction:reverse}.js-reveal .reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s ease}.js-reveal .reveal.visible{opacity:1;transform:none}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes scene-arrive{from{transform:scale(1.035);opacity:.7}to{transform:scale(1);opacity:1}}@keyframes content-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
/* Sign in — the same photographic world, with a quiet form surface. */
.auth-layout{display:grid;grid-template-columns:1.08fr 1fr;min-height:calc(100svh - 132px)}.auth-art{position:relative;isolation:isolate;overflow:hidden;min-height:710px;display:flex;flex-direction:column;justify-content:flex-end;padding:48px}.auth-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 26%;z-index:-2}.auth-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#3a2814d9 100%);z-index:-1}.auth-art h1{font-size:clamp(44px,4.1vw,62px);color:#fff9ed;max-width:510px}.auth-art h1 em{color:#efd6a5}.auth-art .eyebrow{color:#ead2a3}.auth-art>p:last-child{color:#f2e4c9;margin:0;font-size:14px}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:65px 55px;background:radial-gradient(ellipse at 100% 10%,#e6ce9e3b,transparent 55%),var(--paper)}.auth-card{width:min(430px,100%)}.auth-emblem{width:85px;height:85px;color:#b2904c;margin-bottom:28px}.auth-card h2{font-size:43px;margin-bottom:16px}.auth-card>.muted{font-size:14px;margin-bottom:30px}.auth-card .eyebrow{font-size:14px;margin-bottom:18px}.auth-card .button[type=submit]{width:100%;margin-top:26px}.auth-card>.text-link{margin-top:10px;font-size:14px}.auth-footnote{margin-top:30px;font-size:14px;color:var(--muted)}.auth-footnote .text-link{font-size:14px}label{display:block;font-size:14px;font-weight:550;margin:22px 0 8px;color:#665036}input,textarea,select{width:100%;padding:13px 15px;color:var(--ink);border:1px solid #d3c2a4;border-radius:4px;background:var(--ivory);font-size:16px;line-height:1.5;transition:border-color .2s,box-shadow .2s}input:hover,textarea:hover,select:hover{border-color:#b99b67}input:focus,textarea:focus,select:focus{outline:none;border-color:#a57832;box-shadow:0 0 0 3px #c8a55d20}input::placeholder,textarea::placeholder{color:#aa967b;font-size:14px}textarea{resize:vertical;min-height:120px}.password-wrap{position:relative}.password-wrap input{padding-right:80px}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--gold);font-size:14px;min-height:40px;padding:6px 12px}.status{font-size:14px;margin:14px 0 0;line-height:1.6;overflow-wrap:anywhere}.status:empty{display:none}.status.success{color:#496442}.status.error{color:#a1362a;background:#fff1e9;padding:12px;border:1px solid #eacabb;border-radius:3px}
/* Aula and administration. */
.app-page{background:#f5efe3}.app-header{height:113px}.app-header .brand img{width:90px;height:90px}.app-header .brand>span{font-size:21px}.app-header-right{display:flex;gap:12px;align-items:center}.app-container{width:min(1320px,calc(100% - 80px));margin:38px auto 75px}.loading{min-height:calc(100svh - 140px);display:grid;place-content:center;text-align:center;color:var(--gold);font-family:var(--serif);font-size:25px;background:linear-gradient(#fbf6e9ed,#fbf6e9db),url('sanctuary-light-v2.svg') center/cover}.app-title{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:28px}.app-title h1{font-size:50px;margin-bottom:12px}.app-title p:last-child{font-size:14px;color:var(--muted);margin:0}.app-banner{position:relative;isolation:isolate;min-height:275px;padding:44px;border:1px solid #dfcba5;overflow:hidden;border-radius:5px;margin-bottom:0}.app-banner>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.app-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fbf4e6f5 0%,#fbf4e6bb 39%,#fbf4e611 76%);z-index:-2}.app-banner>div{max-width:590px}.app-banner .eyebrow{font-size:14px}.app-banner h1{font-size:50px}.app-banner .text-link{font-size:14px;position:relative;background:#faf1dfcc;padding:10px 14px;border-radius:3px;flex:none}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #dfccb0;border-radius:5px;background:#dfccb0;margin:24px 0 34px;overflow:hidden}.stat{background:#fdf9ef;position:relative;padding:24px 28px;display:flex;align-items:center;gap:20px}.stat strong{font-family:var(--serif);color:var(--gold);font-size:34px;font-weight:400;letter-spacing:-.035em;line-height:1.1}.stat>span{font-size:14px;color:var(--muted);line-height:1.5}.stat-icon{margin-left:auto!important;color:#b3955d}.stat-icon .icon{width:25px;height:25px}.app-tabs{display:flex;gap:30px;border-bottom:1px solid #d8c6a7;margin-bottom:28px;overflow:auto;scrollbar-width:thin}.app-tabs button{padding:15px 6px;background:none;border:0;border-bottom:2px solid transparent;font-size:14px;color:#8b7657;white-space:nowrap;display:flex;align-items:center;gap:9px}.app-tabs button .icon{width:17px;height:17px}.app-tabs button[aria-pressed=true]{color:#78531b;border-bottom-color:#a67c38;font-weight:650}.app-tabs button:hover{color:#78531b}.notice{border:1px solid #d8c29a;background:#f5e9d1;color:#7c6237;padding:16px 22px;margin-bottom:24px;font-size:14px;border-radius:4px}.course-layout{display:grid;grid-template-columns:295px minmax(0,1fr);gap:32px}.course-sidebar{align-self:start;background:#fcf8ee;border:1px solid #ddcbae;border-radius:5px;overflow:hidden}.sidebar-cover{height:125px;position:relative;overflow:hidden}.sidebar-cover img{width:100%;height:100%;object-fit:cover}.sidebar-title{padding:24px 22px 18px}.course-sidebar h2{font-size:26px;letter-spacing:-.025em;margin-bottom:10px}.course-sidebar p{margin:0}.progress-track{height:4px;background:#e5d5b5;margin:20px 0 2px;overflow:hidden;border-radius:4px}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,#ad7b26,#d8b86e);transition:width .6s}.lesson-link{display:grid;grid-template-columns:27px 1fr 14px;gap:10px;width:100%;text-align:left;padding:14px 18px;border:0;border-top:1px solid #e5d8bf8c;background:transparent;color:#79664e;font-size:14px;line-height:1.5;transition:background .2s}.lesson-link>span:first-child{color:#ad8c52;font-family:var(--serif);font-size:18px;align-self:start;line-height:1.3}.lesson-link.current{background:#eadcc0;box-shadow:inset 3px 0 #9a702f;color:#503a1c}.lesson-link:hover{background:#f0e5ce}.lesson-link.locked{color:#b1a087}.lesson-link.ritual{background:#f3ebd9}.lesson-link.ritual.current{background:#e8d7b4}.lesson-link.ritual>span:first-child{font-size:14px;font-family:var(--sans);padding-top:2px}.check{color:#967030;align-self:center}.check .icon{width:14px;height:14px}.reader-toolbar{display:flex;align-items:center;justify-content:space-between;padding:0 0 14px;min-height:38px;color:var(--muted);font-size:14px}.reader-toolbar>div{display:flex;gap:8px;margin-left:auto}.reader-toolbar button{border:1px solid #d0bd98;padding:5px 10px;border-radius:3px;background:#fcf8ee;color:#7f5c28;min-width:40px;min-height:35px;font-size:14px}.mobile-route{display:none}.reading{background:#fffcf7;border:1px solid #e4d6bb;border-radius:5px;box-shadow:var(--shadow);padding:42px 48px;overflow:hidden;scroll-margin-top:25px}.reading-scene{margin:-42px -48px 36px;height:215px;position:relative;overflow:hidden}.reading-scene img{width:100%;height:100%;object-fit:cover;object-position:center 57%}.reading-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 70%,#fffcf755)}.reading .eyebrow{font-size:14px}.reading h1{font-size:42px;margin-bottom:32px;line-height:1.16}.lesson-body{font-family:var(--serif);font-size:19px;line-height:1.9;color:#514534;overflow-wrap:anywhere}.lesson-body p{margin:0 0 1.5em}.source{font-size:14px;line-height:1.65;color:#a08965;border-top:1px solid #e8deca;padding-top:20px;margin:36px 0;overflow-wrap:anywhere}.reflection{background:#f5eedf;margin:35px -18px 30px;padding:30px 28px;border:1px solid #e5d5b5;border-radius:4px}.reflection h2{font-size:28px;margin-bottom:14px}.reflection>p{font-size:14px;color:var(--muted)}.reflection label{font-size:14px}.reflection textarea{font-family:var(--serif);font-size:17px;background:#fffcf6}.reflection .button{margin-top:17px}.reading-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.reading-actions .button{font-size:14px;padding:13px 20px;min-height:49px}.resources-intro{display:grid;grid-template-columns:1fr 290px;align-items:center;background:#fdf8ed;border:1px solid var(--line);margin-bottom:30px;overflow:hidden;border-radius:5px}.resources-intro>div{padding:30px}.resources-intro h2{font-size:35px}.resources-intro p{color:var(--muted);font-size:14px;margin-bottom:0}.resources-intro img{height:200px;width:100%;object-fit:cover}.resources-list{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.resource-card{position:relative;display:block;width:100%;padding:0;border:1px solid #e2d1b2;border-radius:4px;overflow:hidden;background:#fffbf2;text-align:left;color:var(--ink);transition:transform .25s,box-shadow .25s}.resource-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.resource-card>img{width:100%;height:150px;object-fit:cover}.resource-card>div{padding:25px}.resource-card h3{font-size:27px;line-height:1.2;margin:12px 0 24px}.resource-card .resource-type{font-size:14px;color:var(--gold);letter-spacing:.1em}.resource-card .resource-open{font-size:14px;color:var(--gold);display:flex;align-items:center;justify-content:space-between}.resource-card .resource-open .icon{width:17px}.panel{background:#fffcf6;border:1px solid #dfcfb3;padding:38px;border-radius:5px;box-shadow:var(--shadow)}.panel h2{font-size:35px;letter-spacing:-.03em}.panel>.muted{font-size:14px}.account-card{max-width:650px}.account-card>img{width:calc(100% + 76px);max-width:none;height:180px;object-fit:cover;margin:-38px -38px 30px}.account-card form{max-width:440px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.toolbar input{max-width:350px;font-size:14px}.table-wrap{border:1px solid #dcc9a7;border-radius:5px;overflow:auto;background:#fffbf3}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:14px;letter-spacing:.1em;font-weight:650;color:#907044;background:#f0e5ce;padding:16px 20px}td{font-size:14px;padding:20px;border-top:1px solid #e6d9c1}td .muted{font-size:14px}td .button{margin-right:8px;font-size:14px;padding:8px 12px;min-height:36px}td:last-child .button:last-child{margin:0}.badge{padding:5px 10px;border:1px solid #c5ceb4;background:#eef2e4;border-radius:20px;font-size:14px;color:#53633c}.badge.off{background:#f5e8de;color:#986b50;border-color:#dec7b6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.form-grid .full{grid-column:1/-1}.form-grid small{display:block;font-size:14px;margin-top:8px}.inline-check{display:flex;align-items:center;gap:10px;margin:23px 0}.inline-check input{width:17px;height:17px;accent-color:var(--gold);flex:none}.empty{padding:45px;text-align:center;background:#fcf7eb;color:var(--muted);font-size:14px;border:1px dashed #d0bb97;margin-top:20px}.dialog{border:1px solid #c5a56b;border-radius:6px;background:var(--paper);color:var(--ink);width:min(520px,calc(100% - 32px));padding:35px;box-shadow:0 20px 90px #291c1266;max-height:90svh}.dialog::backdrop{background:#2b201366;backdrop-filter:blur(5px)}.dialog h2{font-size:36px}.dialog .muted{font-size:14px;overflow-wrap:anywhere}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.error-page{min-height:100svh;display:grid;place-content:center;text-align:center;padding:35px;background:linear-gradient(#fcf5e6ce,#fcf5e6f0),url('sanctuary-light-v2.svg') center/cover}.error-page>img{width:150px;clip-path:circle(48%);margin:0 auto 30px}.error-page .eyebrow{justify-content:center}.error-page .button{justify-self:center}
/* Responsive composition: the portrait gets its own space on small screens. */
@media(min-width:1600px){.hero{min-height:820px}.hero-content{padding-top:105px}.hero h1{font-size:102px}.hero-content .eyebrow{font-size:14px}}
@media(max-width:1180px){.header{padding:12px 30px;gap:20px}.header nav{gap:20px}.brand>span{font-size:19px}.brand img{width:96px;height:96px}.header{height:120px}.header .button{font-size:14px;padding:12px 17px}.section{width:calc(100% - 72px);padding:80px 0}.hero-content{width:calc(100% - 72px)}.hero{min-height:680px}.hero-content{padding:60px 0 100px}.hero h1{font-size:76px;max-width:540px}.hero-actions{gap:20px}.hero-description{font-size:17px;max-width:365px}.hero-actions .text-link{font-size:14px}.hero-actions .button{padding:16px 23px}.hero-caption{padding-inline:36px}.experience-ribbon{gap:27px}.intro,.guide,.platform,.faq{gap:55px}.intro-visual{min-height:590px}.intro-copy>p:not(.eyebrow){font-size:14px}.intro-copy>p.lead{font-size:17px}.feature-grid{gap:22px}.feature-copy h3{font-size:27px}.curriculum-layout{gap:35px;grid-template-columns:1.5fr 1fr}.ritual-aside{min-height:650px}.enrollment-content{padding:55px 30px}.app-container{width:calc(100% - 56px)}.app-banner{padding:35px}.app-banner h1{font-size:43px}.app-banner>div{max-width:470px}.app-banner>.text-link{align-self:flex-start}.course-layout{grid-template-columns:255px minmax(0,1fr);gap:22px}.reading{padding:35px}.reading-scene{margin:-35px -35px 30px}.reading h1{font-size:35px}.stat{gap:14px;padding:22px}.stat strong{font-size:29px}.stat-icon{display:none!important}.footer-main{gap:30px}.footer-main>p{font-size:23px}.auth-layout{min-height:calc(100svh - 120px)}.auth-art{padding:35px}.auth-form-side{padding:45px 35px}.auth-card h2{font-size:37px}}
@media(max-width:950px){.header nav{display:none}.hero h1{font-size:68px;max-width:470px}.hero-description{max-width:335px;font-size:16px}.hero-content .eyebrow{font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-signature{margin-top:24px}.hero{min-height:700px}.hero-scene img{object-position:57% center}.hero-wash{background:linear-gradient(90deg,#f7eddded,#f7eddd95 33%,#f7eddd05 61%)}.experience-ribbon{gap:24px}.experience-ribbon>span{display:none}.intro,.guide{gap:40px}.intro-visual{min-height:650px}.intro-copy h2{font-size:39px}.image-note{padding:24px;right:-15px}.image-note p{font-size:24px}.feature-copy h3{font-size:26px}.feature-copy>p:last-child{font-size:14px}.feature-image{aspect-ratio:.87}.curriculum-layout{grid-template-columns:1.6fr 1fr;gap:25px}#curriculum summary{font-size:19px;grid-template-columns:46px 1fr 20px;gap:12px}.chapter-list{padding-left:58px}.ritual-aside h3{font-size:29px}.ritual-aside>div{padding:30px 22px}.platform{gap:48px}.platform-visual>img{height:480px}.platform-copy h2{font-size:39px}.platform-seal{width:138px;height:138px;right:-25px}.platform-seal strong{font-size:21px}.guide-copy h2{font-size:45px}.guide-copy>p.lead{font-size:17px}.guide-copy>p{font-size:14px}.guide-copy blockquote{font-size:21px}.guide-logo{width:90px;height:90px;margin-top:22px}.words{gap:17px;font-size:22px}.faq{gap:50px;grid-template-columns:1fr 1.15fr}.faq h2{font-size:40px}.footer-main{flex-wrap:wrap}.footer-main>p{margin-left:auto}.footer-main>div{display:flex;gap:25px}.footer-bottom{font-size:14px}.app-title{flex-wrap:wrap}.app-banner{min-height:290px;gap:15px}.app-banner h1{font-size:41px}.app-banner>.text-link{padding:0;background:none;border-radius:0}.stats{margin-bottom:22px}.stat{display:block}.stat strong{display:block;margin-bottom:7px}.course-layout{grid-template-columns:225px minmax(0,1fr);gap:20px}.lesson-link{font-size:14px;grid-template-columns:22px 1fr 12px;gap:8px;padding:13px}.course-sidebar h2{font-size:23px}.sidebar-title{padding:21px 16px}.reading{padding:28px}.reading-scene{margin:-28px -28px 26px;height:190px}.reading h1{font-size:31px}.reflection{padding:22px;margin-inline:-10px}.resources-list{grid-template-columns:repeat(2,1fr)}.toolbar{flex-wrap:wrap}.toolbar h2{width:100%}.toolbar input{max-width:none;flex:1}.auth-layout{grid-template-columns:1fr 1fr}.auth-art{padding:28px;min-height:680px}.auth-art h1{font-size:42px}.auth-form-side{padding:38px 28px}.auth-card h2{font-size:35px}.auth-emblem{width:65px;height:65px}}
@media(max-width:700px){html{scroll-padding-top:30px}.header{height:106px;padding:9px 18px;gap:10px}.brand{gap:10px}.brand img{width:83px;height:83px}.brand>span{font-size:17px;letter-spacing:.025em}.brand small{font-size:14px;letter-spacing:.15em;margin-top:7px}.header>.button{font-size:14px;gap:7px;padding:10px 12px;min-height:42px}.header>.button .icon{width:14px;height:14px}.section{width:calc(100% - 44px);padding:64px 0}.eyebrow{font-size:14px;letter-spacing:.14em;margin-bottom:21px}h2{font-size:39px}.hero{display:flex;flex-direction:column;min-height:0;padding-top:0;overflow:hidden;background:#f6eddf}.hero-content{width:100%;padding:36px 24px 28px;order:0;animation:content-arrive 1s .1s both;background:linear-gradient(120deg,#f8f0e2,#efe0c4)}.hero-content .eyebrow{font-size:14px;letter-spacing:.12em;margin-bottom:22px}.hero .hero-scene{position:relative;z-index:0;order:1;height:460px;display:block}.hero-scene img{object-position:center 23%;animation:none}.hero-wash{display:none}.hero h1{font-size:66px;line-height:.99;letter-spacing:-.055em;max-width:none;margin-bottom:20px}.hero h1 em{font-size:.64em;line-height:1.2;margin-top:10px;letter-spacing:-.05em}.hero-description{font-size:15px;max-width:340px;line-height:1.65;margin-bottom:22px}.hero-actions{display:flex;flex-direction:row;align-items:center;gap:20px;margin:0}.hero-actions .button{font-size:14px;min-height:51px;padding:14px 21px}.hero-actions .text-link{font-size:14px;gap:8px;max-width:120px;border:0}.hero-actions .text-link .icon{width:16px}.hero-signature{margin-top:22px;gap:10px;font-size:14px}.hero-signature strong{font-size:14px}.signature-mark{width:35px;height:35px}.hero-caption{position:relative;order:2;padding:15px 22px;font-size:14px;gap:20px;background:#eadabe}.experience-ribbon{gap:20px;padding:24px 16px;font-size:14px;justify-content:space-evenly}.experience-ribbon div{gap:7px;line-height:1.4;max-width:115px}.experience-ribbon strong{font-size:30px}.experience-ribbon i{height:25px}.intro{grid-template-columns:1fr;gap:56px}.intro-visual{min-height:440px;max-width:550px;width:calc(100% - 14px);margin:0}.intro-visual>img{border-radius:110px 110px 2px 2px}.intro-visual:after{inset:-8px 10px 10px -8px;border-radius:118px 118px 2px 2px}.image-note{bottom:-25px;right:-14px;padding:24px 27px}.image-note .eyebrow{font-size:14px}.image-note p{font-size:27px}.intro-copy h2{font-size:41px}.intro-copy>p:not(.eyebrow){font-size:15px}.intro-copy>p.lead{font-size:18px}.features{padding-top:8px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:38px}.feature-grid{grid-template-columns:1fr;gap:42px}.feature-image{aspect-ratio:1.25}.visual-feature:nth-child(2) .feature-image img{object-position:center 58%}.feature-copy{padding:23px 2px 0}.feature-copy h3{font-size:32px}.feature-copy>p:last-child{font-size:15px}.feature-copy .eyebrow{font-size:14px;margin-bottom:10px}.quote-band{padding:45px 24px;min-height:360px}.quote-flower{width:70px;height:70px;margin-bottom:20px}.quote-band blockquote{font-size:29px;line-height:1.35}.quote-band blockquote br{display:none}.quote-band .eyebrow{font-size:14px}.split{display:block}.split>p{max-width:none;margin-top:23px;font-size:14px}.curriculum-layout{grid-template-columns:1fr;gap:35px}#curriculum summary{font-size:22px;padding:22px 0;grid-template-columns:52px 1fr 20px;gap:12px}.chapter-list{padding-left:64px;font-size:14px}.chapter-ritual{font-size:14px;margin-top:7px}.ritual-aside{position:relative;top:0;min-height:400px}.ritual-aside>img{object-position:center 58%}.ritual-aside>div{padding:28px}.ritual-aside h3{font-size:35px}.ritual-aside:after{background:linear-gradient(transparent,#3e2a13db)}.platform{grid-template-columns:1fr;gap:67px}.platform-visual{min-height:0;padding-right:15px}.platform-visual>img{height:360px}.platform-seal{width:135px;height:135px;bottom:-37px;right:0}.platform-copy h2{font-size:42px}.platform-copy>p:not(.eyebrow){font-size:15px}.guide{grid-template-columns:1fr;gap:36px}.guide-photo{max-width:500px;width:100%;margin:auto}.guide-copy h2{font-size:51px}.guide-copy>p.lead{font-size:19px}.guide-copy>p{font-size:15px}.guide-copy blockquote{font-size:25px}.guide-logo{width:120px;height:120px;margin-top:28px}.expansion{padding-top:0}.expansion-heading>span{width:92px;height:92px;margin-bottom:22px}.expansion-heading h2{font-size:35px;line-height:1.2}.expansion-copy{font-size:15px}.sales-depth{margin-top:28px}.sales-depth summary{padding:20px;font-size:14px}.sales-depth .prose{padding:0 20px 6px;font-size:14px}.words{flex-wrap:wrap;column-gap:14px;row-gap:8px;font-size:23px}.words i{width:3px;height:3px}.enrollment{grid-template-columns:1fr}.enrollment-photo{height:330px}.enrollment-content{padding:44px 23px 49px}.enrollment-content h2{font-size:39px}.enrollment-content>p{font-size:14px}.price strong{font-size:65px}.enrollment-content .button{width:100%;min-width:0;max-width:340px}.enrollment-content .payment-note{font-size:14px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:39px}.faq summary{font-size:14px;padding:20px 0}.faq details>p{font-size:14px}footer{padding:40px 24px 0}.footer-main{gap:26px;flex-direction:column;align-items:flex-start;padding-bottom:26px}.footer-main>p{margin:0;font-size:27px}.footer-main .brand img{width:98px;height:98px}.footer-main .brand>span{font-size:21px}.footer-main .brand small{font-size:14px}.footer-main>div{display:flex;gap:22px;font-size:14px;min-width:0}.footer-main>div a{gap:8px}.footer-main>div .icon{width:13px}.footer-bottom{flex-direction:column;gap:8px;padding:22px 0 35px}.whatsapp-float{width:49px;height:49px;right:18px;bottom:18px}.auth-layout{display:flex;flex-direction:column;min-height:calc(100svh - 106px)}.auth-art{min-height:330px;padding:30px;order:1}.auth-art>img{object-position:center 29%}.auth-art:after{background:linear-gradient(90deg,#4830198c,transparent 78%)}.auth-art h1{font-size:36px;max-width:300px;margin-bottom:18px}.auth-art .eyebrow{font-size:14px}.auth-art>p:last-child{font-size:14px}.auth-form-side{padding:35px 28px 48px}.auth-card{max-width:450px}.auth-emblem{display:none}.auth-card .eyebrow{font-size:14px;margin-bottom:18px}.auth-card h2{font-size:37px}.auth-card>.muted{margin-bottom:25px}.auth-card>.text-link{font-size:14px}.auth-footnote{margin-bottom:0}.header>.text-link{font-size:14px;text-align:right;max-width:105px}.app-header{height:auto;min-height:104px;flex-wrap:wrap;padding:10px 20px 15px;row-gap:6px}.app-header .brand img{width:78px;height:78px}.app-header .brand>span{font-size:18px}.app-header .brand small{font-size:14px}.app-header-right{gap:8px;margin-left:auto}.app-header-right .button{font-size:14px;padding:9px 11px;min-height:37px}.app-container{width:calc(100% - 32px);margin:20px auto 45px}.app-banner{min-height:300px;padding:28px 24px;align-content:space-between;gap:20px}.app-banner>img{object-position:63% center}.app-banner:after{background:linear-gradient(90deg,#fbf4e6ef,#fbf4e6c7 45%,#fbf4e61a)}.app-banner .eyebrow{font-size:14px;max-width:200px}.app-banner h1{font-size:37px;max-width:290px}.app-banner p:last-child{font-size:14px;max-width:260px}.app-banner>.text-link{font-size:14px;background:#fff8e7ba;padding:7px 10px}.stats{gap:1px;margin:14px 0 22px}.stat{padding:18px 10px;text-align:center}.stat strong{font-size:24px}.stat>span{font-size:14px;line-height:1.4;display:block}.app-tabs{gap:22px;margin-bottom:22px}.app-tabs button{font-size:14px;padding:13px 2px;gap:7px}.app-tabs button .icon{width:14px;height:14px}.course-layout{display:flex;flex-direction:column;gap:25px}.course-sidebar{width:100%;overflow:hidden}.sidebar-cover{height:100px}.sidebar-title{padding:20px}.course-sidebar h2{font-size:26px}.progress-track{margin-top:15px}#lesson-nav{max-height:245px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#bfa575 #f5ead3}.lesson-link{font-size:14px;padding:13px 18px;grid-template-columns:27px 1fr 14px;gap:10px}.mobile-route{display:inline-flex;font-size:14px}.reading{padding:26px 23px}.reading-scene{margin:-26px -23px 25px;height:175px}.reading h1{font-size:32px;margin-bottom:26px}.reading .eyebrow{font-size:14px}.lesson-body{font-size:19px;line-height:1.9}.reflection{margin:28px -8px;padding:22px 18px}.reflection h2{font-size:27px}.reflection>p{font-size:14px}.reflection label{font-size:14px}.reflection textarea{font-size:17px}.reading-actions{flex-direction:column;gap:12px}.reading-actions .button{width:100%;font-size:14px}.source{font-size:14px}.resources-intro{grid-template-columns:1fr}.resources-intro img{height:160px;order:-1}.resources-intro>div{padding:25px}.resources-intro h2{font-size:30px}.resources-list{grid-template-columns:1fr;gap:22px}.resource-card>img{height:180px}.resource-card h3{font-size:30px}.panel{padding:25px}.panel h2{font-size:31px}.account-card>img{margin:-25px -25px 25px;width:calc(100% + 50px);height:160px}.form-grid{grid-template-columns:1fr}.panel>.muted{font-size:14px}.toolbar{gap:12px}.toolbar h2{font-size:27px!important}.toolbar input{width:100%;min-width:0}.toolbar .button{padding:12px;font-size:14px}.notice{font-size:14px;padding:16px}.empty{padding:25px;font-size:14px}.dialog{padding:27px}.dialog h2{font-size:31px}.dialog-actions .button{font-size:14px;padding:12px}.error-page h1{font-size:53px}}
@media(max-width:380px){.header{padding-inline:12px;gap:7px}.brand img{width:73px;height:73px}.brand>span{font-size:15px}.brand small{font-size:14px}.header>.button{font-size:14px;padding:10px}.hero-content{padding-inline:20px}.hero h1{font-size:58px}.hero h1 em{font-size:.64em}.hero-actions{gap:14px}.hero-actions .button{padding:14px 17px;font-size:14px}.hero-actions .text-link{font-size:14px}.experience-ribbon{gap:12px}.experience-ribbon div{font-size:14px}.experience-ribbon strong{font-size:27px}.app-header .brand>span{font-size:16px}.app-header-right{gap:6px}.app-tabs{gap:16px}.app-tabs button{font-size:14px}.footer-main .brand>span{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-reveal .reveal{opacity:1;transform:none}}
@media print{.header,.app-tabs,.course-sidebar,.reader-toolbar,.reading-actions,.reflection,.app-banner,.stats,.source{display:none!important}.app-container{margin:0;width:100%}.course-layout{display:block}.reading{border:0;box-shadow:none;padding:0}.reading-scene{display:none}.lesson-body{color:black;font-size:12pt}.js-reveal .reveal{opacity:1;transform:none}}

/* Revision: readable supporting copy and clearly drawn sacred geometry. */
.geometry circle,.geometry path{vector-effect:non-scaling-stroke;stroke-width:1.05px}
.hero-signature{font-size:15px;gap:18px;line-height:1.65;max-width:560px}
.hero-signature strong{font-size:15px}
.signature-mark{width:74px;height:74px;flex:none;color:var(--gold)}
.hero-caption{font-size:14px;letter-spacing:.1em;line-height:1.6;gap:24px;padding-block:20px}
.hero-content{padding-bottom:130px}
.portrait-caption{font-size:15px;letter-spacing:.12em;line-height:1.7}
.chapter-ritual{font-size:14px;letter-spacing:.06em;line-height:1.6;margin-top:12px}
.chapter-list .ritual-tag{font-size:15px}
.price>span{font-size:15px;letter-spacing:.1em}
.enrollment-content .payment-note{font-size:16px;line-height:1.75;margin-top:25px}
.brand small{font-size:12px;white-space:normal;letter-spacing:.1em;line-height:1.45}
.footer-main .brand small{font-size:14px;max-width:265px;line-height:1.5;letter-spacing:.06em}
.footer-bottom{font-size:14px;line-height:1.65}
.quote-flower{width:145px;height:145px;color:var(--gold)}
.expansion-heading>span{width:190px;height:190px;color:var(--gold)}
.auth-emblem{width:115px;height:115px;color:var(--gold)}
.platform-seal{width:220px;height:220px;border-radius:50%;overflow:hidden;isolation:isolate;bottom:-45px;right:-30px}
.platform-seal>span{inset:12px;opacity:.35;color:var(--gold);pointer-events:none}
.platform-seal p{position:relative;max-width:170px;margin:0;padding:0;background:none;font-size:14px;line-height:1.4;letter-spacing:.055em}
.platform-seal strong{display:block;font-size:32px;line-height:1.15;margin-top:10px;letter-spacing:-.025em}
.access-retry{display:flex;margin:18px auto 60px}
.panel-retry{margin:18px 0 25px}
.app-page:has(#access-retry:not([hidden])) .loading{min-height:330px;padding:45px 24px;font-size:25px}
@media(max-width:1180px){
 .hero-content .eyebrow{max-width:470px}
 .hero-caption{font-size:14px}
 .platform-seal{width:200px;height:200px;right:-20px}
}
@media(max-width:950px){
 .hero-content .eyebrow{max-width:390px;font-size:13px}
 .hero-signature{max-width:430px}
 .hero-signature strong{font-size:14px}
 .hero-signature{font-size:14px}
 .hero-description{max-width:355px}
 .hero-actions .text-link{font-size:14px}
 .platform-seal{width:185px;height:185px;right:-15px}
 .platform-seal p{max-width:150px}
 .platform-seal strong{font-size:30px}
 .footer-main .brand small{font-size:14px}
}
@media(max-width:700px){
 .header{height:auto;min-height:110px;flex-wrap:wrap;gap:14px;padding:14px 20px}
 .header .brand>span{font-size:18px;white-space:normal;line-height:1.3}
 .header .brand small{font-size:12px}
 .header>.button{font-size:14px;min-height:46px;margin-left:auto}
 .header>.text-link{font-size:14px;max-width:145px}
 .hero-content{padding:36px 24px 30px}
 .hero-content .eyebrow{font-size:13px;max-width:100%;letter-spacing:.1em}
 .hero-actions{gap:16px;flex-wrap:wrap}
 .hero-actions .button{font-size:14px;padding:15px 20px}
 .hero-actions .text-link{font-size:14px;max-width:125px}
 .hero-signature{font-size:15px;gap:14px;margin-top:26px;max-width:100%}
 .hero-signature strong{font-size:15px}
 .signature-mark{width:67px;height:67px}
 .hero-caption{flex-direction:column;justify-content:center;text-align:center;gap:6px;font-size:14px;letter-spacing:.075em;padding:19px 22px}
 .experience-ribbon{gap:12px;padding:22px 15px;align-items:center}
 .experience-ribbon div{font-size:14px;flex-direction:column;text-align:center;gap:6px;flex:1;max-width:125px}
 .experience-ribbon strong{font-size:34px}
 .experience-ribbon i{height:55px}
 .portrait-caption{font-size:14px;letter-spacing:.07em;line-height:1.7;margin-top:20px}
 .chapter-ritual{font-size:14px;letter-spacing:.035em;margin-top:10px}
 .chapter-list .ritual-tag{font-size:15px}
 .quote-flower{width:135px;height:135px}
 .expansion-heading>span{width:175px;height:175px;margin-bottom:26px}
 .platform{gap:90px}
 .platform-seal{width:190px;height:190px;bottom:-52px;right:0}
 .platform-seal p{font-size:14px;max-width:145px}
 .platform-seal strong{font-size:30px}
 .price>span{font-size:15px;line-height:1.6;letter-spacing:.09em}
 .price p{font-size:15px;line-height:1.65}
 .enrollment-content .payment-note{font-size:16px;line-height:1.7;max-width:345px}
 .footer-main .brand{max-width:100%;align-items:center}
 .footer-main .brand>span{min-width:0;white-space:normal;font-size:20px;line-height:1.3}
 .footer-main .brand img{width:90px;height:90px;flex:none}
 .footer-main .brand small{font-size:14px;letter-spacing:.03em;margin-top:8px;line-height:1.5}
 .footer-main>div{flex-wrap:wrap;font-size:14px;gap:17px 22px}
 .footer-bottom{font-size:14px;padding-bottom:82px}
 .app-header .brand small{font-size:12px}
 .app-header-right .button{font-size:14px;min-height:44px;padding:10px 14px}
 .app-tabs{gap:20px}
 .app-tabs button{font-size:14px}
 .stat>span{font-size:14px}
 .lesson-link{font-size:14px}
 .reader-toolbar>div{gap:10px}
 .auth-card>.text-link,.auth-footnote,.auth-footnote .text-link{font-size:14px}
 .reading-actions .button{font-size:14px}
 .source{font-size:14px}
}
@media(max-width:420px){
 .header>.brand{flex:1 0 100%;justify-content:center}
 .header>.button,.header>.text-link{margin:auto}
 .app-header-right{margin:auto}
 .hero-actions{gap:15px}
 .hero-actions .text-link{max-width:120px}
 .hero-signature{align-items:center;font-size:14px}
 .hero-signature strong{font-size:14px}
 .signature-mark{width:62px;height:62px}
 .experience-ribbon div{font-size:13px}
 .footer-main .brand>span{font-size:19px}
}

/* September 2026: precise branding, comfortable forms and participant management. */
.sales-page .header .brand img{width:114px;height:114px}
.sales-page .header .brand>span{font-size:27px;letter-spacing:.035em}
.sales-page .header .brand small{font-size:16px;letter-spacing:.13em}
.hero-signature{display:block;max-width:580px}
.hero-signature>span{display:block}
.hero-signature strong{display:inline-block;margin-top:5px}
.footer-main .brand>span{text-align:center;min-width:0}
.footer-main .brand .sanctuary-subtitle{max-width:none;font-size:16px;line-height:1.45;letter-spacing:.035em;text-transform:none;text-align:center}
.platform-seal{background:transparent;box-shadow:none;overflow:visible}
.platform-seal:before{content:'';position:absolute;inset:15px;border-radius:50%;background:#fbf6e9;box-shadow:0 12px 30px #74532120;z-index:-1}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.form-grid>*,form,fieldset,.password-wrap{min-width:0}
input,textarea,select{min-width:0;max-width:100%;box-sizing:border-box}
input[type=date]{display:block;appearance:none;-webkit-appearance:none;inline-size:100%;min-inline-size:0;max-inline-size:100%;min-height:52px;padding-inline:12px}
input[type=date]::-webkit-date-and-time-value{min-width:0;max-width:100%;text-align:left;line-height:1.5}
input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}
.participant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(310px,100%),1fr));gap:24px;list-style:none;padding:0;margin:0}
.participant-grid>li{min-width:0}
.participant-card{display:block;text-align:left;width:100%;height:100%;padding:28px;border:1px solid #d5bf96;border-radius:8px;background:linear-gradient(145deg,#fffdf7,#f9f0df);color:var(--ink);box-shadow:0 8px 32px #78551f0a;transition:border-color .2s,transform .2s,box-shadow .2s}
.participant-card:hover{border-color:#aa7d36;transform:translateY(-2px);box-shadow:0 12px 32px #78551f19}
.participant-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}
.participant-initial{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#e9d7b3;color:#785322;font-family:var(--serif);font-size:25px}
.participant-name{display:block;font-family:var(--serif);font-size:30px;line-height:1.25;font-weight:400;overflow-wrap:anywhere}
.participant-email{display:block;font-size:16px;color:var(--muted);overflow-wrap:anywhere;margin-top:7px}
.participant-progress{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:15px;color:#70542b;padding-block:20px}
.participant-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border-top:1px solid #dfcfaf;padding-top:17px;font-size:14px;color:var(--muted)}
.participant-dates b{display:block;color:var(--ink);font-weight:500;overflow-wrap:anywhere;margin-top:4px}
.participant-open{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;color:#80561e;font-size:16px;font-weight:650}
.participant-open>span{font-size:25px;line-height:1}
.participant-dialog{width:min(640px,calc(100% - 28px));max-height:90svh;overflow-y:auto;overscroll-behavior:contain;padding:32px}
.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}
.dialog-heading .eyebrow{font-size:14px;letter-spacing:.09em;margin:0}
.dialog-close{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid #d8c7a7;border-radius:50%;background:#fffaf0;color:#806132;font-size:28px;line-height:1}
.participant-dialog h2{margin:18px 0 8px;overflow-wrap:anywhere}
.participant-dialog #dialog-email{font-size:16px;margin-bottom:12px}
.participant-summary{font-size:14px;color:#7b6240;padding-bottom:22px;border-bottom:1px solid #dfcfae}
.participant-dialog fieldset{border:0;padding:0;margin:25px 0 30px;inline-size:100%}
.participant-dialog legend{font-family:var(--serif);font-size:25px;line-height:1.3;color:#624724}
.participant-dialog label{font-size:16px;margin-top:20px}
.participant-dialog .button{max-width:100%;width:100%;min-width:0;font-size:16px;white-space:normal;margin-top:15px}
.field-help{font-size:15px!important;line-height:1.6;color:var(--muted);margin:9px 0 0}
.manage-section{border-top:1px solid #dacaab;border-bottom:0;margin-top:28px;padding-top:8px}
.manage-section summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;font-size:17px;font-weight:600;color:#795522}
.manage-section[open] summary .icon{transform:rotate(45deg)}
.manage-section>p{font-size:15px}
.danger-zone summary{color:#974435}
.button.danger{background:#8b382f;color:#fffaf4;border-color:#8b382f;box-shadow:inset 0 1px #ffffff30}
.lesson-body h2{font-size:1.38em;line-height:1.35;letter-spacing:-.025em;color:#805820;margin:1.7em 0 .7em}
.lesson-body h2:first-child{margin-top:0}
.lesson-link>span:nth-child(2){overflow-wrap:anywhere}
.offer-includes{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 0;margin:22px auto;color:#795729;font-size:15px}
.offer-includes>span{padding:0 12px;border-right:1px solid #c4a770}
.offer-includes>span:last-child{border:0}
.offer-price{width:min(460px,100%);padding:24px 0;margin:25px auto}
.offer-price>span{font-size:15px;letter-spacing:.1em}
.previous-price{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px 12px;margin-top:15px;font-size:15px;color:#776044}
.previous-price del{font-size:24px;text-decoration-thickness:2px;text-decoration-color:#94641e}
.previous-price b{border:1px solid #a88240;border-radius:3px;background:#f7edda;padding:5px 10px;color:#7b5018;font-size:13px;letter-spacing:.06em}
.offer-price strong{font-size:clamp(65px,6.4vw,90px);margin:13px 0;color:#78501a;white-space:nowrap}
.offer-price strong small{font-size:.34em}
.offer-price p{font-size:16px}
.offer-clock{max-width:420px;margin:0 auto 24px}
.offer-clock>p:first-child{font-size:16px;line-height:1.6;color:#6d5333;margin-bottom:16px}
.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.countdown>div{background:linear-gradient(150deg,#fffdf7,#f6e9d1);border:1px solid #cbb181;border-radius:5px;padding:13px 5px 10px;box-shadow:inset 0 1px #fffefa}
.countdown strong{display:block;font-family:var(--serif);font-size:39px;font-weight:400;line-height:1.1;letter-spacing:0;color:#805720;font-variant-numeric:tabular-nums}
.countdown span{font-size:14px;line-height:1.4;display:block;margin-top:6px;color:#715937}
.offer-clock .offer-deadline{font-size:14px;line-height:1.55;color:#775f40;margin:16px 0 0}
.enrollment-content .offer-cta{font-size:17px;width:min(460px,100%);padding:20px 18px;gap:12px;min-width:0}
.enrollment-content .offer-final-line{font-family:var(--serif);font-size:25px;line-height:1.4;margin:28px 0 0;color:#694b26}
.offer-ended{padding:12px 18px;border:1px solid #cdb78d;background:#fff7e7;font-size:16px}
@media(max-width:1180px){
 .sales-page .header .brand img{width:104px;height:104px}
 .sales-page .header .brand>span{font-size:25px}
 .sales-page .header .brand small{font-size:15px}
}
@media(max-width:1100px){.sales-page .header nav{display:none}}
@media(min-width:551px) and (max-width:700px){
 .sales-page .header{height:110px;min-height:110px;flex-wrap:nowrap;padding:7px 20px;gap:12px}
 .sales-page .header .brand{gap:10px}
 .sales-page .header .brand img{width:96px;height:96px}
 .sales-page .header .brand>span{font-size:21px}
 .sales-page .header .brand small{font-size:14px;letter-spacing:.1em}
}
@media(max-width:550px){
 .sales-page .header{display:grid;height:171px;min-height:171px;grid-template-columns:minmax(0,1fr);grid-template-rows:104px 44px;padding:8px 20px;gap:7px}
 .sales-page .header>.brand{width:100%;height:104px;min-width:0;gap:12px;flex:initial;justify-content:flex-start}
 .sales-page .header .brand img{width:clamp(90px,24vw,106px);height:clamp(90px,24vw,106px);flex:none}
 .sales-page .header .brand>span{font-size:clamp(18px,6vw,27px);letter-spacing:.015em;white-space:nowrap;line-height:1.25}
 .sales-page .header .brand small{font-size:clamp(14px,3.9vw,17px);letter-spacing:.07em;margin-top:8px}
 .sales-page .header>.button{margin:0;min-height:44px;justify-self:end;align-self:center;padding:9px 16px;font-size:14px}
}
@media(max-width:700px){
 .hero-signature{display:block;font-size:15px;max-width:100%;line-height:1.65}
 .hero-signature strong{font-size:15px}
 .footer-main .brand{gap:12px;max-width:100%}
 .footer-main .brand img{width:clamp(70px,21vw,98px);height:clamp(70px,21vw,98px)}
 .footer-main .brand>span{font-size:clamp(19px,5vw,24px);letter-spacing:.01em;white-space:nowrap}
 .footer-main .brand .sanctuary-subtitle{font-size:clamp(14px,3.9vw,17px);line-height:1.4;letter-spacing:.02em;margin-top:9px}
 .form-grid{grid-template-columns:minmax(0,1fr)}
 .form-grid small{font-size:15px}
 .participant-grid{grid-template-columns:minmax(0,1fr);gap:18px}
 .participant-card{padding:24px}
 .participant-dialog{padding:24px 22px}
 .participant-dialog .eyebrow{font-size:13px}
 .participant-dialog h2{font-size:33px}
 .participant-dialog .form-grid{grid-template-columns:minmax(0,1fr)}
 .app-tabs{max-width:100%;overscroll-behavior-x:contain}
 .enrollment-content{padding:44px 24px 50px}
 .enrollment-content>p{font-size:16px}
 .offer-price strong{font-size:clamp(58px,16vw,78px)}
 .previous-price b{font-size:13px}
 .countdown{gap:8px}
 .countdown strong{font-size:34px}
 .enrollment-content .offer-cta{max-width:100%;font-size:16px}
 .enrollment-content .payment-note{font-size:15px}
 .enrollment-content .offer-final-line{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.participant-card{transition:none}.participant-card:hover{transform:none}}
