:root {
 --gold-d:#9A7830;--plum:#3C0A26;--burgundy:#571233;--gold:#C39A4A;--gold-l:#F1D391;
 --cream:#FAF4E8;--cream2:#F2E7D3;--paper:#FFFDF8;--navy:#0F2B46;--navy-d:#081E33;
 --ink:#2E2230;--ink-soft:#5C4F5E;--serif:'Playfair Display',Georgia,'Times New Roman',serif;
 --sans:'DM Sans',Arial,sans-serif;
}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;background:#ece8e1}body{font-family:var(--sans);color:var(--ink)}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #3c7694;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.6}
#app{height:100dvh;min-height:560px;width:100%;max-width:500px;margin:0 auto;display:flex;flex-direction:column;background:var(--cream);overflow:hidden;box-shadow:0 0 38px #0002}
.screen-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#dacdb5 transparent;overscroll-behavior:contain;background:radial-gradient(ellipse at 15% 20%,#fffaf1a9,transparent 44%),radial-gradient(ellipse at 70% 85%,#f7eddea4,transparent 58%),var(--cream)}
.hero{width:100%;height:auto;aspect-ratio:2.09/1;max-height:230px;position:relative;flex-shrink:0;overflow:hidden;background:var(--plum)}
.hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero.handmade{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px 8%;background:linear-gradient(93deg,#3c0a26 4%,#53142f 70%,#1d1e30 100%);color:#fff}
.hero-eyebrow{color:var(--gold-l);font-family:var(--sans);font-size:11px;letter-spacing:.27em;font-weight:600;margin:0 0 8px}
.handmade h1{font-family:var(--serif);font-size:clamp(26px,6.2vw,39px);line-height:1.14;margin:0;font-weight:700}
.handmade h1 em{color:var(--gold-l);font-weight:400}
.hero-rule{height:3px;width:45px;background:var(--gold-l);border-radius:5px;margin-top:12px}
.back-overlay{position:absolute;top:8px;left:12px;color:white;background:none;border:none;font-size:31px;line-height:1;min-width:40px;min-height:40px}
.main-content{padding:16px 17px 20px;width:100%;margin:0 auto}
.tabbar{flex:0 0 auto;display:grid;grid-template-columns:repeat(5,1fr);height:92px;padding:8px 4px calc(5px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--gold-d);background:#fcf7ed;box-shadow:0 -1px 2px #ad87410c;z-index:5}
.tab{appearance:none;position:relative;background:none;border:0;color:var(--plum);display:flex;align-items:center;justify-content:flex-start;gap:3px;flex-direction:column;padding:2px 2px 7px;min-width:0}
.tab:not(:last-child){border-right:1px solid #cbb78c91}
.tab img{display:block;height:37px;width:44px;max-width:85%;object-fit:contain;mix-blend-mode:multiply}
.tab>span{font-family:var(--sans);font-weight:700;font-size:clamp(8px,2.33vw,11px);line-height:1.08;min-height:23px;display:flex;flex-direction:column;align-items:center;justify-content:center;white-space:nowrap;letter-spacing:-.035em}
.tab i{position:absolute;bottom:2px;left:18%;right:18%;height:4px;border-radius:8px;background:transparent}
.tab.selected i{background:var(--gold-d)}
.tab:active{background:#e9dbbd5c}
/* Home */
.home-content{padding:14px 12px 13px}
.home-question{font-family:var(--serif);font-size:clamp(23px,6.55vw,31px);letter-spacing:-.03em;color:var(--plum);font-weight:700;text-align:center;margin:2px 0 9px;white-space:nowrap}
.home-question em{color:var(--gold-d);font-weight:400}
.home-menu{display:flex;flex-direction:column}
.home-choice{width:100%;min-height:62px;display:flex;gap:12px;align-items:center;background:transparent;border:0;border-bottom:1px solid #d6c6aa9e;text-align:left;padding:7px 3px}
.home-choice:last-child{border-bottom:0}
.home-choice:hover,.room:hover,.lamb-feature:hover{background:#ecdcc439}
.menu-symbol{color:#a67c36;flex:0 0 49px;display:flex;align-items:center;justify-content:center}
.menu-symbol svg{width:37px;height:37px}
.menu-symbol .home-menu-icon{width:42px;height:42px;object-fit:contain;display:block;flex:0 0 auto}
.home-copy{display:flex;flex:1;flex-direction:column;min-width:0;gap:2px}
.home-copy b{font-family:var(--serif);color:var(--plum);font-size:clamp(20px,5.25vw,24px);font-weight:700;line-height:1.15;letter-spacing:-.035em}
.home-copy small{font-family:var(--sans);font-size:clamp(11.5px,3.3vw,14px);color:#616078;line-height:1.26}
.chevron{color:#a47e37;font-size:34px;font-family:Arial;line-height:1;font-weight:200;margin:0 6px 0 0}
.featured-treasure{display:block;width:100%;border:0;background:var(--navy);padding:0;position:relative;border-radius:11px;overflow:hidden;margin:8px 0 0;box-shadow:0 2px 6px #0002}
.featured-treasure img{width:100%;display:block;height:auto;aspect-ratio:2.32/1;object-fit:fill}
.external-mark{position:absolute;bottom:7px;right:8px;color:#e9c681;font-size:18px}
/* House */
.house-content{padding:11px 12px 12px}
.house-intro{text-align:center;color:#465a72;font-size:clamp(12px,3.55vw,15px);line-height:1.35;margin:0 0 10px;font-family:var(--sans)}
.rooms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));row-gap:8px;column-gap:8px}
.room{background:transparent;border:0;min-width:0;display:flex;align-items:center;flex-direction:column;padding:0 0 3px;border-radius:7px}
.room img{display:block;width:126px;max-width:85%;height:103px;object-fit:contain;mix-blend-mode:multiply}
.room-title{font-family:var(--serif);font-weight:700;color:var(--plum);font-size:clamp(12px,3.6vw,15px);white-space:nowrap;line-height:1.22;letter-spacing:-.045em;margin-top:1px}
.small-chevron{font-family:Arial;color:var(--gold-d);font-size:19px;font-weight:400;margin-left:3px}
.room small{color:#536580;font-size:clamp(10px,2.9vw,12px);line-height:1.15;margin-top:1px}
/* Shared content */
.description{text-align:center;font-family:var(--sans);font-size:clamp(13px,3.7vw,16px);line-height:1.5;color:#334f66;margin:9px 0 12px}
.heart-divider{text-align:center;color:var(--gold-d);font-size:23px;line-height:1;margin:13px auto;display:flex;align-items:center;justify-content:center;gap:8px}
.heart-divider:before,.heart-divider:after{content:'';height:1px;width:38px;background:var(--gold-d)}
.heart-divider.small{margin:10px auto 13px}
.pill{display:flex;justify-content:center;align-items:center;gap:6px;border:none;border-radius:100px;min-height:43px;padding:10px 15px;font-family:var(--sans);font-weight:700;text-align:center;letter-spacing:.015em;text-decoration:none;font-size:13px;white-space:nowrap;line-height:1.2}
.pill.navy{background:var(--navy);color:white}.pill.plum{background:var(--plum);color:white}.pill.gold{background:var(--gold-d);color:white}.pill.border{border:1px solid var(--navy);color:var(--navy);background:transparent}.pill.full{width:100%}.pill.mini{font-size:12px;min-height:33px;padding:7px 10px;letter-spacing:0}.center-cta{margin:14px auto 0;max-width:255px;min-width:190px}.link-pill{margin:13px auto 0;max-width:330px}
.action-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.action-pair .pill{font-weight:600;font-size:clamp(11px,3vw,13px);padding:7px 5px}
.micro-note{font-size:11px;color:#786d70;text-align:center;line-height:1.4;margin:12px auto}.eyebrow{font-size:11px;letter-spacing:.19em;font-weight:700;color:var(--gold-d)}
/* Treasure */
.treasure-content{padding:13px 18px 20px}.treasure-content .description{margin:8px 0 15px}.treasure-content .date{text-align:center;color:var(--gold-d);font-size:clamp(12px,3.3vw,15px);letter-spacing:.14em;font-weight:700;margin:12px 0 20px}.treasure-art{margin:0}.treasure-art img{display:block;width:100%;border-radius:11px;box-shadow:0 2px 6px #0002}
/* Lambkins */
.lambkins-content{padding:11px 14px 14px}
.lambkins-intro{font-family:var(--serif);text-align:center;color:var(--navy);font-size:clamp(13px,3.5vw,16px);line-height:1.34;margin:0}
.features-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.lamb-feature{background:#fffcf6;border:1px solid #e4d5ba;border-radius:11px;overflow:hidden;padding:0 0 9px;box-shadow:0 2px 4px #3e2b110c;min-width:0;display:flex;flex-direction:column;align-items:center}
.lamb-img{width:100%;height:111px;overflow:hidden}.lamb-img img{height:100%;width:100%;object-fit:cover;display:block}
.lamb-title{font-family:var(--serif);font-weight:700;color:var(--navy);font-size:clamp(14px,3.95vw,17px);letter-spacing:-.035em;line-height:1.15;margin:7px 2px 3px;text-align:center;white-space:nowrap}
.tiny-rule{height:1px;width:27px;background:var(--gold-d);margin:3px auto 5px}.lamb-feature small{font-size:clamp(10px,3.05vw,12px);color:#435777;line-height:1.2}
/* My Corner */
.corner-content{padding:14px 15px}.corner-content .description{margin:1px 5px 4px}
.corner-panel{border:1px solid var(--gold-d);border-radius:12px;background:#fffbf5;display:grid;grid-template-columns:44% 1fr;gap:11px;padding:9px;margin:10px 0}
.corner-panel img{width:100%;height:153px;object-fit:cover;border-radius:8px}
.corner-panel h2{font-family:var(--serif);font-size:19px;letter-spacing:-.04em;color:var(--plum);margin:3px 0 3px}.corner-panel p{font-size:12px;line-height:1.36;color:#344b63;margin:5px 0 9px}.gold-count{font-size:13px;color:var(--gold-d)}.privacy-line{text-align:center;font-size:11px;color:#587089;margin:15px 0}
/* Extra working experiences */
.exercise-content,.activity-content,.room-detail,.feature-detail,.journal-content,.collection-content,.notes-content,.laughter-content{text-align:center;padding:19px 20px 35px}
.exercise-content h1,.activity-content h2,.room-detail h2,.feature-detail h2,.journal-content h2,.collection-content h2,.notes-content h2{font-family:var(--serif);color:var(--plum);line-height:1.13;margin:11px 0;font-size:clamp(23px,6vw,32px)}
.exercise-content .symbol-big svg{width:44px;height:44px;color:var(--gold-d)}.duration{font-family:var(--serif);color:var(--gold-d);font-size:17px}.exercise-paper{border:1px solid var(--gold-d);border-radius:12px;padding:20px 16px;margin-top:17px}.exercise-paper h2{font-family:var(--serif);color:var(--plum);font-size:23px;margin:0 0 14px}.exercise-paper p{font-size:15px;color:#3f4057;line-height:1.65;margin:14px 0}.exercise-paper>em{display:block;font-family:var(--serif);font-size:23px;color:var(--gold-d);margin:18px 0}.hidden-result{border-top:1px solid #dbcaa5;margin-top:17px;padding-top:10px}.hidden-result strong{color:var(--plum)}
.big-symbol svg{width:65px;height:65px;color:var(--gold-d)}.activity-content p{color:#3e5266;line-height:1.55}.breath-orb{border-radius:50%;width:184px;height:184px;display:grid;place-items:center;background:#cfdedb;color:var(--navy);font-family:var(--serif);font-size:25px;margin:22px auto;transition:transform .7s ease, background .7s ease}.breath-orb.exhale{transform:scale(.85);background:#ebd8c2}
textarea{width:100%;min-height:170px;border:1px solid #bda168;background:#fffdf7;border-radius:12px;padding:14px 16px;resize:vertical;font-size:15px;color:var(--navy);margin:13px 0}
.room-detail-img{width:70%;height:180px;object-fit:contain;mix-blend-mode:multiply}.room-detail p,.feature-detail p,.journal-info p,.notes-content p{font-size:15px;line-height:1.55;color:#41516a}.text-link{display:block;background:none;border:0;color:var(--plum);margin:17px auto 6px;padding:7px;text-decoration:underline;text-underline-offset:4px}.feature-detail>img{height:200px;max-width:100%;border-radius:11px;object-fit:cover}
.journal-head{display:grid;grid-template-columns:43% 1fr;gap:16px;align-items:center;text-align:left}.journal-head>img{width:100%;height:auto;box-shadow:0 5px 14px #302b2230;border-radius:5px}.journal-head p{font-size:14px;line-height:1.45;color:#294362}.price{color:var(--navy);font-size:21px}.journal-info{border-top:1px solid #d1b98a;margin-top:22px;padding-top:15px}
.saved-record{border:1px solid #d3b981;background:#fffdf8;padding:15px;text-align:left;border-radius:12px;margin-bottom:12px}.saved-record strong{font-family:var(--serif);font-size:20px;color:var(--plum)}.saved-record p{font-family:var(--serif);font-size:17px;line-height:1.5;color:var(--navy)}.saved-record small{color:#77645f}.saved-record .text-link{margin:10px 0 0}.empty{color:#53677b}
.verdict-card{background:var(--navy-d);border:3px double var(--gold);border-radius:14px;color:#fff;padding:21px 17px;margin:25px 0 19px;box-shadow:0 3px 11px #041d302a}.verdict-plate{display:inline-block;border:1px solid var(--gold-l);border-radius:5px;padding:9px 14px;color:var(--gold-l);letter-spacing:.14em;font-size:14px}.verdict-card blockquote{font-family:var(--serif);font-size:clamp(20px,5.6vw,26px);font-style:italic;line-height:1.5;margin:24px 0 14px}.verdict-card img{width:70%;max-width:230px;object-fit:contain;margin:5px auto}
.toast{position:fixed;left:50%;bottom:118px;transform:translate(-50%,10px);z-index:40;max-width:calc(100vw - 35px);border-radius:12px;padding:10px 14px;background:var(--navy);color:white;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 4px 15px #0004;text-align:center;font-size:13px}.toast.show{opacity:1;transform:translate(-50%,0)}
@media (max-width:370px){.main-content{padding-left:10px;padding-right:10px}.home-choice{min-height:57px}.home-copy b{font-size:19px}.home-copy small{font-size:11px}.house-content{padding:8px 9px}.room img{height:97px;width:117px}.rooms-grid{row-gap:4px}.lamb-feature .lamb-img{height:101px}.tabbar{height:88px}.home-question{font-size:22px}}
@media (max-height:740px){.tabbar{height:82px}.tab img{height:31px}.tab>span{font-size:8px}.room img{height:90px;width:113px}.house-intro{margin-bottom:5px}.rooms-grid{row-gap:4px}.hero{max-height:185px}.home-choice{min-height:54px}.home-content{padding-top:9px}.home-question{font-size:23px;margin-bottom:4px}.featured-treasure{margin-top:5px}.lamb-img{height:95px}.lamb-title{font-size:13px}.features-grid{gap:7px}.lambkins-content{padding-top:6px}.lambkins-intro{font-size:12px}.heart-divider.small{margin:5px auto 8px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}


/* Website-derived reflection activities: Fresh Start and Wonder */
.photo-hero>img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 52%}
.photo-hero .hero-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(36,9,28,.79) 0%,rgba(36,9,28,.54) 46%,rgba(16,29,47,.09) 100%)}
.photo-hero-title{position:absolute;left:7.5%;right:6%;top:50%;transform:translateY(-50%);color:white}
.photo-hero-title h1{font-family:var(--serif);font-size:clamp(26px,6.6vw,37px);font-weight:700;line-height:1.14;margin:0;color:#fff}
.photo-hero-title h1 em{font-weight:400;color:var(--gold-l)}
.photo-hero .back-overlay{z-index:2;top:4px;left:8px}
.website-activity{padding:22px 22px 38px}
.website-activity-eyebrow{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--gold-d);text-align:center;margin:0 0 10px}
.website-activity-heading{font-family:var(--serif);font-size:clamp(28px,7vw,37px);line-height:1.17;color:var(--plum);text-align:center;letter-spacing:-.04em;margin:0 0 18px}
.website-prose p{text-align:left;color:var(--ink);font-size:clamp(15px,3.9vw,17px);line-height:1.65;margin:0 0 16px}
.website-ponder{border-radius:12px;padding:20px 15px 24px;color:var(--paper);text-align:center;margin:22px 0 15px}
.website-ponder.plum{background:linear-gradient(145deg,#480b2d,#3b0827)}.website-ponder.navy{background:#102c49}
.website-ponder>p{color:var(--gold-l);font-weight:700;letter-spacing:.13em;font-size:clamp(11px,3.1vw,13px);margin:0 0 12px}
.website-ponder blockquote{font-family:var(--serif);font-size:clamp(20px,5.5vw,25px);font-weight:700;line-height:1.42;margin:0}
.website-invitation{text-align:center;font-style:italic;color:#665a64;font-size:15px;line-height:1.5;margin:17px 10px}
.activity-start{width:100%;margin:19px auto 4px;white-space:normal}
.reflection-workspace{text-align:left;border:1px solid #c7a768;background:#fffcf4;border-radius:13px;margin:22px 0 6px;padding:19px 15px 17px;box-shadow:0 3px 10px #563a1320;scroll-margin-top:8px}
.activity-progress{font-family:var(--sans);font-weight:700;letter-spacing:.15em;font-size:11px;color:var(--gold-d)}
.reflection-workspace h3,.saved-reflection h3{font-family:var(--serif);font-size:clamp(21px,5.6vw,25px);line-height:1.3;color:var(--plum);margin:13px 0}
.reflection-workspace textarea{min-height:180px;margin:10px 0 4px;font-size:15px}
.reflection-status{color:#597085;font-size:11px}.reflection-actions{display:flex;gap:8px;margin:20px 0 2px}.reflection-actions .pill{flex:1;min-width:0;white-space:normal;font-size:11px}
.reflection-finish{text-align:center}.reflection-finish p{font-size:14px;line-height:1.55;color:var(--navy)}
.saved-reflection{border:1px solid #cdb47e;border-radius:10px;background:#fffdf8;padding:17px;margin:14px 0;text-align:left}.saved-reflection p{font-size:13px;color:#364b62;margin:12px 0}.saved-reflection p b{font-family:var(--serif);font-size:14px;color:var(--plum)}
.reflection-archive-head{font-size:24px!important;margin-top:28px!important}.saved-reflection .pill{white-space:normal;margin-top:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Lambkins' approved journal product story, 2026-10-30: all visual previews precede purchase. */
.journal-product-page{padding:17px 15px 35px}
.journal-overview{display:grid;grid-template-columns:37% 1fr;gap:15px;text-align:left;align-items:center}
.journal-overview>img{display:block;width:100%;height:174px;object-fit:cover;object-position:center top;border-radius:8px;box-shadow:0 5px 12px #302b2235}
.journal-overview h2{font-family:var(--serif);font-size:clamp(20px,5.4vw,25px);line-height:1.14;margin:6px 0 8px;color:var(--plum)}
.journal-overview>div>p:not(.journal-kicker){font-size:clamp(12px,3.25vw,14px);line-height:1.45;color:#344b63;margin:4px 0 7px}
.journal-kicker,.journal-section-eyebrow{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--gold-d);margin:0}
.journal-download-note{font-size:10px;font-weight:700;letter-spacing:.03em;color:#7d642f;line-height:1.4}
.journal-highlights{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #d5c198;margin:19px 0 19px;padding:13px 0 12px;gap:5px}
.journal-highlights span{display:grid;gap:2px;border-right:1px solid #d5c198}.journal-highlights span:last-child{border-right:0}
.journal-highlights b{font-family:var(--serif);font-size:28px;line-height:1;color:var(--navy)}.journal-highlights small{font-size:11px;color:var(--ink-soft)}
.journal-gallery-section{padding:4px 0 0}.journal-gallery-heading{font-family:var(--serif);font-size:clamp(27px,7vw,33px);margin:5px 0;color:var(--plum)}.journal-gallery-heading em{font-weight:400;color:var(--gold-d)}
.journal-gallery-intro{font-size:14px;line-height:1.5;color:#435777;margin:0 auto 16px;max-width:320px}
.journal-gallery{border:1px solid #d4bd8b;border-radius:13px;background:#fffdf8;box-shadow:0 3px 16px #46301912;padding:8px 8px 14px;outline-offset:3px}
.journal-gallery-images{background:#fbf9f3;border-radius:9px;overflow:hidden}
.journal-preview{margin:0;padding:0;display:block}.journal-preview[hidden]{display:none!important}
.journal-preview img{width:100%;height:auto;aspect-ratio:5/6;display:block;object-fit:contain;background:#fbf9f3}
.journal-preview figcaption{font-family:var(--serif);font-size:17px;font-weight:700;color:var(--navy);padding:7px 0 0}
.journal-gallery-controls{display:flex;align-items:center;justify-content:center;gap:25px;margin:8px 0 8px}
.journal-gallery-arrow{background:var(--navy);border:0;border-radius:50%;color:white;font-family:var(--serif);font-size:25px;line-height:1;display:grid;place-items:center;width:39px;height:39px;cursor:pointer}
.journal-gallery-arrow:focus-visible,.journal-gallery-dots button:focus-visible{outline:3px solid var(--gold)}
.journal-gallery-count{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--gold-d);min-width:70px}
.journal-gallery-dots{display:flex;gap:7px;justify-content:center;align-items:center;margin:0 auto 10px}
.journal-gallery-dots button{width:9px;height:9px;min-width:9px;padding:0;border:1px solid var(--gold-d);border-radius:50%;background:transparent;cursor:pointer}
.journal-gallery-dots button[aria-current="true"]{background:var(--gold-d);width:18px;border-radius:6px}
.journal-gallery-caption{font-size:13px;color:#40516a;line-height:1.42;margin:0 auto 6px;max-width:295px;min-height:37px}
.journal-gallery-tip{color:#827780;font-size:11px;font-style:italic;margin:4px 0 0}
.journal-purchase{border-top:1px solid #c8ad79;margin-top:28px;padding:25px 7px 4px;text-align:center}
.journal-purchase h2{font-family:var(--serif);font-size:30px;color:var(--plum);line-height:1.14;margin:8px 0 10px}.journal-purchase h2 em{color:var(--gold-d);font-weight:400}
.journal-purchase>p:not(.micro-note):not(.journal-section-eyebrow){color:#40516a;font-size:14px;line-height:1.52;max-width:300px;margin:7px auto 12px}
.journal-final-price{display:block;font-family:var(--serif);font-size:31px;color:var(--navy);margin:14px auto 6px}
.journal-purchase .link-pill{max-width:300px;margin:18px auto 0}.journal-purchase .micro-note{font-size:11px;color:#64717a;line-height:1.5;max-width:320px;margin:10px auto}
.journal-back{margin:16px auto 4px}


/* v0.5 consistent banners: photo-backed for secondary screens, inherited Home dimensions */
.hero.photo-handmade{padding:0;display:block;isolation:isolate;background:var(--plum);color:#fff}
.hero.photo-handmade>.hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:-2}
.hero.photo-handmade::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(48,7,31,.995) 0%,rgba(48,7,31,.985) 45%,rgba(48,7,31,.78) 65%,rgba(23,17,33,.03) 100%)}
.hero.photo-handmade .handmade-title{position:absolute;left:7.5%;top:50%;transform:translateY(-50%);right:4%;padding-top:6px}
.hero.photo-handmade .handmade-title>h1{margin:0;font-family:var(--serif);font-size:clamp(26px,6.2vw,39px);line-height:1.13;color:#fff;font-weight:700}
.hero.photo-handmade .handmade-title>h1 em{color:var(--gold-l);font-weight:400}
.hero.photo-handmade .back-overlay{z-index:4;top:3px;left:8px}

/* v0.6: Aunty’s House daily featured-content preview for all six room details. */
.room-feature-page{padding:17px 17px 32px;text-align:center}
.room-feature-intro{font-family:var(--serif);font-size:clamp(15px,4.15vw,18px);color:var(--navy);line-height:1.48;margin:3px auto 10px;max-width:370px}
.room-feature-label{font-weight:800;font-size:11px;letter-spacing:.18em;color:var(--gold-d);margin:13px 0 12px}
.daily-room-card{background:var(--paper);border:1px solid #d5bd88;border-radius:13px;overflow:hidden;text-align:left;box-shadow:0 4px 13px #372b2214}
.daily-room-image{display:block;width:100%;height:158px;object-fit:cover;object-position:center 44%;background:var(--cream2)}
.daily-room-copy{padding:16px 17px 18px}
.daily-room-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.daily-room-type{font-size:10px;letter-spacing:.16em;font-weight:800;color:var(--gold-d)}
.daily-room-date{font-family:var(--serif);font-size:12px;color:#716176}
.daily-room-copy h2{font-family:var(--serif);color:var(--plum);font-size:clamp(23px,6vw,28px);line-height:1.18;margin:4px 0 10px;text-align:left}
.daily-room-copy p{font-size:14px;color:#41516a;line-height:1.5;margin:0;text-align:left}
.daily-room-cta{margin:17px auto 0;max-width:365px;min-height:46px;white-space:normal}
.room-feature-transparency{margin:12px auto 3px;max-width:325px;font-size:11px;line-height:1.45;color:#74666b}
.room-feature-page>.text-link{margin-top:9px}
@media(max-height:740px){.room-feature-intro{font-size:15px}.daily-room-image{height:138px}}

/* v0.7 website exercise content; shared design tokens unchanged. */
.web-exercise p{line-height:1.6}.web-exercise .pill{margin:8px 4px;max-width:100%;white-space:normal}.web-exercise textarea{width:100%;min-height:160px;background:var(--cream,#faf4e8);color:#3c0a26;border:1px solid #9a7830;border-radius:12px;padding:14px;font:inherit}.web-options{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.web-options [aria-pressed=true]{background:#0f2b46;color:#fffdf8}.web-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.web-card-back{aspect-ratio:3/4;border:1px solid #9a7830;border-radius:10px;background:#0f2b46;color:#f1d391;font-size:28px;cursor:pointer}.web-keepsake{padding:22px 16px;border:1px solid #9a7830;border-radius:14px;background:#fffdf8;color:#3c0a26;margin:18px 0}.web-keepsake blockquote{font-family:var(--serif);font-style:italic;font-size:1.35rem;margin:18px 0}.web-feature-art{width:130px;height:130px;object-fit:cover;border-radius:18px;display:block;margin:12px auto}.web-exercise progress{width:100%;accent-color:#9a7830}.web-exercise .action-pair{display:flex;flex-wrap:wrap}.web-exercise .action-pair>*{flex:1;min-width:120px}@media(prefers-reduced-motion:reduce){#web-breath-orb{transform:none!important}}
/* v0.8 additions retain the established hero proportions, palette and footer. */
.resume-section{margin:24px 0;padding:20px 18px;border:1px solid var(--gold,#9A7830);border-radius:18px;background:#FAF4E8}
.resume-section h2{font-size:clamp(20px,5vw,27px);margin:0 0 12px;color:#3C0A26}
.resume-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:none;border:0;border-top:1px solid #9A783033;padding:13px 0;text-align:left;color:#0F2B46;font:600 16px 'DM Sans',sans-serif}
.resume-row small,.video-welcome small{display:block;font-size:13px;font-weight:400;margin-top:5px}.resume-row>span:last-child{color:#9A7830;font-size:26px}
.live-home-treasure{position:relative;display:flex;min-height:205px;background:#081E33;border:1px solid #9A7830;overflow:hidden;color:#FAF4E8;text-align:left;padding:25px 24px;border-radius:18px}
.live-home-copy{position:relative;z-index:2;width:78%;display:flex;flex-direction:column;gap:15px}.live-home-copy>small:first-child{font:600 11px 'DM Sans',sans-serif;letter-spacing:2px;color:#F1D391}.live-home-copy strong{font:italic 600 clamp(23px,6vw,33px)/1.3 'Playfair Display',Georgia,serif}.live-home-copy>small:last-child{font:400 12px 'DM Sans',sans-serif}.live-home-art{position:absolute;inset:0 0 0 50%;background:linear-gradient(90deg,#081E33 0%,#081E3388 65%),url('./public/assets/room-reading.jpg') center/cover;opacity:.6}
.branded-card{background:#3C0A26;color:#FAF4E8;border:1px solid #9A7830;outline:1px solid #9A7830;outline-offset:-9px;border-radius:18px;padding:32px 24px;text-align:center;margin:25px 0}.branded-card.navy-card{background:#0F2B46}.branded-card .card-brand{width:86%;max-width:420px;height:auto;margin:0 auto 24px}.card-eyebrow{font:600 12px 'DM Sans',sans-serif;letter-spacing:3px;color:#F1D391}.branded-card blockquote{font:italic 600 clamp(27px,7vw,42px)/1.5 'Playfair Display',Georgia,serif;margin:30px 0}.branded-card .card-attribution{font:400 14px/1.6 'DM Sans',sans-serif}.branded-card>small{font:500 12px 'DM Sans',sans-serif;letter-spacing:2px;color:#F1D391}.card-rule{display:block;width:65px;height:2px;background:#9A7830;margin:22px auto}.card-invitation{font:400 16px/1.6 'DM Sans',sans-serif}
.consult-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-block:1px solid #9A783066;padding:22px 0;margin:24px 0}.consult-facts strong,.consult-facts small{display:block}.consult-facts strong{font-size:23px;color:#3C0A26}.consult-facts small{font-size:14px;line-height:1.5;margin-top:6px}.heart-page,.watch-page,.video-page{padding-bottom:30px}.heart-page>p{line-height:1.75}.link-pill{text-decoration:none;text-align:center}.video-welcome{position:relative;width:100%;border:1px solid #9A7830;border-radius:16px;overflow:hidden;background:#081E33;color:#FAF4E8;margin:18px 0 25px;padding:0}.video-welcome img{width:100%;display:block}.video-welcome>span{display:block;padding:17px;font:600 18px 'DM Sans',sans-serif}.video-list{display:grid;gap:18px;margin:20px 0 25px}.video-list-card{display:flex;align-items:center;gap:18px;border:1px solid #9A783055;border-radius:15px;background:#FAF4E8;padding:12px;text-align:left;color:#0F2B46}.video-list-card img{width:32%;max-height:160px;object-fit:cover;border-radius:9px}.video-list-card>span{flex:1;display:flex;flex-direction:column;gap:9px}.video-list-card strong{font:600 20px/1.3 'Playfair Display',Georgia,serif}.video-list-card small{font:500 12px/1.4 'DM Sans',sans-serif;color:#5C4F5E}.video-list-card span span{font:600 13px 'DM Sans',sans-serif;color:#3C0A26}.video-frame{width:100%;position:relative;background:#081E33;border-radius:13px;overflow:hidden;margin:23px auto}.video-frame.landscape{aspect-ratio:16/9}.video-frame.portrait{aspect-ratio:9/16;max-width:380px}.video-frame #youtube-player,.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-page h2{font-size:28px}.video-page .action-pair{margin-top:20px}.saved-share-actions{display:flex;flex-wrap:wrap;gap:15px}.meet-video-link{margin:22px 0 8px}.treasure-content>.pill.border{display:block;margin:18px auto}.watch-page .full,.video-page .full{margin-top:20px}

.video-frame.landscape{min-height:200px}.hero.photo-handmade .hero-backdrop{object-position:65% center}

/* v0.9: collection tools and quiet, useful next steps. */
.collection-search-label{display:block;font:600 14px 'DM Sans',sans-serif;color:#3C0A26;margin:22px 0 8px}#collection-search{width:100%;padding:14px 16px;border:1px solid #9A7830;border-radius:12px;background:#FAF4E8;color:#0F2B46;font:400 16px 'DM Sans',sans-serif;box-sizing:border-box}.collection-filters{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.collection-filters button{border:1px solid #9A7830;border-radius:24px;background:transparent;color:#3C0A26;padding:10px 14px;min-height:44px;font:600 13px 'DM Sans',sans-serif}.collection-filters button[aria-pressed=true]{background:#3C0A26;color:#FAF4E8}.saved-kind{font:600 11px 'DM Sans',sans-serif;letter-spacing:2px;color:#9A7830}.saved-record h3{font:600 24px/1.4 'Playfair Display',Georgia,serif;color:#3C0A26}.saved-record .saved-share-actions .text-link{min-height:44px}.gentle-next-step{margin-top:28px;padding:22px 18px;border:1px solid #9A783066;border-radius:15px}.gentle-next-step h3{font-size:25px}.gentle-next-step p{font-size:16px;line-height:1.6}.offline-notice{background:#F1D39133;color:#0F2B46;border-block:1px solid #9A783066;padding:14px 20px;font:500 14px/1.5 'DM Sans',sans-serif}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #9A7830;outline-offset:3px}

/* v0.10 — one header system and a full-height iPhone 13 phone layout. */
html,body{height:100%;min-height:100%;overflow:hidden}
#app{container-type:inline-size}
.hero.consistent-hero{position:relative;isolation:isolate;display:block;width:100%;height:auto;aspect-ratio:2.09/1;max-height:none;flex-shrink:0;padding:0;background:#3C0A26;overflow:hidden}
.consistent-hero .hero-media{position:absolute;inset:0;overflow:hidden}
.consistent-hero .hero-media img{width:100%;height:100%;object-fit:cover;object-position:65% center;max-width:none;display:block}
.consistent-hero.hero-tile-art .hero-media{left:28%}
.consistent-hero.hero-tile-art .hero-media img{width:125%;height:100%;object-position:left center}
.consistent-hero .hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,#3C0A26 0%,#3C0A26f5 25%,#3C0A26c7 43%,#3C0A2670 60%,#3C0A2600 85%)}
.consistent-hero .hero-heading{position:absolute;left:7%;right:7%;top:50%;transform:translateY(-44%);color:#FAF4E8}
.consistent-hero .hero-eyebrow{color:#F1D391;font:600 10px/1.4 'DM Sans',Arial,sans-serif;letter-spacing:.22em;margin:0 0 8px;white-space:nowrap}
.consistent-hero h1{font:700 clamp(23px,7.7vw,34px)/1.2 'Playfair Display',Georgia,serif;font-size:clamp(23px,7.7cqw,34px);letter-spacing:-.025em;margin:0;white-space:nowrap;color:#FAF4E8}
.consistent-hero h1 em{color:#F1D391;font-weight:400}.consistent-hero .hero-rule{display:block;background:#9A7830;width:43px;height:3px;border-radius:3px;margin-top:13px}
.consistent-hero .back-overlay{left:6px;top:4px;z-index:3;font-size:29px;width:40px;height:40px;min-height:40px;min-width:40px}
.tabbar{height:calc(98px + env(safe-area-inset-bottom,0px));padding:9px 4px calc(8px + env(safe-area-inset-bottom,0px))}.tab img{height:40px;width:46px}.tab>span{font-size:10px;min-height:26px;line-height:1.15;letter-spacing:-.02em}.tab i{bottom:calc(3px + env(safe-area-inset-bottom,0px))}
.home-content{padding:20px 15px 28px}.home-question{margin:2px 0 17px}.home-choice{min-height:74px;padding:12px 4px}.home-copy b{font-size:clamp(20px,5.8vw,25px)}.home-copy small{font-size:clamp(12px,3.4vw,14px)}.featured-treasure{margin-top:18px}.main-content{padding-bottom:28px}

@media(max-width:599px){#app{width:100%;max-width:none;margin:0;border-radius:0}.screen-content{padding-top:env(safe-area-inset-top,0px)}.tabbar{flex-shrink:0}}

.consistent-hero.hero-tile-art .hero-media{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 25%);mask-image:linear-gradient(90deg,transparent 0%,#000 25%)}
.home-question{font-size:clamp(21px,6cqw,27px);letter-spacing:-.035em}


/* v0.12: edge-to-edge document, with no fixed-height preview card. */
html,body{height:100%;min-height:0;margin:0;padding:0;overflow:hidden;background:#FAF4E8}
.tabbar{border-radius:0}

/* v0.13: fill the layout viewport; do not shrink the app to visualViewport. */
html,body{position:fixed;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;overflow:hidden;background:#FAF4E8}
#app{position:fixed;inset:0;width:100%;max-width:500px;height:auto;min-height:0;margin:0 auto;border:0;border-radius:0;box-shadow:none}
.tabbar{flex:0 0 auto}
.tab img{display:block;height:40px;width:46px;max-width:85%;object-fit:contain;mix-blend-mode:multiply;flex-shrink:0}
@media(max-width:599px),(pointer:coarse){#app{max-width:none}}

/* v0.15 — website room colors, shared activity presentation, and page rhythm. */
:root{--page-space:28px;--body-size:15px;--body-leading:1.65}
.consistent-hero{--hero-rgb:60,10,38}
.consistent-hero[data-hero-theme="lambkins"]{--hero-rgb:10,26,64}
.consistent-hero[data-hero-theme="wellness"]{--hero-rgb:27,37,12}
.consistent-hero[data-hero-theme="wonder"]{--hero-rgb:13,28,66}
.consistent-hero[data-hero-theme="listening"]{--hero-rgb:6,26,19}
.consistent-hero[data-hero-theme="house"],.consistent-hero[data-hero-theme="reading"]{--hero-rgb:43,26,14}
.consistent-hero[data-hero-theme="treasure"]{--hero-rgb:49,2,29}
.consistent-hero[data-hero-theme="velvet"]{--hero-rgb:74,14,42}
.hero.consistent-hero{background:rgb(var(--hero-rgb))}
.consistent-hero .hero-fade{background:linear-gradient(90deg,rgba(var(--hero-rgb),.98) 0%,rgba(var(--hero-rgb),.9) 25%,rgba(var(--hero-rgb),.72) 43%,rgba(var(--hero-rgb),.32) 60%,rgba(var(--hero-rgb),0) 85%)}
.consistent-hero.hero-tile-art .hero-media{left:28%}
.consistent-hero.hero-tile-art .hero-media img{width:100%;height:100%;object-fit:cover;object-position:right center}
.consistent-hero.hero-panorama .hero-media img{object-fit:contain;object-position:center}
.consistent-hero.hero-panorama .hero-fade{background:radial-gradient(ellipse at center,rgba(43,26,14,.83),rgba(43,26,14,.45) 40%,rgba(43,26,14,0) 78%)}
.consistent-hero.hero-panorama .hero-heading{text-align:center}
.consistent-hero.hero-panorama .hero-rule{margin-left:auto;margin-right:auto}
#main>.main-content{padding-top:var(--page-space);padding-bottom:32px}
#main>.main-content>p:first-child{margin-top:0}
.main-content :is(p,li,label,input,textarea,select){font-family:var(--sans)}
.main-content :is(h2,h3){font-family:var(--serif)}
.main-content :is(.description,.house-intro,.lambkins-intro,.room-feature-intro){font-family:var(--sans);font-size:var(--body-size);font-weight:400;line-height:var(--body-leading);color:#344b63;text-wrap:pretty}
.main-content .lambkins-intro{margin:0 auto;max-width:360px}
.lambkins-content .heart-divider.small{margin:18px auto 22px}
.main-content .house-intro{margin-bottom:24px}
.main-content .description{margin-bottom:18px}
.experience-page{--experience-ink:#1b250c;text-align:center;padding-left:20px;padding-right:20px}
.experience-page[data-experience-theme="wonder"]{--experience-ink:#0d1c42}
.experience-page[data-experience-theme="lambkins"]{--experience-ink:#0a1a40}
.experience-intro{margin:0 auto 24px;max-width:390px}
.experience-intro .experience-eyebrow{font:700 10px/1.5 var(--sans);letter-spacing:.18em;color:var(--gold-d);margin:0 0 10px}
.experience-intro h2{font:700 clamp(25px,6.7cqw,31px)/1.2 var(--serif);letter-spacing:-.025em;color:var(--plum);margin:0 0 12px;text-wrap:balance}
.experience-intro .experience-description{font:400 15px/1.65 var(--sans);color:#344b63;margin:0 auto 12px;text-wrap:pretty}
.experience-intro .experience-time{font:500 12px/1.5 var(--sans);color:var(--gold-d);margin:0}
.experience-panel.exercise-paper{margin:0;border:1px solid #9a783066;border-radius:18px;padding:24px 20px;background:#fffdf8;box-shadow:0 5px 16px #2b1a0e05;text-align:left}
.experience-panel :is(p,li,label){font:400 15px/1.65 var(--sans);color:#344b63}
.experience-panel p{margin:0 0 15px}
.experience-panel>p:first-child{margin-top:0}
.experience-panel>p:last-child{margin-bottom:0}
.experience-panel p strong,.experience-panel>b{font-weight:600;color:var(--experience-ink)}
.experience-panel .pill{font:600 12px/1.35 var(--sans);min-height:46px;letter-spacing:.025em;margin:20px 0 0;padding:12px 17px;white-space:normal;width:100%}
.experience-panel>.pill.navy{background:var(--experience-ink);color:#fffdf8}
.experience-panel .web-options{gap:8px;margin:12px 0 20px}
.experience-panel .web-options .pill{width:auto;flex:1 1 120px;margin:0}
.experience-panel .web-options [aria-pressed=true]{background:var(--experience-ink);color:#fffdf8;border-color:var(--experience-ink)}
.experience-panel .action-pair{display:flex;gap:10px;margin-top:20px}
.experience-panel .action-pair .pill{margin:0;flex:1;min-width:0;font-size:12px}
.experience-panel :is(.activity-progress,.micro-note,.privacy-line){font:400 12px/1.6 var(--sans)}
.experience-panel label{display:block;font-weight:600;color:var(--experience-ink);margin:14px 0 8px}
.experience-panel textarea{margin:0 0 12px;background:#faf4e8;border-color:#9a783066;font:400 16px/1.6 var(--sans)}
.experience-panel .text-link{font:600 12px/1.5 var(--sans);text-align:center;margin-top:18px}
.experience-panel .breath-orb{margin:32px auto;background:#e5eadc;color:#1b250c}
.experience-panel :is(.web-keepsake,.verdict-card){text-align:center;background:#0f2b46;color:#faf4e8;border:3px double #9a7830;border-radius:14px;margin:0 0 22px;padding:24px 18px;box-shadow:none}
.experience-panel :is(.web-keepsake,.verdict-card) :is(p,b,small,h3){color:#faf4e8}
.experience-panel :is(.web-keepsake,.verdict-card) small{font:500 10px/1.6 var(--sans);letter-spacing:.06em;color:#f1d391}
.experience-panel :is(.web-keepsake,.verdict-card) blockquote{font:italic 400 24px/1.5 var(--serif);color:#faf4e8;margin:22px 0}
.experience-panel .web-keepsake h3{font:700 21px/1.3 var(--serif);margin:16px 0}
.experience-panel .verdict-card img{display:block;width:75%;max-width:230px;height:auto;margin:18px auto}
.experience-panel .web-card-grid{grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0}
.experience-panel .web-card-back{background:#0f2b46;border:1px solid #9a7830;border-radius:9px;color:#f1d391;min-height:58px}
@media(max-width:360px){.experience-page{padding-left:14px;padding-right:14px}.experience-panel.exercise-paper{padding:21px 16px}.experience-intro h2{font-size:25px}}
/* Keep header widths identical whether a page needs scrolling or not. */
.screen-content{scrollbar-width:none}
.screen-content::-webkit-scrollbar{display:none}
/* Align welcome sections while allowing longer translated or enlarged text to grow. */
.experience-intro h2{min-height:2.4em;display:grid;place-items:center}
.experience-intro .experience-description{min-height:3.3em}

/* v0.16 — user-supplied footer artwork, with proportional optical sizing. */
.tab img{width:50px;height:44px;object-fit:contain}
