/* Crisp vector controls and readable, live product previews. */
.icon{display:inline-block;width:22px;height:22px;flex:0 0 auto;vertical-align:middle;pointer-events:none}
.button .icon,.text-button .icon,.header-cta .icon{transition:transform .2s}
.button:hover .icon,.text-button:hover .icon,.header-cta:hover .icon{transform:translateY(-2px)}
.header-cta,.text-button,.button{align-items:center}
.header-cta{font-size:13px}.desktop-nav{font-size:13px}.hero-description{font-size:16px}
.hero-actions .button,.hero-actions .text-button{font-size:14px}
.tiny-spark .icon{width:32px;height:32px}.note-icon .icon{width:30px;height:30px}
.closing-star .icon{width:44px;height:44px}.scroll-cue{align-items:center}
.round-button,.dialog-close{display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:1;min-width:44px;min-height:44px;flex:0 0 auto}
.dialog-close .icon{width:20px;height:20px;display:block}
.dialog-close:hover{background:var(--blush)}
.round-button .icon{width:22px;height:22px}.packing-stamp>span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}
.packing-stamp .icon{width:20px;height:20px}.footer-top>a:last-child{display:inline-flex;align-items:center;gap:12px}
.footer-top>a:last-child .icon{width:18px;height:18px}.gallery-tabs button[aria-selected=true]:before{content:none}
.gallery-tabs button{gap:10px;font-size:14px}.gallery-tabs button .icon{width:18px;height:18px}
.gallery-tabs button span{margin-left:auto}.gallery-tabs button[aria-selected=true]{border-left:3px solid var(--wine);padding-left:12px}
.gallery-layout{grid-template-columns:1fr 1.05fr;gap:34px}.gallery-copy>p{font-size:15px}.gallery-copy .availability-note{font-size:12px}
dialog{width:min(1080px,calc(100% - 32px));max-height:92svh}
.gallery-preview{gap:16px;padding:24px}.gallery-preview>p{font-size:13px;padding:0}.gallery-preview .live-screen{width:100%;max-width:350px;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #4928320c}
.phone-frame{width:320px;height:auto;min-height:560px;border:5px solid var(--ink);border-radius:30px;transform:none;overflow:hidden;background:var(--cream)}
.phone-frame .live-screen{min-height:550px}.sticky-stage{height:740px;top:0}.story-chapter{min-height:740px}
.stage-orbit{height:82%;top:8%;pointer-events:none}.stage-caption{font-size:10px;letter-spacing:1.3px}.screen-caption{font-size:12px;line-height:1.5;margin-top:20px;background:var(--blush);padding:0 8px;z-index:1}
.screen-enlarge{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:8px 12px;font-size:13px;color:var(--wine);position:relative;text-decoration:underline;text-underline-offset:4px;z-index:1}
.screen-enlarge .icon{width:18px;height:18px}.story-dots{margin-top:12px;gap:22px}.story-dots a:before{inset:-18px -10px}
.live-screen{background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:14px;display:flex;flex-direction:column;isolation:isolate;min-width:0}
.preview-content{padding:22px 20px 18px;flex:1;min-width:0}.preview-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}
.preview-wordmark{font-family:var(--serif);font-size:25px;font-weight:600;letter-spacing:-1.5px;color:var(--wine)}
.preview-topline>span:last-child{font-size:8px;letter-spacing:1px;color:var(--muted)}.preview-eyebrow{font-size:9px;letter-spacing:1.2px;color:var(--muted)}
.preview-heading h4{font:400 32px/1.15 var(--serif);letter-spacing:-1px;margin:8px 0}.preview-heading p{font-size:13px;line-height:1.5;color:var(--muted)}
.preview-search{margin-top:20px;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:25px;font-size:12px;background:#fff;color:var(--muted)}
.preview-search>span{font-size:20px;line-height:1}.preview-filters{display:flex;gap:7px;margin:14px 0}.preview-filters span{border-radius:20px;background:var(--paper);font-size:11px;padding:8px 12px}.preview-filters .selected{background:var(--wine);color:white}
.preview-garments{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preview-piece{background:var(--paper);border-radius:12px;padding:10px;min-width:0}.preview-piece img{width:100%;height:100px;object-fit:contain;margin-bottom:9px}.preview-piece>span{display:block;font-size:13px;line-height:1.4}.preview-piece small{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.preview-nav{display:flex;justify-content:space-around;border-top:1px solid var(--line);padding:12px 6px;background:var(--cream);gap:4px}.preview-nav>span{display:flex;align-items:center;flex-direction:column;gap:6px;color:var(--muted);font-size:10px}.preview-nav .selected{color:var(--wine);font-weight:600}.preview-nav .icon{width:22px;height:22px}
.preview-outfit{position:relative;background:var(--paper);height:270px;border-radius:14px;margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:15px}.preview-outfit img{width:100%;height:140px;object-fit:contain}.preview-outfit img:nth-child(2){grid-column:2;grid-row:span 2;height:230px}.preview-outfit img:nth-child(3){height:90px}
.preview-look-note{font-size:12px;display:flex;gap:8px;align-items:center;margin:15px 0;color:var(--muted)}.preview-status-dot{width:6px;height:6px;background:var(--wine);border-radius:50%}.preview-save{display:flex;align-items:center;justify-content:space-between;background:var(--wine);color:#fff;padding:13px 15px;border-radius:24px;font-size:13px;margin-top:16px}
.preview-month{display:flex;justify-content:space-between;align-items:center;font-family:var(--serif);font-size:23px;margin-top:23px}.preview-month>span{font:9px var(--sans);letter-spacing:1px;color:var(--muted)}
.preview-week{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin:16px 0}.preview-week>span{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:10px;color:var(--muted);padding:8px 0}.preview-week b{font-size:12px;font-weight:500}.preview-week .selected{background:var(--wine);color:white;border-radius:20px}.preview-day-label{font-size:9px;letter-spacing:1px;margin:15px 0;color:var(--muted)}
.preview-calendar-look{background:var(--paper);border-radius:12px;padding:12px}.preview-calendar-look>div{display:flex;height:130px;gap:8px;justify-content:center}.preview-calendar-look img{width:43%;height:100%;object-fit:contain}.preview-calendar-look h5{font:400 18px var(--serif);margin:12px 0 5px}.preview-calendar-look p{font-size:12px;color:var(--muted)}
.preview-trip-meta{display:flex;justify-content:space-between;margin:20px 0 10px;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:13px}.preview-trip-meta span:last-child{color:var(--muted)}
.preview-packing>div{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:8px 0;font-size:12px}.preview-packing img{width:44px;height:50px;object-fit:contain}.preview-checkbox{margin-left:auto;width:21px;height:21px;display:flex;justify-content:center;align-items:center;flex-shrink:0;border:1px solid #b4a49c;border-radius:5px}.preview-checkbox.checked{background:var(--wine);color:white;border-color:var(--wine)}
.preview-progress{height:4px;background:var(--line);margin-top:20px;border-radius:4px}.preview-progress>span{display:block;width:50%;height:100%;background:var(--wine);border-radius:4px}.preview-progress-label{font-size:12px;color:var(--muted);margin-top:10px}
#screenshot-dialog{max-width:900px;padding:20px}#screenshot-dialog h2{font:400 24px var(--serif);letter-spacing:-.5px}.screenshot-tools{display:flex;align-items:center;gap:14px}#screenshot-zoom{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:13px;border:1px solid var(--line);border-radius:4px;padding:8px 12px}.screenshot-hint{font-size:13px;color:var(--muted);margin:14px 0}.screenshot-viewport{max-height:65svh;overflow:auto;background:var(--paper);padding:20px;border:1px solid var(--line);overscroll-behavior:contain}.screenshot-viewport img{width:540px;max-width:100%;height:auto;margin:0 auto;border-radius:12px}.screenshot-viewport.zoomed img{width:900px;max-width:none;margin:0}.screenshot-viewport:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
.eyebrow{font-size:11px}.section-note{font-size:13px}.chapter-tags span{font-size:11px}.chapter-number{font-size:12px}.story-chapter p{font-size:16px}.travel-copy>p{font-size:16px}.principles p{font-size:15px}.faq-list summary{font-size:15px}.faq-list details>p{font-size:14px}.footer-top p,.footer-top>a:last-child{font-size:13px}.footer-bottom,.footer-bottom button{font-size:12px}.closing-note{font-size:13px}
@media(min-width:1600px){.phone-frame{width:350px}.phone-frame .live-screen{min-height:570px}.preview-piece img{height:115px}}
@media(max-width:1100px){.story-layout{gap:6%}.phone-frame{width:290px}.phone-frame .live-screen{min-height:540px}.preview-content{padding:20px 16px 16px}.preview-topline{margin-bottom:20px}.preview-piece img{height:90px}.sticky-stage{height:715px}.story-chapter{min-height:715px}}
@media(min-width:581px) and (max-width:800px){.story-layout{grid-template-columns:1.05fr 1fr;gap:7%}.phone-frame{width:100%;max-width:290px}.preview-content{padding:18px 12px 14px}.preview-topline>span:last-child{font-size:7px;letter-spacing:.4px}.preview-piece{padding:7px}.preview-piece>span{font-size:12px}.preview-filters{gap:4px}.preview-filters span{padding:7px 9px;font-size:10px}.preview-piece img{height:85px}.story-chapter h3{font-size:34px}.story-chapter p{font-size:14px}.stage-caption{font-size:8px}.screen-caption{font-size:10px}.screen-enlarge{font-size:12px}}
@media(max-width:800px){.header-cta{font-size:12px}.hero-actions .button,.hero-actions .text-button{font-size:12px}.hero-description{font-size:15px}.gallery-layout{gap:24px}.gallery-preview{padding:16px}.gallery-copy>p{font-size:14px}.gallery-tabs button{font-size:12px}.gallery-tabs button span{font-size:10px}.gallery-tabs button .icon{width:16px;height:16px}.chapter-tags span{font-size:10px}}
@media(max-width:580px){.site-header{gap:14px}.site-header .brand img{width:100px}.header-cta{font-size:11px;padding:9px 10px;gap:9px}.header-cta .icon{width:18px;height:18px}.hero-actions{gap:18px}.hero-actions .button,.hero-actions .text-button{font-size:12px;line-height:1.5}.hero-actions .button{gap:14px}.hero-actions .icon{width:20px;height:20px}.hero-description{font-size:15px}.hero .eyebrow{font-size:10px}.hero-art .floating-note{font-size:11px}.note-icon .icon{width:25px;height:25px}.hero-still{transform:none}.look-tabs button{font-size:10px;padding:10px 8px}.playground-top .eyebrow{font-size:9px}.demo-label{font-size:9px}.garment span{font-size:11px}.look-bottom-bar p{font-size:13px}.section-note{font-size:12px}.section-heading>p,.manifesto>p:not(.eyebrow){font-size:14px}.manifesto>.eyebrow{font-size:10px}.phone-frame{width:100%;max-width:320px;min-height:0;flex-shrink:0}.phone-frame .live-screen{min-height:550px}.sticky-stage{height:auto;padding:30px 0;margin:0;gap:0;max-width:100%}.stage-orbit{left:0;right:0;top:25px;height:80%}.stage-caption{font-size:9px}.screen-caption{font-size:11px}.story-dots{margin-top:15px;margin-bottom:0}.story-chapter{min-height:0}.story-chapter p{font-size:15px}.chapter-number{font-size:11px}.travel-copy>p{font-size:15px}.principles p{font-size:14px}.faq-list summary{font-size:14px}.faq-list details>p{font-size:14px}.gallery-layout{padding-top:24px}.gallery-preview{padding:16px}.gallery-preview .live-screen{max-width:350px}.gallery-tabs{gap:0 12px}.gallery-tabs button{min-height:50px;font-size:11px;gap:6px}.gallery-copy .availability-note{font-size:12px}.gallery-preview>p{font-size:12px}.dialog-header .eyebrow{font-size:10px}.dialog-close{width:44px;height:44px}.closing-note{font-size:12px}.footer-top p,.footer-top>a:last-child{font-size:12px}.footer-bottom,.footer-bottom button{font-size:11px}.footer-bottom>span:nth-child(2){display:none}.screenshot-hint{font-size:12px}.screenshot-viewport{padding:8px}#screenshot-dialog{padding:14px}#screenshot-dialog h2{font-size:20px}.screenshot-tools{gap:6px}#screenshot-zoom{font-size:11px;padding:8px}.screenshot-tools .icon{width:18px;height:18px}}
@media(max-width:360px){.site-header{padding-left:18px;padding-right:18px;gap:10px}.site-header .brand img{width:88px}.hero-actions{flex-wrap:wrap;gap:12px}.hero-actions .text-button{padding:12px 0}.look-tabs{flex-wrap:wrap;border-radius:14px;gap:5px}.look-tabs button{flex:1 1 90px}.preview-content{padding:18px 12px 14px}.preview-topline>span:last-child{font-size:7px;letter-spacing:.5px}.preview-heading h4{font-size:29px}.preview-piece{padding:8px}.preview-piece>span{font-size:12px}.preview-piece img{height:85px}.gallery-tabs{grid-template-columns:1fr}.gallery-tabs button{font-size:13px}.gallery-tabs button span{font-size:11px}.preview-filters span{padding:7px 10px;font-size:10px}.gallery-preview{padding:10px}.preview-trip-meta{font-size:12px}.preview-packing>div{font-size:11px;gap:7px}}
@media(prefers-reduced-motion:reduce){.phone-frame{transform:none}.live-screen *{animation:none!important;transition:none!important}}
/* Scope the old screenshot styling away from garment photos and live copy. */
.gallery-preview .live-screen img{border:0;border-radius:0;box-shadow:none;max-height:none}
.gallery-preview .preview-heading p{font-size:13px;text-align:left;padding:0}
.gallery-preview .preview-calendar-look p,.gallery-preview .preview-progress-label{font-size:12px;text-align:left;padding:0}
.dialog-header{position:sticky;top:0;z-index:5;background:var(--cream)}
/* Let the readable app content determine its height; never crop its navigation. */
.phone-frame{position:relative;z-index:1;flex-shrink:0;min-height:0}
.sticky-stage{height:auto;min-height:820px;padding:28px 0}
.stage-caption{position:relative;z-index:1}
.story-chapter{min-height:820px}
@media(min-width:581px) and (max-width:800px){.sticky-stage{position:relative;min-height:800px}.story-chapter{min-height:800px}}
@media(min-width:801px) and (max-height:850px){.sticky-stage{position:relative}}
@media(max-width:580px){.sticky-stage{min-height:0;padding:30px 0}.story-chapter{min-height:0}}
@media(min-width:801px) and (max-width:960px){.desktop-nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:flex;width:32px;height:44px;flex:0 0 auto;flex-direction:column;justify-content:center;gap:6px;padding:0}.menu-toggle span{width:24px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}}
/* Small supporting labels remain legible rather than relying on decorative microtype. */
.art-caption,.art-index{font-size:10px;letter-spacing:1.2px}.scroll-cue{font-size:10px;letter-spacing:1.2px}.demo-label{font-size:11px}.garment span{font-size:14px}.travel-art>.eyebrow,.stage-caption{font-size:10px}.travel-copy .small-copy{font-size:13px}.footer-bottom>span:nth-child(2){font-size:10px}.closing>.eyebrow{font-size:11px}.closing-note{font-size:13px}
@media(max-width:580px){.hero .eyebrow,.manifesto>.eyebrow,.story-heading .eyebrow,.faq-intro>.eyebrow,.playground-top .eyebrow,.closing>.eyebrow{font-size:10px;letter-spacing:1px}.art-caption{font-size:10px;letter-spacing:1px}.art-index{font-size:9px}.look-tabs{flex-wrap:wrap;justify-content:center;border-radius:16px}.look-tabs button{font-size:11px;flex:1 1 100px}.demo-label{font-size:10px}.garment span{font-size:12px}.look-bottom-bar .eyebrow{font-size:10px}.footer-top p,.footer-top>a:last-child{font-size:12px}.gallery-preview{padding:12px}}
@media(max-width:360px){dialog{width:calc(100% - 16px);padding:14px}.gallery-preview{padding:8px}.gallery-tabs{grid-template-columns:1fr 1fr}.gallery-tabs button{font-size:11px}.gallery-tabs button span{font-size:9px}.gallery-copy h2{font-size:30px}}

/* Readable supporting labels without scaling the product artwork. */
.preview-topline>span:last-child{font-size:9px;letter-spacing:.6px}
.preview-eyebrow{font-size:10px}
.preview-nav>span{font-size:11px}
.preview-search{min-height:42px}
.preview-search .icon{width:16px;height:16px}
.faq-list summary>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 21px}
.faq-list summary .icon{width:18px;height:18px}

/* Live status remains accessible without appearing as a development note. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap!important;border:0!important}
