/* Supplied Research annotations only; existing colors, fonts and controls retained. */
.rd-page .rd-visual.has-photo{padding:0;overflow:hidden;position:relative}
.rd-page .rd-visual.has-photo::before,.rd-page .rd-visual.has-photo::after{display:none}
.rd-page .has-photo img{display:block;width:100%;height:100%;object-fit:cover}
.rd-page .rd-hero-photo{display:flex;align-items:center}
.rd-page .rd-hero-photo>.has-photo{width:100%;height:auto;min-height:0;aspect-ratio:3/2;border-radius:var(--nuvora-radius-card)}
.rd-page .rd-themes .rd-intro>p:last-child{max-width:740px;margin-inline:auto;text-wrap:pretty}
.rd-page .rd-theme{min-width:0}
.rd-page .rd-theme h3{font-size:clamp(24px,2.3vw,34px);line-height:1.15}
.rd-page .rd-theme .has-photo{display:block}
.rd-page .rd-theme:nth-child(3) .has-photo img{object-position:50% 35%}
.rd-page .rd-stage-grid.enhanced .rd-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.rd-page .rd-stage-grid.enhanced .rd-stage .rd-visual.has-photo{border-radius:24px;height:340px;min-height:310px;grid-row:1/4;align-self:center;background:transparent}
.rd-page .rd-stage-grid.enhanced .rd-stage .has-photo img{object-fit:contain}
.rd-page .rd-role{min-width:0}
.rd-page .rd-role h3{font-size:clamp(24px,2.2vw,32px);line-height:1.15}
.rd-page .rd-role p{line-height:1.75;text-wrap:pretty}
.rd-page .rd-collab .rd-intro>p:last-child{max-width:790px}
.rd-page .rd-intention-copy p+p{margin-top:24px}
.rd-page .rd-intention-photo{overflow:hidden}
/* The supplied courtyard reference includes a small carousel arrow/dots. Crop these edges in the display frame while retaining the original asset. */
.rd-page .rd-intention-photo img{width:108%;max-width:none;margin-left:-4%;height:100%;object-fit:cover;object-position:50% 44%}
@media(max-width:700px){
 .rd-page .rd-hero-photo>.has-photo{height:auto;min-height:0}
 .rd-page .rd-stage-grid.enhanced .rd-stage .rd-visual.has-photo{height:300px;min-height:0;width:100%;border-radius:24px}
 .rd-page .rd-stage-grid.enhanced .rd-stage h3{line-height:1.15}
 .rd-page .rd-theme h3{font-size:32px}
 .rd-page .rd-intention-copy h2{font-size:clamp(40px,10vw,60px)}
}
@media(max-width:480px){.rd-page .rd-role-grid{grid-template-columns:minmax(0,1fr)}}


.rd-page{--rd-spring:cubic-bezier(.34,1.56,.64,1);--rd-ease:cubic-bezier(.22,1,.36,1)}

/* Hero: the photo fills its half (it used to float in it). */
.rd-page .rd-hero-photo{position:relative;padding:clamp(16px,2.2vw,32px);align-items:stretch}
.rd-page .rd-hero-photo>.has-photo{flex:1;width:100%;height:auto;min-height:clamp(340px,40vw,620px);aspect-ratio:auto;border-radius:clamp(26px,3vw,40px);box-shadow:0 30px 60px -28px rgba(59,0,27,.5)}
.rd-page .rd-hero-photo .has-photo img{object-position:50% 46%}

/* Themes: a bento gallery. Two wide-and-tall photos lead, then three portraits; every photo is several times larger. */
.rd-page .rd-theme-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,1.7vw,24px)}
.rd-page .rd-theme{position:relative;display:flex;flex-direction:column;grid-column:span 4;min-width:0;padding:clamp(12px,1.2vw,18px);border:0;border-radius:clamp(24px,2.4vw,34px);background:var(--paper);transition:translate .5s var(--rd-spring),box-shadow .5s var(--rd-ease)}
.rd-page .rd-theme:nth-child(1){grid-column:span 8}
.rd-page .rd-theme .rd-visual.has-photo{height:clamp(280px,28vw,430px);min-height:0;margin:0 0 clamp(16px,1.8vw,26px);border-radius:clamp(18px,2vw,26px)}
.rd-page .rd-theme .has-photo img{transition:scale 1.2s var(--rd-ease)}
.rd-page .rd-theme:hover{translate:0 -6px;box-shadow:0 26px 50px -22px rgba(0,0,0,.65)}
.rd-page .rd-theme:hover .has-photo img{scale:1.07}
.rd-page .rd-theme .rd-no{position:absolute;z-index:2;top:clamp(24px,2.5vw,34px);left:clamp(24px,2.5vw,34px);margin:0;padding:7px 14px;border-radius:999px;background:var(--paper);color:var(--ink);font:600 11px/1 var(--font-body);letter-spacing:.12em;box-shadow:0 6px 18px rgba(24,26,18,.28)}
.rd-page .rd-theme h3{margin:0 clamp(6px,.8vw,12px) 8px;font-size:clamp(28px,2.6vw,40px)}
.rd-page .rd-theme p{margin:0 clamp(6px,.8vw,12px) clamp(4px,.6vw,10px);max-width:46ch;font-size:clamp(14px,1.05vw,16px);line-height:1.7;text-wrap:pretty}
.rd-page .rd-theme:nth-child(2) .has-photo img{object-position:50% 40%}


.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(1){--plate:var(--nuvora-mint)}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(2){--plate:var(--nuvora-lilac)}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(3){--plate:var(--nuvora-yellow)}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(4){--plate:var(--nuvora-pink)}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(5){--plate:var(--nuvora-lavender)}
.rd-page .process-tabs button{transition:scale .35s var(--rd-spring),background-color .2s,color .2s}
.rd-page .process-tabs button:hover{scale:1.1}
.rd-page .rd-stage-grid.enhanced .rd-stage{--photo:clamp(300px,34vw,480px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,var(--photo));column-gap:clamp(28px,4.6vw,68px);align-items:center;padding:clamp(26px,3.4vw,54px)}
.rd-page .rd-stage-grid.enhanced .rd-stage>.rd-no{display:none}
.rd-page .rd-stage-copy{grid-column:1;grid-row:1;min-width:0}
.rd-page .rd-stage-grid.enhanced .rd-stage .rd-visual.has-photo{grid-column:2;grid-row:1;align-self:center;width:100%;height:auto;min-height:0;aspect-ratio:4/5;border-radius:clamp(22px,2.4vw,32px);background:var(--plate,var(--nuvora-mint));box-shadow:clamp(8px,.9vw,14px) clamp(10px,1.1vw,16px) 0 var(--plate,var(--nuvora-mint));transition:rotate .6s var(--rd-spring),scale .6s var(--rd-spring)}
.rd-page .rd-stage-grid.enhanced .rd-stage .has-photo img{object-fit:cover;object-position:50% 50%}
.rd-page .rd-stage-grid.enhanced .rd-stage .rd-visual.has-photo:hover{rotate:-1.6deg;scale:1.02}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-stage{grid-template-columns:minmax(0,var(--photo)) minmax(0,1.15fr)}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-stage-copy{grid-column:2}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-visual.has-photo{grid-column:1}
.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-visual.has-photo:hover{rotate:1.6deg}

.rd-page .rd-stage-label{margin:0 0 clamp(10px,1vw,14px);font:600 11px/1.4 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);opacity:.7}
.rd-page .rd-stage-copy h3{margin:0 0 clamp(16px,1.6vw,24px);font-size:clamp(32px,3.4vw,54px);line-height:1.06}
.rd-page .rd-stage-copy>p{margin:0 0 1.05em;max-width:62ch;font-size:clamp(15px,1.12vw,17px);line-height:1.75;text-wrap:pretty}
.rd-page .rd-takeaway{max-width:62ch;margin-top:clamp(14px,1.6vw,22px);padding:clamp(14px,1.4vw,20px) clamp(16px,1.6vw,24px);border-radius:clamp(16px,1.6vw,22px);background:color-mix(in srgb,var(--plate,var(--nuvora-mint)) 42%,var(--paper))}
.rd-page .rd-takeaway>span{display:block;margin-bottom:8px;font:600 10px/1.3 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);opacity:.72}
.rd-page .rd-takeaway>p{margin:0;max-width:none;font:400 clamp(18px,1.5vw,22px)/1.35 Georgia,"Times New Roman",serif;letter-spacing:-.01em;color:var(--ink)}


/* Closing photo. */
.rd-page .rd-intention-photo img{object-position:50% 44%}

@media(max-width:1100px){
 .rd-page .rd-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .rd-page .rd-theme,.rd-page .rd-theme:nth-child(1){grid-column:span 1}
 .rd-page .rd-theme:nth-child(1){grid-column:1/-1}
 .rd-page .rd-theme .rd-visual.has-photo{height:clamp(260px,42vw,440px)}
}
@media(max-width:900px){
 .rd-page .rd-stage-grid.enhanced>div[role="tabpanel"]>.rd-stage,.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-stage{display:grid;grid-template-columns:minmax(0,1fr);row-gap:26px}
 .rd-page .rd-stage-copy,.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-stage-copy{grid-column:1;grid-row:2}
 .rd-page .rd-stage-grid.enhanced .rd-stage .rd-visual.has-photo,.rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even) .rd-visual.has-photo{grid-column:1;grid-row:1;justify-self:center;max-width:min(100%,420px);aspect-ratio:1/1}
}
@media(max-width:640px){
 .rd-page .rd-theme-grid{grid-template-columns:minmax(0,1fr)}
 .rd-page .rd-theme,.rd-page .rd-theme:nth-child(1){grid-column:1}
 .rd-page .rd-theme .rd-visual.has-photo{height:clamp(300px,100vw,440px)}
 .rd-page .rd-hero-photo>.has-photo{min-height:340px}
}

/* Motion: photos unveil as they arrive, drift slowly, and respond to the pointer. */
@media(prefers-reduced-motion:no-preference){
 @keyframes rd-drift{from{scale:1}to{scale:1.08}}
 @keyframes rd-frame-in{from{opacity:0;scale:.92;rotate:2.5deg;translate:0 24px}}
 @keyframes rd-rise{from{opacity:0;translate:0 22px}}
 @keyframes rd-photo-in{from{opacity:0;scale:.86;rotate:5deg;translate:36px 18px}}
 .rd-page .rd-hero-photo>.has-photo{animation:rd-frame-in 1.1s var(--rd-ease) .15s backwards}
 .rd-page .rd-hero-photo .has-photo img,.rd-page .rd-intention-photo img{animation:rd-drift 26s ease-in-out infinite alternate}
 /* themes: the photo wipes up into place, the number pops, the words rise */
 .rd-page .rd-theme .rd-visual.has-photo{clip-path:inset(100% 0 0 0 round 26px);transition:clip-path 1.1s var(--rd-ease) var(--d,0s)}
 .rd-page .rd-theme[data-in] .rd-visual.has-photo{clip-path:inset(0 0 0 0 round 26px)}
 .rd-page .rd-theme .rd-no{scale:0;rotate:-24deg;transition:scale .6s var(--rd-spring) calc(var(--d,0s) + .45s),rotate .6s var(--rd-spring) calc(var(--d,0s) + .45s)}
 .rd-page .rd-theme[data-in] .rd-no{scale:1;rotate:0deg}
 .rd-page .rd-theme h3,.rd-page .rd-theme p{opacity:0;translate:0 16px;transition:opacity .6s ease calc(var(--d,0s) + .4s),translate .7s var(--rd-ease) calc(var(--d,0s) + .4s)}
 .rd-page .rd-theme[data-in] h3,.rd-page .rd-theme[data-in] p{opacity:1;translate:0 0}
 .rd-page .rd-theme:nth-child(2n){--d:.12s}
 .rd-page .rd-theme:nth-child(3n){--d:.2s}
 .rd-page .rd-theme:hover .rd-no{animation:btn-wiggle .5s var(--rd-spring)}
 /* process: changing step brings in a fresh photo and fresh words */
 @keyframes rd-photo-in-left{from{opacity:0;scale:.86;rotate:-5deg;translate:-36px 18px}}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>*{animation:rd-rise .7s var(--rd-ease) backwards}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>:nth-child(2){animation-delay:.06s}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>:nth-child(3){animation-delay:.12s}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>:nth-child(4){animation-delay:.18s}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>:nth-child(5){animation-delay:.24s}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-stage-copy>:nth-child(6){animation-delay:.3s}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-visual.has-photo{animation:rd-photo-in .9s var(--rd-spring) .05s backwards}
 .rd-page .rd-stage-grid>[role="tabpanel"]:nth-child(even):not([hidden]) .rd-visual.has-photo{animation-name:rd-photo-in-left}
 .rd-page .rd-stage-grid [role="tabpanel"]:not([hidden]) .rd-visual img{animation:rd-drift 24s ease-in-out infinite alternate}
}
