:root{--cream:#f7f3ea;--paper:#fffdf8;--ink:#293a35;--muted:#64736b;--rose:#b98078;--line:#deded2;--sage:#e7e9da;--sage-deep:#647b6b;--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next',Avenir,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--rose);outline-offset:3px}.site-wrap{overflow:hidden}.skip-link{position:absolute;z-index:50;top:-100px;left:20px;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:12px}.site-header{max-width:1440px;margin:auto;padding:30px 6.5%;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:24px;letter-spacing:-.06em;line-height:.85;white-space:nowrap}.wordmark small{display:block;font-family:var(--sans);font-size:9px;letter-spacing:.22em;text-transform:uppercase;margin-top:8px}.wordmark-mark{font-family:var(--serif);font-size:38px;font-weight:normal;color:var(--rose);line-height:1}.nav{display:flex;align-items:center;gap:38px;font-size:12px;font-weight:600;letter-spacing:.04em}.nav a:not(.nav-cta):hover,.footer a:hover,.practical a:hover{color:var(--rose)}.nav-cta{border:1px solid var(--ink);padding:13px 17px;transition:background .2s,color .2s}.nav-cta:hover{background:var(--ink);color:white}.nav-cta span{padding-left:18px}.hero{max-width:1440px;min-height:690px;margin:auto;padding:65px 6.5% 86px;display:grid;grid-template-columns:52% 48%;align-items:center}.hero-copy{position:relative;z-index:2;padding-bottom:15px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:10px;font-weight:700;color:#8d6961}.hero .eyebrow{display:flex;align-items:center;gap:13px}.eyebrow-line{width:26px;height:1px;background:var(--rose)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:normal}h1,h2{font-family:var(--serif);letter-spacing:-.065em}h1{font-size:clamp(62px,6.5vw,105px);line-height:1.06;margin:32px -100px 28px 0}em{font-weight:normal;color:var(--rose)}.hero-lead{font-size:15px;line-height:1.9;max-width:460px;color:#536259;margin-bottom:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;border:1px solid var(--ink);padding:16px 21px;font-size:12px;font-weight:700;letter-spacing:.02em;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#415a4d}.hero-signature{font-family:var(--serif);font-style:italic;color:#8d9586;font-size:16px;margin-top:42px}.hero-signature span{font-style:normal;color:var(--rose);padding-left:10px}.hero-art{height:570px;position:relative;display:flex;align-items:center;justify-content:center}.art-halo{position:absolute;background:#eee9db;width:520px;height:520px;border-radius:50%;left:8%;top:2%}.art-paper{position:relative;width:390px;height:520px;background:#f9f5e9;box-shadow:15px 19px 30px #4a4e3323,-2px -1px 1px #ffffffb8;transform:rotate(5deg);padding:16px;left:6%;top:3%}.art-paper:after{content:"";position:absolute;inset:11px;border:1px solid #ded8c5;pointer-events:none}.botanical{width:100%;height:455px}.paper-caption{display:flex;justify-content:space-between;padding:0 20px;color:#827f71;font-family:var(--serif);font-size:12px;font-style:italic}.paper-caption span{font-family:var(--sans);font-style:normal;font-size:9px;letter-spacing:.12em}.art-note{position:absolute;right:-10%;bottom:13px;background:#fffdf9;padding:24px 28px;box-shadow:0 8px 20px #4a4e3319;transform:rotate(-8deg);font-family:var(--serif);font-size:22px;line-height:1.3}.art-note em{color:#8b9c83}.section-pad{padding:95px max(6.5%,calc((100vw - 1250px)/2))}.offer{background:#fcfaf5;border-top:1px solid #ebe8db}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:39px}.section-heading h2,.contact h2{font-size:clamp(46px,5vw,72px);line-height:1.1;margin:14px 0 0}.section-heading>p{color:var(--muted);max-width:310px;font-size:14px;line-height:1.8;margin-bottom:5px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{min-height:560px;background:#f3eee7;border:1px solid #eae4dc;padding:34px 38px 30px;display:flex;flex-direction:column}.card-weekend{background:#e9eddf;border-color:#e2e7d7}.card-top{display:flex;align-items:start;justify-content:space-between;min-height:94px}.card-icon{display:block;width:54px;height:54px;color:#9f766c}.card-weekend .card-icon{color:#708670}.card-icon svg{width:100%;height:100%}.badge{border:1px solid #baa79b;color:#8a6d63;border-radius:50px;padding:8px 11px;font-size:10px;letter-spacing:.03em;text-align:center}.card-weekend .badge{border-color:#a9b6a1;color:#657862}.card-eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#8c7b71;font-weight:700}.card h3{font-family:var(--serif);font-size:38px;letter-spacing:-.045em;line-height:1.15;margin-bottom:15px}.card-description{color:#5c685f;line-height:1.7;font-size:13px;max-width:470px;min-height:68px}.facts{margin:20px 0 0;padding:18px 0;border-top:1px solid #d5d3c8;border-bottom:1px solid #d5d3c8}.facts div{display:grid;grid-template-columns:76px 1fr;gap:15px;margin:10px 0}.facts dt{font-size:11px;color:#8b897d}.facts dd{margin:0;font-size:12px;color:#374a3e;font-weight:600;line-height:1.5}.card-bottom{display:flex;justify-content:space-between;align-items:end;gap:15px;padding-top:25px;margin-top:auto}.card-bottom strong{display:block;font-family:var(--serif);font-size:26px;font-weight:normal;letter-spacing:-.04em}.card-bottom small{display:block;max-width:290px;font-size:10px;line-height:1.6;color:#6c766b;margin-top:6px}.choose{border:0;border-bottom:1px solid currentColor;background:none;color:#344b3a;font-size:11px;font-weight:700;white-space:nowrap;padding:9px 0}.choose:hover{color:#a76c65}.choose span{padding-left:12px}.practical{display:flex;align-items:center;gap:27px;padding:30px 0 0;margin-top:37px;border-top:1px solid var(--line)}.practical-mark{font-size:35px;color:#ad8276}.practical div{flex:1}.practical h3{font-family:var(--serif);font-size:20px;margin:0 0 5px}.practical p{color:var(--muted);font-size:12px;line-height:1.7;margin:0;max-width:690px}.practical a{font-weight:700;font-size:11px;white-space:nowrap}.contact{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:30px;background:#e7e9dc;padding-top:105px;padding-bottom:112px}.contact-intro{padding-right:20px}.contact-intro>p:not(.eyebrow){max-width:350px;color:#5a6c5c;font-size:14px;line-height:1.8;margin-top:22px}.contact h2{font-size:clamp(45px,4.1vw,60px)}.contact h2 em{color:#9b7169}.contact-stamp{margin-top:50px;display:flex;align-items:center;gap:14px;color:#a88070;font-size:50px}.contact-stamp span{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.1}.form-shell{background:var(--paper);padding:39px 44px;box-shadow:0 15px 35px #57624712}.form-shell label{display:block;font-size:11px;font-weight:700;margin:0 0 10px}.optional{font-weight:normal;color:#89958a}.form-shell input,.form-shell select,.form-shell textarea{width:100%;appearance:none;border:1px solid #d9dfd5;background:#fcfbf7;color:var(--ink);padding:14px 15px;border-radius:0;font-size:13px;line-height:1.4;margin:0 0 25px}.form-shell select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 6 5 5 5-5' fill='none' stroke='%2339473b'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:14px;background-position:right 14px center;padding-right:35px}.form-shell textarea{resize:vertical;min-height:90px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.submit{width:100%;margin-top:0}.form-hint{color:#858e85;font-size:10px;line-height:1.6;margin:14px 0 0}.result{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.result[hidden]{display:none}.result-top{display:flex;justify-content:space-between}.result h3{font-family:var(--serif);font-size:25px;margin:0}.result-top span{color:var(--rose);font-size:25px}.result p{color:var(--muted);font-size:12px;line-height:1.5}.result textarea{margin-bottom:12px;min-height:200px}.button-outline{background:transparent;color:var(--ink)}.button-outline:hover{background:var(--sage)}.copy-status{margin:11px 0 0!important}.footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:30px 6.5%;font-size:11px;color:#65736b}.footer span:first-child{font-family:var(--serif);font-size:16px;color:var(--ink)}.footer span:first-child span{color:var(--rose)}
@media(max-width:1050px){.hero{grid-template-columns:55% 45%;min-height:600px}.hero-art{height:480px}.art-halo{width:420px;height:420px;left:0}.art-paper{width:310px;height:420px}.botanical{height:355px}.art-note{right:-1%;font-size:17px}.card{padding:28px;min-height:590px}.card-bottom{display:block}.choose{margin-top:12px}.contact{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}.form-shell{padding:32px}}@media(max-width:760px){.site-header{padding:18px 6%;align-items:start;gap:10px}.wordmark{font-size:20px}.wordmark-mark{font-size:31px}.nav{gap:11px;font-size:10px}.nav>a:not(.nav-cta){display:none}.nav>a:first-child{display:inline}.nav-cta{padding:10px 12px}.nav-cta span{padding-left:6px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:55px 6% 72px;min-height:0}.hero-copy{padding:0}.hero h1{font-size:clamp(57px,12vw,84px);margin:25px 0}.hero-lead{font-size:14px}.hero-signature{margin:27px 0 0}.hero-art{height:420px;margin-top:15px}.art-halo{width:370px;height:370px;left:50%;transform:translateX(-50%);top:5%}.art-paper{width:280px;height:372px;left:0;top:5%;padding:12px}.art-paper:after{inset:8px}.botanical{height:318px}.paper-caption{padding:0 14px}.art-note{right:0;bottom:0;font-size:16px;padding:14px 18px}.section-pad{padding:72px 6%}.section-heading{display:block}.section-heading>p{margin:20px 0 0}.cards{grid-template-columns:1fr;gap:16px}.card{min-height:0;padding:28px}.card-description{min-height:0}.card-bottom{display:flex}.choose{margin:0}.practical{align-items:start;flex-wrap:wrap;gap:15px}.practical-mark{line-height:1}.practical a{margin-left:49px}.contact{display:block}.contact-intro{padding:0}.contact-stamp{display:none}.form-shell{padding:28px;margin-top:34px}.footer{flex-wrap:wrap;padding:26px 6%}.footer>span:nth-child(2){display:none}}@media(max-width:450px){.hero h1{font-size:55px}.hero-art{height:390px}.art-halo{width:330px;height:330px}.art-paper{width:258px;height:344px}.botanical{height:294px}.card-top{min-height:75px}.card h3{font-size:34px}.card-bottom{display:block}.choose{margin-top:16px}.field-row{display:block}.form-shell{padding:22px}.section-heading h2,.contact h2{font-size:47px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.schedule{margin-top:75px;scroll-margin-top:28px}.schedule-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-bottom:24px;border-bottom:1px solid var(--line)}.schedule-heading .eyebrow{margin-bottom:8px}.schedule-heading h3{font-family:var(--serif);font-size:clamp(35px,3.6vw,50px);letter-spacing:-.05em;margin:0}.schedule-heading>span{color:#8f978b;letter-spacing:.17em;font-size:10px;font-weight:700;white-space:nowrap;margin-bottom:8px}.schedule-list{border-bottom:1px solid var(--line)}.schedule-row{display:grid;grid-template-columns:106px minmax(0,1fr) 152px;gap:27px;align-items:center;padding:22px 4px;border-top:1px solid var(--line)}.schedule-row:first-child{border-top:0}.schedule-date{width:100px;min-height:90px;background:#e4e9dd;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#435c49}.theme-pastels .schedule-date{background:#f0e2dc;color:#8a655e}.theme-dessin .schedule-date{background:#ece8d9;color:#726b55}.schedule-date strong{font-family:var(--serif);font-size:26px;font-weight:normal;letter-spacing:-.04em;line-height:1}.schedule-date span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.schedule-weekdays{display:block;color:#9a746c;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;margin-bottom:6px}.schedule-info h4{font-family:var(--serif);font-size:24px;letter-spacing:-.025em;font-weight:normal;margin:0 0 6px}.schedule-info p{font-size:11px;color:#748075;line-height:1.6;margin:0}.schedule-action{display:flex;flex-direction:column;align-items:flex-end;gap:10px;text-align:right}.schedule-status{font-size:10px;color:#8c8177}.schedule-action button{border:0;background:none;border-bottom:1px solid currentColor;color:#344b3a;font-size:11px;font-weight:700;padding:8px 0;white-space:nowrap}.schedule-action button:hover{color:#a76c65}.schedule-action button span{padding-left:7px}
@media(max-width:760px){.schedule{margin-top:58px}.schedule-row{grid-template-columns:88px minmax(0,1fr);gap:14px;padding:20px 0}.schedule-date{width:86px;min-height:86px}.schedule-date strong{font-size:22px}.schedule-info h4{font-size:22px}.schedule-action{grid-column:2;align-items:flex-start;text-align:left;gap:4px}.schedule-status{font-size:10px}.schedule-heading>span{margin:0 0 3px}.schedule-heading h3{font-size:39px}}@media(max-width:450px){.schedule-heading h3{font-size:35px}.schedule-heading>span{font-size:9px}.schedule-row{grid-template-columns:76px minmax(0,1fr);gap:12px}.schedule-date{width:74px;min-height:78px}.schedule-date strong{font-size:20px}.schedule-date span{font-size:8px}.schedule-info h4{font-size:20px}}

.art-paper .atelier-photo{display:block;width:100%;height:455px;object-fit:cover;object-position:center}.art-paper .paper-caption{padding-top:5px}
.card-photo{height:182px;overflow:hidden;margin:5px 0 8px;background:#e8e3d9}.card-photo img{display:block;width:100%;height:100%;object-fit:cover}.card-weekly .card-photo img{object-position:center 57%}.card-weekend .card-photo img{object-position:center 53%}
.schedule-info{display:grid;grid-template-columns:minmax(0,1fr) 100px;column-gap:17px;align-content:center}.schedule-info .schedule-weekdays,.schedule-info h4,.schedule-info p{grid-column:1}.schedule-photo{display:block;grid-column:2;grid-row:1 / 4;width:100px;height:88px;object-fit:cover;background:#e9e9e1}.schedule-row{min-height:136px}
.contact-person{display:flex;align-items:center;gap:18px;margin-top:45px}.contact-person img{width:82px;height:82px;object-fit:cover;border-radius:50%;background:#d8d9ce}.contact-person strong{display:block;font-family:var(--serif);font-size:21px;font-weight:normal}.contact-person span{display:block;color:#677567;font-size:11px;margin-top:5px}
@media(max-width:1050px){.art-paper .atelier-photo{height:355px}.schedule-info{grid-template-columns:minmax(0,1fr) 86px;column-gap:12px}.schedule-photo{width:86px;height:80px}}
@media(max-width:760px){.art-paper .atelier-photo{height:318px}.card-photo{height:195px}.schedule-info{grid-template-columns:minmax(0,1fr) 76px;column-gap:10px}.schedule-photo{width:76px;height:76px}.schedule-row{min-height:0}.contact-person{margin-top:25px}}
@media(max-width:450px){.art-paper .atelier-photo{height:294px}.card-photo{height:160px}.schedule-info{grid-template-columns:minmax(0,1fr) 67px;column-gap:8px}.schedule-photo{width:67px;height:75px}}

.schedule-photo-link{grid-column:2;grid-row:1 / 4;position:relative;display:block;width:100px;height:88px;overflow:hidden}.schedule-photo-link .schedule-photo{width:100%;height:100%;transition:transform .25s}.schedule-photo-link:hover .schedule-photo{transform:scale(1.06)}.schedule-photo-link:after{content:'↗';position:absolute;right:0;bottom:0;display:grid;place-items:center;width:25px;height:25px;background:#fffdf8;color:#344b3a;font-size:14px}.schedule-title-link:hover{text-decoration:underline;text-decoration-color:var(--rose);text-underline-offset:4px}
@media(max-width:1050px){.schedule-photo-link{width:86px;height:80px}}@media(max-width:760px){.schedule-photo-link{width:76px;height:76px}}@media(max-width:450px){.schedule-photo-link{width:67px;height:75px}}

.result-actions{display:flex;flex-wrap:wrap;gap:10px}.result-actions .button{flex:1 1 190px;min-height:50px;align-items:center}.result .form-hint a{text-decoration:underline;text-underline-offset:3px}.result .form-hint a:hover{color:var(--rose)}
