:root { --ink:#25231f; --muted:#706c64; --cream:#f6f3ed; --paper:#fffdf8; --line:#d8d1c6; --olive:#596052; --sand:#d8cbbd; --clay:#a96750; } * { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--cream); color:var(--ink); font-family:Arial,Helvetica,sans-serif; } a { color:inherit; text-decoration:none; }.announcement { padding:.65rem 1rem; background:var(--olive); color:#fffdf8; text-align:center; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; }.announcement span { margin:0 .6rem; opacity:.55; }.site-header,main,footer { max-width:1280px; margin:auto; }.site-header { height:82px; padding:0 2rem; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; border-bottom:1px solid var(--line); }.wordmark { font-size:1.02rem; letter-spacing:.17em; font-weight:700; white-space:nowrap; }.wordmark em { font:400 1.08rem Georgia,serif; letter-spacing:.04em; }.primary-nav { display:flex; align-items:center; gap:1.45rem; font-size:.82rem; }.primary-nav>a { padding:.35rem 0; }.primary-nav>a.active { border-bottom:1px solid var(--ink); }.bag { justify-self:end; padding:.48rem .76rem; border:1px solid var(--ink); border-radius:99px; font-size:.76rem; }.bag span { padding:.11rem .32rem; margin-left:.25rem; border-radius:50%; background:var(--ink); color:var(--cream); }.menu-button { display:none; border:0; background:transparent; color:var(--ink); font-size:1.2rem; cursor:pointer; }
.atelier-hero { min-height:650px; display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,1fr); background:#50574e; color:#fffdf8; overflow:hidden; }.hero-copy { align-self:center; padding:clamp(4rem,9vw,8rem) clamp(2rem,7vw,8rem); }.eyebrow { margin:0 0 .9rem; color:var(--muted); font-size:.69rem; letter-spacing:.14em; text-transform:uppercase; }.hero-copy .eyebrow { color:#d9ded2; }.hero-copy h1,.atelier-intro h2,.section-lead h2,.know-copy h2,.atelier-links h2 { margin:0; font:400 clamp(2.8rem,6vw,5.5rem)/.94 Georgia,serif; letter-spacing:-.055em; }.hero-copy>p:not(.eyebrow) { max-width:445px; margin:1.45rem 0 0; color:#edf0e9; line-height:1.72; }.text-link { display:inline-block; margin-top:1.5rem; padding-bottom:.25rem; border-bottom:1px solid currentColor; font-size:.82rem; }.text-link span { margin-left:.35rem; }.hero-visual { position:relative; min-height:650px; overflow:hidden; background:#d1c2ae; }.hero-visual img { width:100%; height:100%; display:block; object-fit:cover; }.visual-note { position:absolute; left:1.4rem; bottom:1.4rem; padding:1rem 1.1rem; background:#fffdf8; color:var(--ink); display:grid; gap:.25rem; }.visual-note span { color:var(--muted); font-size:.68rem; }.visual-note strong { font:400 1.2rem Georgia,serif; }
.atelier-intro { max-width:800px; padding:8rem 2rem; margin:auto; text-align:center; }.atelier-intro h2 { font-size:clamp(2.3rem,4.5vw,4.2rem); }.atelier-intro>p:not(.eyebrow) { max-width:620px; margin:1.4rem auto 0; color:var(--muted); line-height:1.75; }.process { padding:0 2rem 8rem; display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(2rem,8vw,9rem); }.section-lead { position:sticky; align-self:start; top:1.5rem; }.section-lead h2 { font-size:clamp(2.2rem,4vw,3.7rem); }.section-lead>p:not(.eyebrow) { max-width:350px; margin:1.15rem 0 0; color:var(--muted); line-height:1.65; }.process-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }.process-list li { display:grid; grid-template-columns:70px 1fr; gap:1rem; padding:1.5rem 0; border-bottom:1px solid var(--line); }.process-list li>span { color:var(--clay); font:400 1.5rem Georgia,serif; }.process-list h3 { margin:0 0 .45rem; font:400 1.5rem Georgia,serif; }.process-list p { max-width:440px; margin:0; color:var(--muted); font-size:.88rem; line-height:1.68; }
.things-to-know { display:grid; grid-template-columns:1fr 1fr; background:var(--sand); min-height:590px; }.know-art { position:relative; overflow:hidden; background:#979d89; }.arch,.stone { position:absolute; display:block; }.arch { width:290px; height:430px; border:37px solid #e2d9ca; border-bottom:0; border-radius:160px 160px 0 0; }.arch-one { top:18%; left:14%; }.arch-two { top:6%; right:-14%; border-color:#c3aa8d; transform:scale(.9); }.stone { background:linear-gradient(120deg,#ded5c8,#aaa18f); box-shadow:inset 10px 0 18px rgba(255,255,255,.35),inset -8px 0 13px rgba(64,52,39,.08); }.stone-one { width:150px; height:170px; bottom:9%; left:42%; border-radius:50% 42% 45% 52%; }.stone-two { width:105px; height:105px; bottom:12%; left:21%; border-radius:50%; }.know-copy { align-self:center; padding:5.5rem clamp(2rem,7vw,8rem); }.know-copy h2 { max-width:540px; font-size:clamp(2.25rem,4vw,3.8rem); }.know-list { display:grid; gap:1rem; margin-top:2rem; }.know-list div { padding-top:1rem; border-top:1px solid rgba(37,35,31,.24); }.know-list h3 { margin:0 0 .35rem; font:400 1.35rem Georgia,serif; }.know-list p { max-width:500px; margin:0; color:#524b43; font-size:.84rem; line-height:1.67; }
.atelier-links { padding:7rem 2rem; display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(2rem,8vw,9rem); }.atelier-links h2 { max-width:500px; font-size:clamp(2.2rem,4vw,3.8rem); }.link-cards { border-top:1px solid var(--line); }.link-cards a { display:grid; gap:.45rem; padding:1.25rem 0; border-bottom:1px solid var(--line); transition:padding .2s,color .2s; }.link-cards a:hover { padding-left:.5rem; color:var(--clay); }.link-cards strong { font:400 1.35rem Georgia,serif; }.link-cards span { color:var(--muted); font-size:.75rem; } footer { padding:2rem; display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--line); font-size:.76rem; } footer div { display:flex; gap:1rem; } footer p { color:var(--muted); }.mobile-nav { position:fixed; z-index:10; inset:0 auto 0 0; width:min(330px,88vw); padding:1.35rem; background:var(--cream); box-shadow:16px 0 45px rgba(0,0,0,.18); transform:translateX(-105%); transition:transform .28s ease; }.mobile-nav.open { transform:translateX(0); }.mobile-nav>div { display:flex; align-items:center; justify-content:space-between; padding-bottom:1.5rem; border-bottom:1px solid var(--line); }.mobile-nav button { border:0; background:transparent; font-size:1.45rem; cursor:pointer; }.mobile-nav nav { display:grid; gap:1.15rem; padding:2rem 0; }.mobile-nav nav a { font:400 1.65rem Georgia,serif; }.mobile-nav>a { font-size:.78rem; border-bottom:1px solid var(--ink); padding-bottom:.2rem; }.member-actions { display:flex; align-items:center; gap:0; white-space:nowrap; }.member-actions a { display:inline-flex; align-items:center; min-height:30px; padding:.4rem .56rem; border:1px solid var(--ink); font-size:.66rem; }.member-actions a:first-child { border-radius:99px 0 0 99px; }.member-actions a+a { margin-left:-1px; background:var(--ink); color:var(--cream); }.member-actions a:last-child { border-radius:0 99px 99px 0; }.member-actions.is-signed-in a { border-radius:99px; background:transparent; color:var(--ink); }.mobile-nav .member-actions { display:grid; gap:1.15rem; }.mobile-nav .member-actions a { min-height:0; padding:0; border:0; border-radius:0; background:transparent; color:inherit; font:400 1.65rem Georgia,serif; }
@media(max-width:820px) { .site-header { height:68px; padding:0 1rem; grid-template-columns:auto 1fr auto; gap:.75rem; }.menu-button { display:block; }.primary-nav { display:none; }.atelier-hero { min-height:0; grid-template-columns:1fr; }.hero-copy { padding:5rem 1.5rem 3.75rem; }.hero-visual { min-height:390px; }.atelier-intro { padding:5.5rem 1.5rem; }.process { grid-template-columns:1fr; gap:2rem; padding:0 1.5rem 5.5rem; }.section-lead { position:static; }.things-to-know { grid-template-columns:1fr; }.know-art { min-height:360px; }.know-copy { padding:4rem 1.5rem; }.atelier-links { grid-template-columns:1fr; gap:2rem; padding:5.5rem 1.5rem; } footer { align-items:flex-start; flex-direction:column; padding:1.5rem; } }
@media(max-width:460px) { .announcement { font-size:.62rem; }.announcement span { margin:0 .3rem; }.wordmark { font-size:.86rem; }.bag { padding:.43rem .58rem; }.hero-copy h1 { font-size:3.15rem; }.process-list li { grid-template-columns:48px 1fr; gap:.7rem; }.visual-note { left:1rem; bottom:1rem; }.link-cards strong { font-size:1.22rem; } }

/* Premium editorial refinement */
:root { --ink:#292722; --muted:#79736a; --cream:#f3efe8; --paper:#fffcf7; --line:#d5cec2; --olive:#475147; --sand:#d9cfbf; --clay:#9e604a; } body { background:radial-gradient(circle at 22% 0,#faf7f1 0,transparent 30rem),var(--cream); letter-spacing:.003em; }.announcement { padding:.54rem 1rem; background:#374137; font-size:.62rem; letter-spacing:.16em; }.site-header { height:86px; background:rgba(243,239,232,.86); backdrop-filter:blur(12px); }.primary-nav { gap:1.7rem; font-size:.75rem; letter-spacing:.035em; }.primary-nav>a { transition:color .2s; }.primary-nav>a:hover { color:var(--clay); }.bag { border-color:rgba(41,39,34,.72); transition:background .2s,color .2s; }.bag:hover { background:var(--ink); color:var(--cream); }.bag:hover span { background:var(--cream); color:var(--ink); }
.atelier-hero { min-height:720px; grid-template-columns:1.08fr .92fr; background:#303a31; }.hero-copy { position:relative; padding:clamp(4.5rem,9vw,9.5rem) clamp(2rem,7.5vw,8.5rem) clamp(3.8rem,6vw,6rem); display:flex; flex-direction:column; align-items:flex-start; }.hero-index { width:100%; display:flex; justify-content:space-between; margin:0 0 clamp(3rem,7vw,8rem); padding-bottom:.85rem; border-bottom:1px solid rgba(255,253,248,.27); color:#dfe2da; font-size:.62rem; letter-spacing:.15em; text-transform:uppercase; }.hero-index span { color:#bfc8b8; }.hero-copy .eyebrow { margin-bottom:1.15rem; color:#c8d0c3; font-size:.64rem; }.hero-copy h1 { max-width:660px; font-size:clamp(3.65rem,6vw,6.55rem); line-height:.9; letter-spacing:-.067em; }.hero-copy>p:not(.eyebrow):not(.hero-index) { max-width:435px; margin-top:1.7rem; color:#e1e5dc; font-size:.95rem; line-height:1.8; }.text-link { margin-top:2rem; color:#fffdf8; font-size:.76rem; letter-spacing:.025em; transition:color .2s; }.text-link:hover { color:#d9bba5; }.hero-foot { display:flex; gap:.55rem; flex-wrap:wrap; margin-top:auto; padding-top:3rem; }.hero-foot span { padding:.5rem .7rem; border:1px solid rgba(255,253,248,.3); color:#e6e7df; font-size:.63rem; letter-spacing:.055em; }.hero-visual { min-height:720px; background:#bcae99; }.hero-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(35,39,31,.02),rgba(35,39,31,.27)); pointer-events:none; }.hero-visual img { transform:scale(1.035); filter:saturate(.82) contrast(1.04); }.visual-note { z-index:1; left:0; bottom:0; width:min(330px,80%); padding:1.4rem 1.5rem; background:var(--paper); }.visual-note span { color:var(--clay); font-size:.61rem; letter-spacing:.14em; text-transform:uppercase; }.visual-note strong { max-width:205px; font-size:1.42rem; line-height:1.03; }.visual-index { position:absolute; z-index:1; top:1.3rem; right:1.5rem; color:#fffdf8; font:400 3.5rem/.8 Georgia,serif; opacity:.9; }
.atelier-intro { max-width:1060px; min-height:510px; padding:8.5rem 2rem; display:grid; grid-template-columns:210px 1fr; gap:clamp(2rem,9vw,10rem); text-align:left; align-items:start; }.intro-label { padding-top:.45rem; }.intro-label .eyebrow { margin-bottom:.8rem; color:var(--clay); }.intro-label span { color:var(--muted); font-size:.65rem; letter-spacing:.08em; }.intro-copy { max-width:670px; }.atelier-intro h2 { font-size:clamp(3rem,5.2vw,5rem); line-height:.94; }.atelier-intro>p:not(.eyebrow),.intro-copy>p { margin:1.7rem 0 0; color:#655f57; font-size:.99rem; line-height:1.85; }.intro-copy .intro-note { max-width:380px; padding-top:1.15rem; border-top:1px solid var(--line); color:var(--ink); font:400 1.22rem/1.28 Georgia,serif; }
.process { position:relative; max-width:none; padding:7.5rem max(2rem,calc((100vw - 1200px)/2)) 8.5rem; grid-template-columns:minmax(250px,.8fr) minmax(0,1.25fr); background:#eae4da; gap:clamp(3rem,9vw,11rem); }.section-lead { top:2rem; }.section-lead .eyebrow { color:var(--clay); }.section-lead h2 { font-size:clamp(2.7rem,4.4vw,4.4rem); line-height:.95; }.section-lead>p:not(.eyebrow) { max-width:300px; font-size:.88rem; line-height:1.75; }.process-note { max-width:290px; margin-top:2.5rem; padding:1.15rem 0 0; border-top:1px solid rgba(41,39,34,.3); font:400 1.1rem/1.3 Georgia,serif; }.process-list { border-color:rgba(41,39,34,.4); counter-reset:steps; }.process-list li { position:relative; grid-template-columns:100px 1fr; gap:1.5rem; min-height:142px; padding:1.8rem 0; border-color:rgba(41,39,34,.22); transition:padding .25s; }.process-list li:hover { padding-left:.6rem; }.process-list li>span { color:var(--clay); font-size:2rem; }.process-list h3 { font-size:1.72rem; }.process-list p { max-width:460px; color:#655f57; font-size:.87rem; line-height:1.74; }
.things-to-know { max-width:none; min-height:680px; grid-template-columns:.95fr 1.05fr; background:#d5c8b7; }.know-art { min-height:680px; background:#5b6458; }.arch { border-width:34px; }.arch-one { top:15%; left:17%; }.arch-two { top:2%; }.stone-one { width:172px; height:190px; left:43%; }.stone-two { width:115px; height:115px; }.know-copy { padding:7rem clamp(2rem,8vw,9.5rem); }.know-copy .eyebrow { color:#74503e; }.know-copy h2 { font-size:clamp(2.7rem,4.2vw,4.25rem); line-height:.96; }.know-list { margin-top:2.7rem; gap:1.25rem; }.know-list div { padding-top:1.25rem; border-color:rgba(41,39,34,.28); }.know-list h3 { font-size:1.45rem; }.know-list p { color:#554d44; font-size:.86rem; line-height:1.75; }
.atelier-links { max-width:1200px; padding:8rem 2rem 8.5rem; grid-template-columns:.8fr 1.2fr; }.atelier-links .eyebrow { color:var(--clay); }.atelier-links h2 { font-size:clamp(2.8rem,4.4vw,4.3rem); line-height:.95; }.link-cards { border-color:var(--ink); }.link-cards a { position:relative; grid-template-columns:1fr auto; align-items:end; gap:1rem; padding:1.5rem 0; border-color:var(--line); }.link-cards a:after { content:"→"; grid-column:2; grid-row:1 / span 2; padding-bottom:.1rem; font-size:1.2rem; transition:transform .2s; }.link-cards a:hover { padding-left:.65rem; color:var(--ink); }.link-cards a:hover:after { transform:translateX(.3rem); }.link-cards strong { font-size:1.52rem; }.link-cards span { font-size:.72rem; } footer { max-width:1200px; padding:2.3rem 2rem; } footer a:hover { color:var(--clay); }
@media(max-width:820px) { .site-header { height:68px; }.atelier-hero { min-height:0; grid-template-columns:1fr; }.hero-copy { min-height:590px; padding:2rem 1.5rem 3rem; }.hero-index { margin-bottom:4rem; }.hero-copy h1 { font-size:clamp(3.6rem,14vw,5rem); }.hero-visual { min-height:460px; }.visual-index { font-size:3rem; }.atelier-intro { min-height:0; padding:5.5rem 1.5rem; grid-template-columns:1fr; gap:1.35rem; }.intro-label { padding:0; }.atelier-intro h2 { font-size:clamp(2.8rem,11vw,4rem); }.process { padding:5.5rem 1.5rem; gap:2.5rem; }.process-list li { grid-template-columns:64px 1fr; }.things-to-know { grid-template-columns:1fr; }.know-art { min-height:410px; }.know-copy { padding:5rem 1.5rem; }.atelier-links { padding:5.5rem 1.5rem; grid-template-columns:1fr; gap:2.5rem; } }
@media(max-width:460px) { .hero-copy { min-height:540px; }.hero-index { margin-bottom:3rem; }.hero-foot { padding-top:2rem; }.hero-foot span { font-size:.58rem; }.hero-visual { min-height:390px; }.visual-note { padding:1.1rem 1.15rem; }.atelier-intro h2 { font-size:2.9rem; }.process-list li { grid-template-columns:48px 1fr; gap:.65rem; }.process-list li>span { font-size:1.55rem; }.process-list h3 { font-size:1.45rem; }.link-cards a { grid-template-columns:1fr auto; }.link-cards strong { font-size:1.3rem; } }

/* Natural variations are best explained by a real material surface, not an abstract drawing. */
.know-art > img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 60%; filter:saturate(.82) contrast(1.02); }

/* Hero alignment: fixed top, centred story, fixed bottom details */
.hero-copy { display:grid; grid-template-rows:auto minmax(0,1fr) auto; align-items:stretch; }.hero-index { margin:0; align-self:start; }.hero-body { align-self:center; padding:clamp(2.8rem,5vw,5rem) 0; }.hero-body>p:not(.eyebrow) { max-width:435px; margin:1.7rem 0 0; color:#e1e5dc; font-size:.95rem; line-height:1.8; }.hero-body .text-link { margin-top:2rem; }.hero-foot { margin-top:0; align-self:end; padding-top:0; }
@media(max-width:820px) { .hero-copy { grid-template-rows:auto minmax(0,1fr) auto; }.hero-index { margin:0; }.hero-body { padding:2.6rem 0; } }
@media(max-width:460px) { .hero-body { padding:2.25rem 0; } }

/* Simplified hero: one calm editorial text block */
.hero-copy { display:flex; align-items:flex-start; justify-content:center; min-height:720px; }.hero-body { align-self:auto; max-width:500px; padding:0; }.hero-body .eyebrow { margin-bottom:1.15rem; }.hero-body h1 { max-width:580px; }.hero-body>p:not(.eyebrow) { margin-top:1.65rem; }.hero-body .text-link { margin-top:2rem; }
@media(max-width:820px) { .hero-copy { min-height:560px; }.hero-body { padding:0; } }
@media(max-width:460px) { .hero-copy { min-height:510px; }.hero-body { padding:0; } }
