/* WCAG 2.2: strong contrast, visible focus, reflow and comfortable targets. */
:root{--muted:#425549;--ink:#193c30;--focus:#0b5795;--line:#778679}
html{scroll-padding-top:7rem}body{font-size:16px;line-height:1.65}p,li{overflow-wrap:anywhere}img{max-width:100%;height:auto}main,section,article,fieldset,.app-shell,.create-layout,.creator,.concept-column,.workspace-data>*{min-width:0}h1,h2,h3{overflow-wrap:break-word}h1{line-height:1.13}h2{line-height:1.25}
:where(button,input,select,summary,.button){min-height:44px}input,select,textarea{font-size:16px;max-width:100%;color:#193c30;background:#fffefa;border:1px solid #637567}input::placeholder{color:#526156;opacity:1}input[type=checkbox]{min-height:24px;min-width:24px;accent-color:#193c30;vertical-align:middle}button,.button{white-space:normal}button:disabled{opacity:1;background:#e1e5dc;color:#526156;cursor:not-allowed}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--focus);outline-offset:4px;box-shadow:0 0 0 2px #fffefa}a:not(.button):not(.brand){text-underline-offset:.22em}p a,li a,.text-link,.text-button,.secondary-link{text-decoration:underline}a:not(.brand):hover{text-decoration:underline}summary{cursor:pointer;padding:10px 0}details p{margin:12px 0}
.skip-link:focus{position:fixed;z-index:1000;top:12px;left:12px;clip:auto;overflow:visible;width:auto;height:auto;white-space:normal;background:#fffefa;color:#193c30;padding:14px}
.eyebrow,.small,.microcopy,.field-help,.optional,.pill,.art-note,.chapter,.sidebar-label,.hero-proof,.hero-art-note,.small-note,.data-note,.brand small,.footer-bottom,.site-footer nav a,footer,footer p,.support,.session-status{font-size:14px;line-height:1.65;letter-spacing:normal}.sidebar-label,.sidebar nav a,.sidebar-note,.sidebar-note a,.sidebar .support-link{color:#f6f5ef}.sidebar nav a{font-size:16px}.sidebar a:focus-visible{outline-color:#fffefa;box-shadow:0 0 0 2px #193c30}.sidebar{overflow:auto}.hero-content{max-width:780px}.hero-shade{background:linear-gradient(90deg,rgba(10,30,24,.94) 0%,rgba(10,30,24,.88) 53%,rgba(10,30,24,.35) 100%)}.hero p,.hero-proof,.hero-art-note,.hero .app-link,.hero-bottom{color:#fffefa}.hero-habitats button{background:#173a2e;color:#fffefa;border-color:#fffefa}.hero-habitats button[aria-pressed=true]{background:#f6f5ef;color:#193c30}.hero-proof{gap:14px}.hero-bottom{background:#112d24;padding:12px 24px}.hero-art-note{position:static}.hero .eyebrow{color:#fffefa}.hero-content .hero-description{max-width:490px}.hero-bottom a{min-height:44px;display:inline-flex;align-items:center}.site-header{height:auto;min-height:88px}.site-footer nav a,.mode-nav a{min-height:44px;display:inline-flex;align-items:center}.desktop-nav a,.header-actions a,.legal-nav a{min-height:44px;display:inline-flex;align-items:center}.page-heading p,.field-help,.concept-caption p,.plan-description,.microcopy,.dialog-intro,.tip p,.billing-assurance p,.studio-footnote,.breadcrumb,.file-details,.account-card>p,.intro p,.small,.support,.panel p,.data-status,.data-note{color:#425549}.topbar{flex-wrap:wrap;height:auto;min-height:84px}.topbar-actions{flex-wrap:wrap}.library-tools{display:grid;grid-template-columns:1fr 2fr;gap:12px;margin:20px 0}.library-tools p{grid-column:1/-1}.checkbox-label{display:flex;align-items:center;gap:10px}.gallery figcaption{display:grid;gap:12px;padding:18px}.gallery figcaption p{margin:0}.gallery figure{min-width:0}.gallery input{width:100%;margin:8px 0}.gallery img{aspect-ratio:1;object-fit:cover}.gallery details{overflow-wrap:anywhere}.help-nav{display:flex;flex-wrap:wrap;gap:16px}.help-nav a{min-height:44px;display:inline-flex;align-items:center}.help-page .panel p,.help-page li{font-size:16px}.help-page .panel{scroll-margin-top:24px}.help-page main{max-width:980px;padding-bottom:32px}.help-page footer a{display:inline-block;margin-right:16px;min-height:44px}.help-page .panel p+p{margin-top:16px}.help-page h2{margin-top:8px}.mode-nav{flex-wrap:wrap}.account-card{min-width:0}.style-options button{min-height:64px}.style-options button span{font-size:14px;color:#425549}.brand small{font-size:11px}.studio-footnote{font-size:14px}.site-footer nav span,.footer-bottom p{font-size:14px;color:#425549}
@media(max-width:800px){.hero-shade{background:rgba(10,30,24,.85)}.hero-content{padding-top:50px;padding-bottom:125px}.hero{min-height:900px;height:auto}.hero-proof{flex-wrap:wrap}.hero-bottom{padding:12px 20px;gap:12px;flex-wrap:wrap}.hero-art-note{max-width:100%}.hero h1{font-size:clamp(42px,12vw,72px)}.header-actions{gap:8px}.site-header{padding:16px}.brand{font-size:25px}.brand-mark{font-size:29px}.hero-lede{font-size:20px}.topbar{padding:16px;gap:12px}.breadcrumb{font-size:14px}.page-heading h1{font-size:clamp(32px,8vw,48px)}.generate-actions{flex-wrap:wrap}.generate-actions button{flex:1 1 180px}.library-tools{grid-template-columns:1fr}.billing-tabs{display:flex;flex-wrap:wrap}.account-card{padding:24px 20px}.hero-proof span+span:before{display:none}.workspace-summary{grid-template-columns:1fr}.sidebar nav{flex-wrap:wrap}.sidebar nav a{min-width:0}.sidebar{overflow:visible}.concept-caption{padding:24px}.page-heading{flex-wrap:wrap}.site-footer .footer-bottom{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){button,.button,input,select,.panel{border:1px solid CanvasText}:focus-visible{outline:3px solid Highlight;box-shadow:none}}
/* Override legacy compact type rules at every breakpoint. */
body p,body li,body label,body input,body select,body button,body .button,body summary{font-size:16px!important;line-height:1.65}body small,body .eyebrow,body .microcopy,body .field-help,body .pill,body .optional,body .art-note,body .chapter,body .sidebar-label,body .hero-art-note,body .small-note,body .habitat-note,body .habitat-disclaimer,body .renewal,body .pricing-status,body .feature-number,body .preview-topbar,body .preview-topbar span,body .preview-caption span{font-size:14px!important;line-height:1.65}body .brand small{font-size:11px!important}body .hero .hero-lede{font-size:22px!important}body .hero .eyebrow{color:#fffefa}body .hero-description{font-size:16px!important}body .habitat-card p,body .habitat-note,body .habitat-disclaimer,body .feature-number,body .plan-card .eyebrow,body .preview-topbar,body .preview-caption span{color:#425549}body .text-link,body .app-link,body .habitat-cta,body .pricing-alternative a{font-size:16px!important}.header-actions .button{font-size:14px!important}.pricing-note a,.pricing-note{font-size:14px!important}.hero-habitats{flex-wrap:wrap}.hero-content{padding-bottom:140px}.how-section p,.how-section .eyebrow{color:#fffefa!important}.preview-dots{color:#425549!important}.site-footer .help-nav{padding:16px 0}
@media(max-width:450px){.header-actions .sign-in{display:none}.hero{min-height:1100px}.hero-content{padding:48px 22px 160px}.hero-proof{display:grid}.site-header .brand small{font-size:9px!important}.header-actions .button{padding:10px}.header-actions{gap:4px}.site-header{gap:8px}.site-header .brand{font-size:24px}.site-header .brand-mark{font-size:28px}.hero-bottom{align-items:flex-start}.hero-bottom>*{font-size:14px!important}}
body .preview-bar,body .preview-bar span,body .preview-label,body .preview-label span{font-size:14px!important;color:#425549}.how-section p,.how-section .eyebrow,#how p,#how .eyebrow{color:#fffefa!important}.price-card .eyebrow,.price-card .renewal{color:#425549!important}.product-strip{font-size:14px;flex-wrap:wrap}.help-nav a{font-size:16px}main>p{font-size:16px!important}.hero{max-height:none}
body .eyebrow,body .pill,body .breadcrumb span,body footer,body footer a,body footer span,body h1 em,body h2 em{color:#425549}body .hero h1 em{color:#f6f5ef}body #how h2 em,body #how .eyebrow{color:#fffefa}body .gallery figcaption strong,body .gallery figcaption a{font-size:16px}.gallery{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.checkbox-label{grid-column:1/-1;justify-content:flex-start}.checkbox-label input[type=checkbox]{width:24px!important;height:24px;flex:0 0 24px;margin:0}.sidebar .support-link{font-size:16px}.sidebar-note a{font-size:14px}.brand small{line-height:1.8!important}
/* Maintain enhanced text contrast on the tinted marketing panels. */
body .preview-bar,body .preview-bar span,body .preview-label,body .preview-label span,body .closing-cta p,body .closing-cta .eyebrow,body .product-strip span{color:#34483b}body #how li>span{color:#e7eddc;font-size:14px}
body .closing-cta p,body #session-status{color:#34483b!important}
body .account-card #description,body .terms-row label,body .terms-row a,body .account-card .steps li,body .mode-nav a:not([aria-current=page]){color:#34483b}body header>a:not(.brand){font-size:16px;color:#34483b}
body .app-shell .eyebrow{color:#34483b!important}
body .step-number,body .optional,body .style-options button strong,body .style-options button span,body .habitat-options button:not([aria-pressed=true]){color:#34483b!important}body .style-options button strong{font-size:16px}body .step-number{font-size:14px;min-width:24px}
body .habitat-filters button:not([aria-pressed=true]){color:#34483b}body .habitat-filters button{min-height:44px}
body .style-options button span{opacity:1}
body #workspace-email,body #membership-expiry,body .workspace-summary span,body .workspace-summary a,body .workspace-heading h1 em,body .workspace-action:not(.featured) p,body .data-title span,body .data-title a{color:#34483b!important}body .workspace-summary span,body .workspace-summary a,body .data-title span,body .data-title a{font-size:16px!important}body .workspace-action.featured p{color:#fffefa}
body #how li>span{min-width:28px;white-space:nowrap}
body .workspace-action p{opacity:1}
/* Keep viewport alignment outside the text box so wide screens cannot consume its content width. */
body .hero-content{width:min(780px,100%);max-width:780px;margin-left:max(0px,calc((100vw - 1344px)/2));padding-left:32px;padding-right:32px}
@media(max-width:800px){body .hero-content{margin-left:0;padding-left:28px;padding-right:28px}}
@media(max-width:450px){body .hero-content{padding-left:22px;padding-right:22px}}
