:root{--cream:#f3ece0;--paper:#fbf6ec;--sand:#d9c4a3;--terra:#c4633f;--ink:#2b211a;--muted:#6b5646;--gutter:clamp(22px,6vw,110px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--terra);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;margin:0;letter-spacing:-.055em}em{font-weight:400;color:var(--terra)}.chooser{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px var(--gutter);background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:.1em}.chooser div{display:flex;gap:6px}.chooser button{border:1px solid #85705f;background:transparent;color:var(--paper);border-radius:3px;padding:9px 13px;cursor:pointer;font-size:12px;letter-spacing:0}.chooser button[aria-pressed=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}header{padding:20px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--sand)}.brand{width:245px;display:block}.brand img{height:auto}nav{display:flex;gap:35px;font-size:13px}nav span{color:var(--terra)}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:35px;padding:55px var(--gutter) 24px;min-height:680px;align-items:center}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.22em;line-height:1.7;color:var(--muted)}h1{font-size:clamp(58px,6.5vw,110px);line-height:1.03;margin:27px 0}.intro{font-size:17px;line-height:1.8;color:var(--muted)}.action{display:inline-flex;gap:50px;align-items:center;padding:17px 23px;background:var(--terra);color:var(--paper);margin-top:30px;font-size:13px;transition:transform .2s}.action:hover{transform:translateY(-3px)}.hero-art{width:100%;height:470px;position:relative}.hero-art img{object-position:35% center;border-radius:48% 48% 0 0}.hero-art figcaption{display:flex;justify-content:space-between;gap:12px;padding-top:13px;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;padding-top:35px;font-size:10px;letter-spacing:.12em;color:var(--muted)}.about{padding:110px var(--gutter);display:grid;grid-template-columns:.55fr 1.1fr 1fr;gap:45px;border-top:1px solid var(--sand);margin-top:45px;align-items:start}h2{font-size:clamp(42px,4.5vw,70px);line-height:1.08}.about-copy{font-size:16px;line-height:1.85}.about-copy p+p{margin-top:20px;color:var(--muted)}.projects{padding:75px var(--gutter) 100px;background:var(--paper)}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:40px}.section-head h2{margin-top:20px}.section-head>p{font-size:14px;line-height:1.8;color:var(--muted)}.project{display:grid;grid-template-columns:1fr 1fr 60px;gap:45px;align-items:center;border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);padding:25px 0}.project-image{height:280px;overflow:hidden}.project-image img{transition:transform .5s}.project:hover img{transform:scale(1.025)}h3{font-size:clamp(36px,4vw,62px);margin:15px 0}.project-copy>p:not(.eyebrow){line-height:1.7;font-size:15px;color:var(--muted)}.project-link{display:block;margin-top:35px;font-size:12px;color:var(--terra)}.project-arrow{font-size:46px;color:var(--terra)}.visuals{padding:90px var(--gutter)}.visual-title{margin-bottom:35px}.visual-title h2{margin:15px 0}.visual-title>p:last-child{color:var(--muted);font-size:15px}.visual-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:35px;align-items:start}.visual-grid figure:last-child{margin-top:75px}.visual-grid img{height:330px}.visual-grid figcaption{font-size:11px;letter-spacing:.08em;padding-top:15px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid var(--sand);margin:0 var(--gutter);padding:30px 0;font-size:12px;color:var(--muted)}footer>span{font:26px Georgia,serif;color:var(--ink)}
body[data-design=dream] .hero{display:block;min-height:720px;padding-top:100px;color:var(--paper);isolation:isolate}body[data-design=dream] .hero-art{position:absolute;inset:0;height:100%;z-index:-2}body[data-design=dream] .hero-art img{border-radius:0;object-position:center}body[data-design=dream] .hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(22,28,28,.8),rgba(22,28,28,.25) 80%)}body[data-design=dream] .hero-copy{max-width:740px}body[data-design=dream] .hero h1 em{color:#f0bd95}body[data-design=dream] .hero .eyebrow,body[data-design=dream] .intro,body[data-design=dream] .hero-bottom{color:var(--paper)}body[data-design=dream] .hero-bottom{margin-top:90px}body[data-design=dream] .hero-art figcaption{display:none}body[data-design=dream] .about{margin-top:0}body[data-design=dream] .visual-grid{grid-template-columns:1fr 1fr}body[data-design=dream] .visual-grid figure:last-child{margin-top:0}
body[data-design=studio] .hero{grid-template-columns:1.7fr 1fr;min-height:680px}body[data-design=studio] h1{font-size:clamp(65px,8vw,135px)}body[data-design=studio] .hero-art{height:400px;transform:rotate(4deg)}body[data-design=studio] .hero-art img{border-radius:0}body[data-design=studio] .hero-art figcaption{background:var(--paper);padding:15px}body[data-design=studio] .action{background:transparent;color:var(--ink);border-bottom:1px solid var(--terra);padding-left:0}body[data-design=studio] .about{background:var(--ink);color:var(--paper);margin-top:0}body[data-design=studio] .about .eyebrow,body[data-design=studio] .about-copy p+p{color:var(--sand)}body[data-design=studio] .about em{color:#e0956f}body[data-design=studio] .visual-grid{grid-template-columns:1.4fr 1fr}
@media(max-width:900px){.hero{gap:22px;padding-top:35px;min-height:580px}.hero-art{height:390px}.about{grid-template-columns:1fr 1.2fr;gap:25px;padding-top:70px;padding-bottom:70px}.about>.eyebrow{grid-column:1/-1}.project{gap:25px;grid-template-columns:1fr 1fr}.project-arrow{display:none}body[data-design=studio] .hero{grid-template-columns:1.3fr 1fr}.visual-grid img{height:260px}}
@media(max-width:620px){.chooser{padding:10px 12px;justify-content:center}.chooser>span{display:none}.chooser button{font-size:11px;padding:9px 10px}header{padding:12px var(--gutter)}.brand{width:180px}nav{gap:15px;font-size:11px}nav a:first-child{display:none}.hero,body[data-design=studio] .hero{grid-template-columns:1fr;padding-top:35px;gap:30px}.hero h1,body[data-design=studio] h1{font-size:clamp(54px,12vw,75px)}.intro{font-size:15px}.hero-art,body[data-design=studio] .hero-art{height:300px;transform:none}.hero-art img{border-radius:40% 40% 0 0}.hero-bottom{font-size:8px;gap:15px;padding-top:15px;line-height:1.6}.about{grid-template-columns:1fr;padding-top:60px;padding-bottom:60px}.section-head{display:block}.section-head>p{margin-top:20px}.projects,.visuals{padding-top:60px;padding-bottom:60px}.project{grid-template-columns:1fr;gap:20px;padding-bottom:30px}.project-image{height:240px}.project-link{margin-top:20px}.visual-grid,body[data-design=dream] .visual-grid,body[data-design=studio] .visual-grid{grid-template-columns:1fr;gap:30px}.visual-grid figure:last-child{margin-top:0}.visual-grid img{height:250px}footer{flex-wrap:wrap}footer p{display:none}body[data-design=dream] .hero{min-height:650px;padding-top:65px}body[data-design=dream] .hero-bottom{margin-top:90px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Dreamscape refinements: compact header, language choice and quiet cream CTA. */
header{padding-top:5px;padding-bottom:5px}.brand{width:210px}.header-tools{display:flex;align-items:center;gap:30px}.languages{display:flex;gap:2px;border:1px solid var(--sand);border-radius:999px;padding:3px}.languages button{border:0;background:transparent;color:var(--muted);padding:10px 12px;min-height:38px;border-radius:999px;font-size:11px;cursor:pointer}.languages button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
body[data-design=dream] .action{background:var(--cream);color:var(--ink);border:1px solid rgba(251,246,236,.65);border-radius:999px;padding:16px 27px;gap:32px;letter-spacing:.04em;box-shadow:0 4px 18px rgba(0,0,0,.08)}body[data-design=dream] .action:hover{background:var(--paper)}body[data-design=dream] .action span{color:var(--terra)}
/* Same native magnetic section scrolling as Sunolarium, only on roomy screens. */
@media(min-width:1620px) and (min-height:840px){
 html{scroll-snap-type:y mandatory;scroll-padding-top:57px}
 main>section{min-height:calc(100vh - 57px);scroll-snap-align:start;scroll-snap-stop:always}
 body[data-design=dream] .hero{min-height:calc(100vh - 137px);scroll-margin-top:80px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;padding-top:55px;padding-bottom:32px}
 body[data-design=dream] .hero-bottom{margin-top:60px}
 .about{align-content:center}
 .projects,.visuals{display:flex;flex-direction:column;justify-content:center;padding-top:45px;padding-bottom:45px}
 footer{scroll-snap-align:end}
}
@media(max-width:620px){header{padding-top:4px;padding-bottom:4px}.brand{width:150px}.header-tools{gap:12px}nav{display:none}.languages button{padding:9px 10px}.languages{padding:2px}}


/* More compact cream header, keeping the language controls comfortable. */
header{padding-top:0;padding-bottom:0}.brand{width:174px}.languages{padding:2px}.languages button{min-height:36px;padding:8px 11px}
body[data-design=dream] .action{background:#d9c4a3;border-color:#d9c4a3}body[data-design=dream] .action:hover{background:#e3d1b5}
/* Atmospheric imagery stays behind a light veil, away from the text contrast. */
body[data-design=dream] .about,body[data-design=dream] .projects,body[data-design=dream] .visuals{position:relative;isolation:isolate;background:var(--cream)}
body[data-design=dream] .about::before,body[data-design=dream] .projects::before,body[data-design=dream] .visuals::before{content:"";position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;pointer-events:none}
body[data-design=dream] .about::before{background-image:linear-gradient(90deg,rgba(243,236,224,.93),rgba(243,236,224,.76)),url('assets/orelexa_Mnemosyne_goddess_of_memory_marble_temple_sacred_haze_5675bb43-9b46-4acc-ad33-62fad1f04411_3.png');background-position:center,65% center}
body[data-design=dream] .projects::before{background-image:linear-gradient(90deg,rgba(251,246,236,.94),rgba(251,246,236,.84)),url('assets/orelexa_photograph_of_a_coniferous_forest_in_spring_on_a_sunn_f229ad7b-3b02-4ec6-8c38-5488c7ac5106_2.png')}
body[data-design=dream] .visuals::before{background-image:linear-gradient(90deg,rgba(243,236,224,.93),rgba(243,236,224,.82)),url('assets/orelexa_Enormous_heavy_storm_clouds_floating_low_in_the_sky_t_1eb1ee32-88ee-46eb-a558-54730d612767_0.png')}
/* Sunolarium's warm breathing glow and drifting leaf shadows, activated in view. */
.project-image,.visual-grid figure{position:relative;padding:12px;background:var(--paper);border-radius:6px;overflow:visible;box-shadow:0 12px 26px rgba(43,33,26,.12)}
.project-image img,.visual-grid img{border-radius:3px}.visual-grid figcaption{padding:16px 6px 6px}.project-image{height:330px}
.project-image.is-lit,.visual-grid figure.is-lit{animation:oreCardGlow 3.2s ease-in-out infinite}
.is-lit>img{animation:oreGlow 4s ease-in-out infinite}
.project-image::after,.visual-grid figure::after{content:"";position:absolute;inset:0;pointer-events:none;mix-blend-mode:multiply;filter:blur(7px);opacity:0;background:radial-gradient(ellipse 70px 26px at 22% 18%,rgba(43,33,26,.16),transparent 70%),radial-gradient(ellipse 60px 22px at 70% 34%,rgba(43,33,26,.13),transparent 70%),radial-gradient(ellipse 80px 28px at 40% 62%,rgba(43,33,26,.12),transparent 70%)}
.project-image.is-lit::after,.visual-grid figure.is-lit::after{opacity:1;animation:oreDrift 10s ease-in-out infinite}
@keyframes oreDrift{0%,100%{transform:translate(0,0)}50%{transform:translate(10px,6px)}}
@keyframes oreGlow{0%,100%{box-shadow:0 0 10px 2px rgba(255,205,160,.5)}50%{box-shadow:0 0 20px 9px rgba(255,190,130,.95)}}
@keyframes oreCardGlow{0%,100%{background:#ebd6b2;box-shadow:0 14px 34px rgba(196,99,63,.30),0 0 26px 2px rgba(224,149,111,.40)}50%{background:#f4d5a4;box-shadow:0 18px 52px rgba(196,99,63,.45),0 0 80px 18px rgba(244,176,112,.85)}}
@media(min-width:1620px) and (min-height:840px){body[data-design=dream] .hero{min-height:calc(100vh - 116px);scroll-margin-top:59px}}
@media(max-width:620px){.brand{width:145px}.project-image{height:260px}}
@media(prefers-reduced-motion:reduce){.is-lit,.is-lit>img,.is-lit::after{animation:none!important}}


/* Sunolarium-inspired glow: the transparent logo itself stays crisp. */
.brand{position:relative;isolation:isolate}
.brand::before{content:"";position:absolute;left:5%;top:17%;width:24%;height:66%;border-radius:50%;z-index:-1;background:conic-gradient(#c4633f,#e0956f,#e9b44c,#f4d5a4,#e9b44c,#b5532f,#8a4a2e,#c4633f);filter:blur(8px);opacity:.5;animation:oreLogoSpin 7s linear infinite,oreLogoGlow 3.6s ease-in-out infinite;pointer-events:none}
body[data-design=dream] .action{animation:oreButtonGlow 3.2s ease-in-out infinite}
@keyframes oreLogoSpin{to{transform:rotate(360deg)}}
@keyframes oreLogoGlow{0%,100%{opacity:.3;box-shadow:0 0 12px 2px rgba(224,149,111,.4)}50%{opacity:.6;box-shadow:0 0 24px 5px rgba(244,176,112,.7)}}
@keyframes oreButtonGlow{0%,100%{box-shadow:0 4px 18px rgba(43,33,26,.12),0 0 12px 2px rgba(224,149,111,.28)}50%{box-shadow:0 6px 24px rgba(196,99,63,.2),0 0 32px 7px rgba(244,176,112,.55)}}
@media(prefers-reduced-motion:reduce){.brand::before,body[data-design=dream] .action{animation:none!important}}


/* A personal composition: one framed artwork, an introduction and quiet notes. */
body[data-design=dream] .about{grid-template-columns:minmax(240px,.9fr) minmax(0,1.35fr);column-gap:clamp(35px,6vw,100px);row-gap:24px;align-items:start;padding-top:75px;padding-bottom:75px}
body[data-design=dream] .about>.eyebrow{grid-column:2;grid-row:1}
body[data-design=dream] .about>h2{grid-column:2;grid-row:2}
body[data-design=dream] .about-copy{grid-column:2;grid-row:3;max-width:620px}
.about-art{grid-column:1;grid-row:1/5;align-self:center;background:var(--paper);padding:14px;max-width:420px;width:100%;box-shadow:0 20px 44px rgba(43,33,26,.18),0 2px 6px rgba(43,33,26,.1);transform:rotate(-2deg);animation:oreAboutFloat 9s ease-in-out infinite}
.about-art img{height:clamp(300px,30vw,470px);object-fit:cover}.about-art figcaption{padding:17px 5px 5px;font:italic 15px Georgia,serif;color:var(--muted)}
.creative-notes{grid-column:2;grid-row:4;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:14px;border-top:1px solid var(--sand);padding-top:24px}
.creative-notes article>span{font-size:10px;letter-spacing:.14em;color:var(--terra)}.creative-notes h3{font-size:27px;letter-spacing:-.035em;margin:12px 0}.creative-notes p{font-size:13px;line-height:1.7;color:var(--muted)}
@keyframes oreAboutFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(-1.2deg)}}
@media(min-width:1620px) and (min-height:840px){body[data-design=dream] .about{align-content:center;padding-top:45px;padding-bottom:45px}}
@media(max-width:900px){body[data-design=dream] .about{grid-template-columns:.85fr 1.15fr;column-gap:30px}.creative-notes{grid-column:1/-1;grid-row:4}.about-art{grid-row:1/4}.about-art img{height:350px}}
@media(max-width:620px){body[data-design=dream] .about{grid-template-columns:1fr;padding-top:55px;padding-bottom:55px;row-gap:23px}body[data-design=dream] .about>.eyebrow,body[data-design=dream] .about>h2,body[data-design=dream] .about-copy,.about-art,.creative-notes{grid-column:1;grid-row:auto}.about-art{max-width:330px;justify-self:center;margin:12px 0}.about-art img{height:340px}.creative-notes{grid-template-columns:1fr;gap:22px}.creative-notes article{display:grid;grid-template-columns:35px 1fr;column-gap:15px}.creative-notes article>span{grid-row:1/3;padding-top:8px}.creative-notes h3{margin:0 0 6px}.creative-notes p{grid-column:2}}
@media(prefers-reduced-motion:reduce){.about-art{animation:none}}


/* Shift the portrait crop toward the flowers and give the paper card depth. */
.about-art{border:1px solid rgba(255,255,255,.85);border-radius:10px;transform-style:preserve-3d;transform:perspective(1100px) rotateY(-7deg) rotateX(3deg) rotateZ(-2deg);box-shadow:0 18px 42px rgba(43,33,26,.18),0 0 38px 8px rgba(224,149,111,.28);animation:none}
.about-art img{height:clamp(300px,28vw,400px);object-position:62% center;transform:translateZ(6px)}
.about-art figcaption{transform:translateZ(10px)}
@keyframes oreAboutDepth{0%,100%{transform:perspective(1100px) translateY(0) rotateY(-7deg) rotateX(3deg) rotateZ(-2deg)}50%{transform:perspective(1100px) translateY(-7px) rotateY(-4deg) rotateX(1deg) rotateZ(-1.2deg)}}
@media(max-width:900px){.about-art img{height:320px}}
@media(max-width:620px){.about-art img{height:320px}.about-art{box-shadow:0 14px 32px rgba(43,33,26,.18),0 0 28px 5px rgba(224,149,111,.25)}}
@media(prefers-reduced-motion:reduce){.about-art{animation:none}}





/* Final page: no preview toolbar offset. */
html{scroll-padding-top:0}
@media(min-width:1620px) and (min-height:840px){html{scroll-padding-top:0}main>section{min-height:100vh}body[data-design=dream] .hero{min-height:calc(100vh - 59px);scroll-margin-top:59px}}




.visual-card-link{display:block}.visual-card-link figcaption::after{content:' ↗';color:var(--terra)}.visual-card-link:hover figcaption{color:var(--terra)}.is-lit>.visual-card-link>img{animation:oreGlow 4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.is-lit>.visual-card-link>img{animation:none!important}}

/* Sunolarium artwork without a paper frame. */
.projects .project-image{padding:0;border:0;border-radius:10px;overflow:hidden;background:transparent}.projects .project-image img{border-radius:10px}

/* Visual cards keep only their caption strip. */
.visual-grid figure{padding:0;border:0;overflow:hidden}.visual-grid .visual-card-link img{border-radius:6px 6px 0 0}.visual-grid .visual-card-link figcaption{padding:16px 18px 18px}

/* Clip each zoom to its image area and ease back on pointer leave. */
.card-image-viewport{display:block;overflow:hidden;border-radius:3px}.visual-card-link .card-image-viewport{border-radius:6px 6px 0 0}.card-image-viewport img{transition:transform .5s ease;transform:scale(1)}.about-art .card-image-viewport img{transform:scale(1)}.about-art:hover .card-image-viewport img,.visual-card-link:hover .card-image-viewport img{transform:scale(1.025)}.is-lit>.visual-card-link>.card-image-viewport>img{animation:oreGlow 4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.card-image-viewport img{transition:none}.is-lit>.visual-card-link>.card-image-viewport>img{animation:none!important}}

/* Captioned artwork has a footer strip, never a top or side frame. */
.about-art{padding:0;border:0;overflow:hidden}.about-art .card-image-viewport{border-radius:10px 10px 0 0}.about-art figcaption{padding:17px 18px 18px;transform:none}.about-art:not(:has(figcaption)){background:transparent}.about-art:not(:has(figcaption)) .card-image-viewport{border-radius:10px}
