/* Selected direction: quiet evidence after the large opening gesture. */
/* Recovered from the export's .gf treatment: warm-gold edge, inset and marks. */
.breath-gold-frame{position:relative;box-sizing:border-box;padding:clamp(8px,1cqw,14px);background:rgba(20,57,43,.06);border:1px solid rgba(228,176,122,.6);width:100%}
.breath-gold-image{position:relative;overflow:hidden}
.breath-gold-image>img{display:block;width:100%;height:auto;box-shadow:none!important}
.breath-frame-corner{position:absolute;width:15px;height:15px;pointer-events:none;color:#f0a92b}
.breath-frame-corner::before,.breath-frame-corner::after{content:'';position:absolute;background:currentColor}
.breath-frame-corner::before{left:7px;top:0;width:1px;height:15px}
.breath-frame-corner::after{left:0;top:7px;width:15px;height:1px}
.breath-frame-corner:nth-of-type(1){top:-8px;left:-8px}
.breath-frame-corner:nth-of-type(2){top:-8px;right:-8px}
.breath-frame-corner:nth-of-type(3){bottom:-8px;left:-8px}
.breath-frame-corner:nth-of-type(4){bottom:-8px;right:-8px}
#st-frame .person-side .breath-gold-frame{width:fit-content;max-width:100%;margin:0 auto}
#st-frame .person-side .breath-gold-image>img{width:auto!important;max-width:100%;max-height:clamp(130px,17cqw,250px);height:auto!important}
[data-selected-page="index"] figure[data-screen-label="Young people"]{padding:clamp(56px,7cqw,104px) clamp(22px,6cqw,96px)!important;background:#f3efe6!important}
[data-selected-page="index"] figure[data-screen-label="Young people"]>.breath-gold-frame{max-width:1320px;margin:auto}
[data-selected-page="index"] figure[data-screen-label="Young people"]>figcaption{position:static!important;padding:16px 0 0!important;max-width:1320px;margin:auto!important;background:transparent!important}
@media(max-width:760px){
 #st-frame .person-axis>.ov-him>.breath-gold-frame{grid-column:1;grid-row:1 / 3;align-self:start}
 #st-frame .person-archive>.person-side{display:contents!important}
 #st-frame .person-archive figure{padding:8px}
 #st-frame .person-side .breath-gold-frame{width:100%;margin:0}
 #st-frame .person-side .breath-gold-image>img{width:100%!important;max-height:none;height:160px!important;object-fit:contain;object-position:left bottom}
}
body[data-selected-page]:not([data-selected-page="index"]) #st-frame main h1,
body[data-selected-page]:not([data-selected-page="index"]) #st-frame main h2{font-family:'Instrument Serif',Georgia,serif!important;font-weight:400!important;letter-spacing:-.02em!important}
body[data-selected-page]:not([data-selected-page="index"]) #st-frame main h1{font-size:clamp(38px,4.2vw,62px)!important;line-height:1.08!important}
body[data-selected-page="engagement"] [data-screen-label="Services"]>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:56px!important}
.selected-review{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:28px clamp(22px,6vw,96px);background:#f6f3ec;color:#14392b;border-top:1px solid #14392b40;font:12px/1.6 'Instrument Sans',sans-serif}
.selected-review a{text-decoration:underline;text-underline-offset:4px;min-height:32px;display:inline-flex;align-items:center}
.breath-movements,.recovery-process>div:first-child{position:relative}
.breath-rule{position:absolute;top:-1px;left:0;width:100%;height:2px;background:currentColor;transform-origin:left;pointer-events:none}
.breath-record figure{position:relative;min-width:0}
.breath-record figure>img{height:auto!important;object-fit:contain!important}
.breath-photo-frame{position:relative;isolation:isolate}
.breath-photo-frame>img{display:block;width:100%;height:auto}
.breath-cutaway{position:absolute;left:0;bottom:0;right:0;background:#f6f3ec;color:#14392b;padding:22px 24px;font:13px/1.6 'Instrument Sans',sans-serif;clip-path:inset(100% 0 0);visibility:hidden;transition:clip-path .35s ease,visibility .35s}
.breath-photo-frame.is-open .breath-cutaway{clip-path:inset(0);visibility:visible}
.breath-record figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
.breath-photo-toggle{border:0;border-bottom:1px solid currentColor;background:transparent;color:inherit;min-height:44px;min-width:44px;padding:6px 0;font:12px/1.4 'Instrument Sans',sans-serif;cursor:pointer}
[data-selected-page] :focus-visible{outline:2px solid #14392b;outline-offset:4px;box-shadow:0 0 0 6px #f6f3ec}
@media(min-width:761px){
 .breath-record{align-items:center!important;gap:clamp(40px,6vw,96px)!important;padding:clamp(48px,5vw,80px) 0!important}
 .breath-record figcaption{max-width:64ch;line-height:1.7!important}
 .breath-joy-pair{padding:24px 0}
}
@media(max-width:760px){
 body[data-selected-page]:not([data-selected-page="index"]) #st-frame header nav{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px!important;width:100%;align-items:center}
 body[data-selected-page]:not([data-selected-page="index"]) #st-frame header nav a{display:flex;align-items:center;min-height:44px;box-sizing:border-box}
 body[data-selected-page="engagement"] [data-screen-label="Services"]>div{grid-template-columns:1fr!important;row-gap:36px!important}
 .breath-record{gap:24px!important}
 .breath-record figure{order:0}
 .breath-record>div{order:1}
 .breath-cutaway{padding:16px;font-size:11px}
}
/* Controls respond without shifting their targets or dimming their labels. */
body[data-selected-page] :is(.envelope-controls button,.breath-photo-toggle){border-bottom-color:transparent}
body[data-selected-page] :is(nav a,.direction-actions a,.envelope-controls button,.breath-photo-toggle){
 text-decoration-line:underline;text-decoration-color:transparent;
 text-decoration-thickness:1px;text-underline-offset:.25em;
 transition:text-decoration-color .15s ease;
}
body[data-selected-page] :is(nav a,.direction-actions a,.envelope-controls button,.breath-photo-toggle):focus-visible{
 text-decoration-color:currentColor;
}
@media(hover:hover){
 body[data-selected-page] :is(nav a,.direction-actions a,.envelope-controls button,.breath-photo-toggle):hover{text-decoration-color:currentColor}
}
@media(prefers-reduced-motion:reduce){
 .breath-cutaway{transition:none}
 body[data-selected-page] :is(nav a,.direction-actions a,.envelope-controls button,.breath-photo-toggle){transition:none}
}

/* September 16: source-directed revisions, using the incumbent palette and type. */
.movement-emblem{display:inline-block;width:.5em;height:auto;vertical-align:baseline;position:relative;top:-.5em;margin-left:.12em;overflow:visible}
body[data-selected-page]{--fbb-emblem-color:#87509e}
body[data-selected-page] svg[viewBox="0 0 104 100"]{color:var(--fbb-emblem-color)}
.revision-prose{font-size:17px;line-height:1.8;max-width:72ch;margin:0 0 24px}
#st-frame .revision-about-prose{max-width:1060px;margin:auto}
#st-frame .revision-about-prose h2{margin:0 0 28px;font-size:clamp(30px,3.2vw,44px)!important;line-height:1.12;max-width:16em}
#st-frame .revision-about-prose h3,.revision-label{font:500 11px/1.5 'Instrument Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;margin:40px 0 16px}
#st-frame .revision-about-prose h3{clear:none}
.revision-about-opening{max-width:1280px;margin:0 auto 48px}
.revision-about-opening h1{margin:0 0 32px}
.revision-photo{margin:0}
.revision-photo>img{display:block;width:100%;height:auto}
.revision-photo>figcaption{margin:12px 0 0;font-size:11px;line-height:1.65;letter-spacing:.045em}
.revision-about-opening .revision-photo{max-width:960px;margin:auto}
.revision-about-closing{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:40px;align-items:end;clear:both;padding-top:24px}
.revision-about-closing figure{max-width:380px}
.revision-splash{margin:0 0 48px}
.revision-splash-surface{position:relative}
.revision-splash-surface>img{display:block;width:100%;height:auto}
.revision-splash-copy{position:absolute;left:24px;top:24px;width:min(530px,60%);padding:clamp(20px,3vw,42px);box-sizing:border-box;background:#f3efe6;color:#14392b}
#st-frame .revision-splash-copy h1{font-size:clamp(30px,3.2vw,48px)!important;margin:0!important;text-align:left!important;text-wrap:pretty!important}
.revision-splash-copy p:first-child{margin:0 0 18px!important;text-align:left!important}
.revision-splash-copy p:last-child:not(:first-child){margin:22px 0 0!important;font-size:15px!important;text-align:left!important}
.revision-splash>figcaption{margin:12px 0 0;font-size:11px;line-height:1.65;letter-spacing:.045em}
#st-frame .revision-text-record{display:block!important}
.revision-text-record>div{max-width:70ch}
.revision-participation{margin:32px 0 64px}
.revision-joy{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(32px,5vw,72px);align-items:center;background:#14392b;color:#f3efe6;padding:clamp(48px,6vw,88px) clamp(22px,6vw,96px)}
.revision-joy .revision-label{margin:0 0 20px}
#st-frame .revision-joy h2{font:400 clamp(32px,4vw,54px)/1.08 'Instrument Serif',Georgia,serif;margin:0 0 28px}
.revision-joy p:not(.revision-label){font-size:17px;line-height:1.7;max-width:40ch}
.revision-joy a{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;border-bottom:1px solid currentColor}
.revision-joy figcaption{color:#f3efe6}
[data-selected-page="civic"] .revision-joy{margin:64px 0}
[data-selected-page="contact"] #st-frame main{background:#14392b!important;color:#f3efe6!important}
[data-selected-page="contact"] #st-frame [style*="border-top"],[data-selected-page="contact"] #st-frame [style*="border-bottom"]{border-color:#f3efe650!important}
[data-selected-page="contact"] #st-frame input,[data-selected-page="contact"] #st-frame textarea{color:#f3efe6!important;border-color:#f3efe680!important;background:#14392b!important}
[data-selected-page="contact"] #st-frame input::placeholder,[data-selected-page="contact"] #st-frame textarea::placeholder{color:#f3efe6b3;opacity:1}
[data-selected-page="contact"] [data-preview-form]>p,[data-selected-page="contact"] [data-inquiry-ready]>p{color:#f3efe6!important}
[data-selected-page="contact"] [data-preview-form] button,[data-selected-page="contact"] [data-inquiry-ready] button{background:#f3efe6!important;color:#14392b!important;border-color:#f3efe6!important}

.compliance-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px 28px;align-items:baseline;padding:22px clamp(20px,4vw,64px);background:#14392b;color:#f3efe6;border-top:1px solid rgba(243,239,230,.28);font-size:13px;line-height:1.5}
.compliance-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px}
.compliance-footer a{color:inherit;text-underline-offset:4px}
.compliance-footer a[aria-current="page"]{font-weight:600;text-decoration-thickness:2px}
.compliance-footer p{margin:0}
.compliance-masthead{display:flex;justify-content:space-between;gap:24px;padding:24px clamp(20px,4vw,64px);background:#f3efe6;color:#14392b;border-bottom:1px solid rgba(20,57,43,.24);font-size:14px}
.compliance-page{min-height:70vh;padding:clamp(56px,8vw,112px) clamp(20px,8vw,144px);background:#f3efe6;color:#14392b}
.compliance-page>h1{max-width:12em;margin:0 0 12px;font:400 clamp(44px,7vw,92px)/.94 'Instrument Serif',Georgia,serif;letter-spacing:-.035em}
.compliance-kicker{margin:0 0 22px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.compliance-effective{margin:0 0 clamp(48px,7vw,88px);font-size:14px}
.compliance-page section{display:grid;grid-template-columns:minmax(150px,260px) minmax(0,680px);gap:20px clamp(28px,6vw,96px);max-width:1080px;padding:28px 0;border-top:1px solid rgba(20,57,43,.25)}
.compliance-page section h2{margin:0;font:400 clamp(23px,2.4vw,31px)/1.05 'Instrument Serif',Georgia,serif}
.compliance-page section p{margin:0;font-size:16px;line-height:1.72}
.compliance-page a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}
@media(max-width:680px){.compliance-page section{grid-template-columns:1fr;gap:10px}.compliance-footer{align-items:flex-start;flex-direction:column}}
#st-frame .revision-contact-home{background:#14392b!important;color:#f3efe6!important}
#st-frame .revision-contact-home p,#st-frame .revision-contact-home a{color:#f3efe6!important}
#st-frame .revision-contact-home [style*="border"]{border-color:#f3efe680!important}
@media(max-width:760px){
 .revision-splash-copy{position:static;width:100%;padding:24px 0 0}
 #st-frame .revision-splash-copy h1{font-size:clamp(30px,8vw,44px)!important}
 .revision-about-opening{margin-bottom:32px}
 .revision-about-closing{grid-template-columns:1fr;gap:24px}
 .revision-joy{grid-template-columns:1fr;gap:32px}
 [data-selected-page="civic"] .revision-joy{padding:32px 22px}
}

/* Owner placement: lower-right Engagement caption, clear of performer faces. */
@media(min-width:761px){
 body[data-selected-page="engagement"] .revision-splash-copy{left:auto;top:auto;right:6px;bottom:6px;width:min(480px,55%);padding:clamp(16px,1.7vw,24px)}
 body[data-selected-page="engagement"] #st-frame .revision-splash-copy h1{font-size:clamp(26px,2.8vw,40px)!important}
}

/* Surname follows the settled hero name; original name geometry stays fixed. */
.direction-surname{position:absolute;left:4vw;top:calc(56% + clamp(70.2px,12.48vw,179.4px) + 8px);width:max-content;max-width:calc(100% - 8vw);margin:0;font:400 clamp(90px,16vw,230px)/.95 'Instrument Serif',Georgia,serif;letter-spacing:-.035em;white-space:nowrap}
/* Invisible type measure centers the surname on the word, excluding its icon. */
.direction-surname::before{content:"Freedome";display:block;visibility:hidden;height:0;pointer-events:none}
.direction-surname span{display:block;text-align:center;font:400 clamp(22px,3vw,44px)/1.1 'Instrument Serif',Georgia,serif;letter-spacing:.015em}
@media(max-width:760px){.direction-surname{left:22px;max-width:calc(100% - 44px);top:calc(55% + 15.834vw + 6px);font-size:20.3vw}.direction-surname span{font-size:clamp(18px,5.7vw,32px)}}

/* Full-frame, two-person photograph closes About above its contact links. */
body[data-selected-page="about"] .revision-about-closing--landscape{display:block}
body[data-selected-page="about"] .revision-about-closing--landscape figure{width:100%;max-width:720px}
body[data-selected-page="about"] .revision-about-closing--landscape>div{margin-top:24px}
@media(max-width:760px){body[data-selected-page="about"] .revision-about-closing--landscape figure{max-width:100%}}

/* Solo portrait introduces the practice; documentary images keep their own sequence. */
body[data-selected-page="about"] .revision-about-intro{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(32px,5vw,72px);align-items:start;margin-bottom:56px}
body[data-selected-page="about"] .revision-about-intro .revision-about-suit{width:100%;max-width:320px;margin:0;float:none}
body[data-selected-page="about"] .revision-about-intro .revision-about-suit img{display:block;width:100%;height:auto}
@media(max-width:760px){body[data-selected-page="about"] .revision-about-intro{grid-template-columns:1fr;gap:28px;margin-bottom:40px}body[data-selected-page="about"] .revision-about-intro .revision-about-suit{justify-self:center}}

/* Short laptop screens need room between the surname and the introduction. */
@media(min-width:1100px) and (max-height:850px){.direction-surname span{font-size:36px}#st-frame main .direction-statement{bottom:9.5%;font-size:28px!important}}

/* Short laptop windows use the existing static opening and need room for the name lockup. */
@media(min-width:761px) and (max-height:740px){
 .directions-enhanced .direction-stage{height:auto}
 .directions-enhanced .direction-hero{position:relative;min-height:760px}
}

/* Keep the introduction close to the surname at every viewport height. */
#st-frame main .direction-statement{top:calc(56% + clamp(70.2px,12.48vw,179.4px) + clamp(24.2px,3.3vw,48.4px) + 26px);bottom:auto}
@media(min-width:1100px) and (max-height:850px){#st-frame main .direction-statement{top:calc(56% + clamp(70.2px,12.48vw,179.4px) + 65.6px)}}
@media(max-width:760px){#st-frame main .direction-statement{top:calc(55% + 15.834vw + clamp(19.8px,6.27vw,35.2px) + 24px)}}

/* A letter-shaped halo preserves contrast over the photograph without a panel. */
#st-frame main .direction-statement{text-shadow:0 1px 2px rgba(8,20,15,.95),0 0 6px rgba(8,20,15,.75)}

/* Lower the settled name beneath the foreground dancer's collarbone. */
.direction-name{top:56%}
body[data-selected-page="index"] .direction-hero{min-height:960px}
@media(max-width:760px){
 .direction-name{top:55%}
 body[data-selected-page="index"] .direction-hero{min-height:880px}
}
@media(min-width:621px) and (max-width:760px){
 body[data-selected-page="index"] .direction-hero{min-height:980px}
}

/* Consultation requests use the existing green contact surface. */
.consultation-intro{max-width:44em;font-size:18px;line-height:1.6;margin:-24px 0 40px}
.consultation-field{display:block;font-size:14px}
.consultation-field>span{display:block;margin-bottom:8px}
.consultation-field small{font-size:inherit}
[data-selected-page="contact"] #st-frame .consultation-field :is(select,textarea){font:inherit;font-size:17px;width:100%;box-sizing:border-box;padding:13px 14px;color:#f3efe6;background:#14392b;border:1px solid #f3efe680;border-radius:0;line-height:1.55}
.consultation-field textarea{resize:vertical}
.consultation-note{margin:0;font-size:13px;line-height:1.6}
#consultation-request{scroll-margin-top:24px}
