/* Flower-filled compositions, with practical information in the foreground.
   Enhancements never gate access to content or remove decorative artwork. */
:root { --ink-soft:#59454e; --space-section:clamp(60px,7vw,108px); }
.js .reveal,.js .reveal.is-in { opacity:1; transform:none; transition:none; }
.section--tight { padding-block:clamp(40px,5vw,72px); }
.lede,.fineprint,.workspace-footnote,.window-location,.site-footer__where { color:var(--ink-soft); }
.site-nav a,.workspace-toolbar,.workspace-folder>span:last-child,.workspace-dock button { color:var(--ink); }
.site-header__cta { background:var(--burgundy); color:var(--ivory); border-color:var(--burgundy); box-shadow:0 3px 0 #401a29; }
.site-header__cta:hover { background:#502034; color:var(--ivory); }
.btn:focus-visible,button:focus-visible,a:focus-visible { outline:2px solid var(--burgundy); outline-offset:5px; }
.site-footer__top { grid-template-columns:minmax(0,1.25fr) minmax(190px,.8fr) minmax(240px,1fr); gap:clamp(28px,4vw,64px); align-items:start; }
.site-footer__top>* { min-width:0; transform:none; }
.site-footer__col { line-height:1.6; }
.site-footer__col .label { margin-bottom:16px; color:var(--burgundy); }
.site-footer__col li+li { margin-top:4px; }
.site-footer__col a { display:inline-block; padding:8px 0; max-width:100%; overflow-wrap:anywhere; color:var(--ink); }
.site-footer__col a::before { content:none; }
.site-footer__where { margin-top:18px; line-height:1.7; overflow-wrap:anywhere; }
.site-footer__bottom { flex-wrap:wrap; gap:16px 28px; line-height:1.7; }
.workspace-intro { padding-block:42px 22px; }
.workspace-intro .lede { margin-top:18px; }
.workspace-files { padding-block:38px 24px; min-height:420px; }
.workspace-folder strong { color:#30252a; font-size:16px; line-height:1.4; max-width:100%; }
.workspace-folder>span:last-child { font-size:12px; line-height:1.55; }
.workspace-folder:is(:focus-visible,.is-active) { border-radius:14px; outline:2px solid #692a42; outline-offset:3px; background:#faf7f180; }
.workspace-folder .folder-front__stamp { text-shadow:0 1px 2px #151515; }
.studio-window__bar { box-shadow:inset 0 1px #fff,0 2px 8px #30252a10; z-index:2; }
.studio-window__close { flex-shrink:0; }
.orchid-pair,.orchid-companion,.circle-still-life__extra,.contact-phone__flower,.svc-orchid { pointer-events:none; }
.page-circle .circle-card--casting-board { min-height:0; }
@media(max-width:1100px) {
 .site-footer__top { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .site-footer__brand { grid-column:1/-1; }
 .hero2__orchid { display:block; width:180px; justify-self:end; grid-column:2; margin-top:-18px; }
}
@media(max-width:700px) {
 :root { --space-section:56px; }
 .site-footer__top { grid-template-columns:minmax(0,1fr); gap:30px; }
 .site-footer__brand { grid-column:auto; }
 .site-footer__col a { min-height:44px; }
 .hero2__copy { gap:20px; }
 .hero2__orchid { display:block; grid-column:1; justify-self:end; width:clamp(150px,48vw,205px); margin:0 8px -8px 0; }
 .playground-intro__art { display:grid; grid-template-columns:1fr 1fr; gap:6px 12px; padding:12px 0; align-items:center; }
 .playground-intro__art>.orchid-pair { width:170px; max-width:100%; height:175px; grid-row:span 2; }
 .playground-intro__art>.orchid-pair>.original-page-element { width:100%; height:175px; object-fit:contain; }
 .playground-intro__art .script { margin:0; font-size:26px; }
 .playground-intro__art .sample-stamp { margin:0; font-size:9px; text-align:center; }
 .workspace-intro { padding-block:30px 18px; }
 .workspace-files { min-height:0; gap:26px 8px; padding:28px 10px 20px; }
 .workspace-folder { padding:8px 3px; }
 .workspace-folder strong { font-size:14px; }
 .workspace-folder>span:last-child { font-size:12px; }
 .workspace-dock { padding:10px 8px; gap:2px; }
 .workspace-dock button { min-width:0; padding:5px 7px; font-size:11px; min-height:60px; }
 .studio-window { max-height:calc(100dvh - 24px - env(safe-area-inset-bottom)); }
 .studio-window__bar { padding-top:max(8px,env(safe-area-inset-top)); }
}
@media(prefers-reduced-motion:reduce) {
 .page-art-motion { opacity:1!important; animation:none!important; }
 .js .reveal { opacity:1!important; transform:none!important; }
}

/* Final editorial pass: white page grounds, tactile materials kept intact.
   Canvas palettes are visitor artwork and deliberately retain their own colors. */
body, .site-header, .hero2, .site-footer,
main>.on-paper, main>.on-blush, main>.on-lilac, main>.on-ivory,
main>.section.on-paper, main>.section.on-blush, main>.section.on-lilac, main>.section.on-ivory { background:#fff; }
@media(max-width:900px) { .js .site-nav__panel { background:#fff; } }
.final-notes { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.2fr); gap:clamp(24px,6vw,80px); padding-block:clamp(36px,5vw,72px); border-top:1px solid var(--line); }
.final-notes__heading p:last-child { margin-top:16px; color:var(--ink-soft); max-width:38ch; line-height:1.7; }
.final-notes__stack { display:grid; align-content:start; gap:14px; }
.studio-note { background:linear-gradient(120deg,#fff,#fcf6f8); border:1px solid #d9c6cf; border-radius:4px 14px 14px 4px; box-shadow:2px 3px 0 #ede3e8,0 9px 20px #692a4209; overflow:hidden; }
.studio-note summary { display:flex; justify-content:space-between; align-items:center; gap:16px; list-style:none; padding:20px 22px; min-height:64px; cursor:pointer; font-weight:600; line-height:1.5; color:var(--burgundy); }
.studio-note summary::-webkit-details-marker { display:none; }
.studio-note summary::after { content:'+'; font-size:24px; font-weight:400; flex-shrink:0; }
.studio-note[open] summary::after { content:'−'; }
.studio-note[open] { box-shadow:2px 3px 0 #e5ced9,0 12px 28px #692a4212; }
.studio-note[open] summary { border-bottom:1px solid #eadce2; }
.studio-note>div { padding:18px 22px 24px; color:var(--ink); line-height:1.8; }
.studio-note p+p { margin-top:12px; }
.studio-note .link-arrow { display:inline-flex; align-items:center; margin-top:16px; min-height:44px; border:0; background:none; font:600 14px var(--font-body); color:var(--burgundy); cursor:pointer; text-align:left; }
.workspace-folder>span:last-child { max-width:26ch; }
@media(hover:hover) { .studio-note summary:hover { background:#f8e5ec66; } }
@media(max-width:700px) { .final-notes { grid-template-columns:minmax(0,1fr); gap:24px; }.studio-note summary { padding:17px; font-size:15px; }.studio-note>div { padding:17px; font-size:15px; } }
@media(prefers-reduced-motion:no-preference) { .studio-note[open]>div { animation:note-reveal .22s ease-out; } @keyframes note-reveal { from {transform:translateY(-5px)} to {transform:none} } }
@media(min-width:1001px) { .workspace-files { grid-template-columns:repeat(4,minmax(0,1fr)); } }

/* Final polish: no lone words on heading lines, calmer paragraph rag,
   and comfortable tap sizes for text links. */
h1, h2, h3, .h1, .h2, .h3, .display, .statement, .cta__title, .pullquote blockquote, .lede { text-wrap: balance; }
p, li, dd, summary { text-wrap: pretty; }
.link-arrow { min-height: 44px; padding-bottom: 0; background-position: 0 calc(50% + .78em); }
.contact__details dd a { display: inline-block; padding-block: 10px; margin-block: -10px; }
.process__note { margin-top: 1em; }
@media (max-width: 700px) { .services-hero__grid .stage3d.sys { height: 220px; margin-bottom: -20px; } }
