@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Italiana&display=swap');
:root{--ink:#251a18;--wine:#642439;--cream:#f6f0e6;--gold:#b88346;--muted:#6f5d52}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 'DM Sans',sans-serif}a{color:inherit}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}.wrap{width:min(1160px,calc(100% - 42px));margin:auto}.mast{position:relative;z-index:5;background:#261a1b;color:#fff}.mast .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px}.brand{text-decoration:none;font:32px/1 'Italiana',serif;white-space:nowrap}.brand small{display:block;font:700 9px 'DM Sans';letter-spacing:.26em;margin-top:5px;color:#ddb883}.nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.nav a{text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;padding:8px 0}.nav a[aria-current=page]{color:#e5be8a}.nav .reserve{background:#fff;color:var(--wine);padding:11px 16px}.eyebrow{display:block;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-bottom:16px}h1,h2,h3,p,blockquote{margin-top:0}h1,h2,h3{font-family:'Italiana',Georgia,serif;font-weight:400;line-height:1.03}h1{font-size:clamp(56px,8vw,112px);letter-spacing:-.045em}h2{font-size:clamp(42px,6vw,78px);letter-spacing:-.035em}h3{font-size:clamp(30px,3.5vw,48px)}em{font-weight:400;color:#a66153}.lead{font-size:clamp(18px,2vw,22px);max-width:680px;line-height:1.55}.btn{display:inline-flex;text-decoration:none;align-items:center;justify-content:center;padding:14px 22px;background:var(--wine);color:white;font-weight:700;font-size:12px;letter-spacing:.13em;text-transform:uppercase;border:1px solid var(--wine);min-height:49px}.btn.light{background:var(--cream);color:var(--wine);border-color:var(--cream)}.btn.outline{background:transparent;color:inherit;border-color:currentColor}.btn:hover,.nav a:hover{opacity:.8}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero{min-height:660px;color:#fff;display:flex;align-items:end;background:linear-gradient(90deg,rgba(28,16,20,.88),rgba(28,16,20,.23)),url('chez-stephan-interior.jpg') center/cover;padding:100px 0 75px}.hero h1{max-width:900px}.hero .lead{max-width:530px}.hero .eyebrow{color:#e4bd8d}.chapter{padding:100px 0}.chapter.dark{background:#261b1a;color:#f8efe5}.chapter.winebg{background:radial-gradient(circle at 86% 10%,#e9c98688,transparent 31%),repeating-conic-gradient(from 0deg at 85% 10%,#e7c99024 0 3deg,transparent 3deg 17deg),#722b40;color:#fff}.chapter.winebg em{color:#e9c897}.split{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.split img{width:100%;height:520px;object-fit:cover}.split p{max-width:560px}.wide-photo{width:100%;height:540px;object-fit:cover}.kicker{font-size:14px;text-transform:uppercase;letter-spacing:.16em;color:var(--gold);font-weight:700}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{padding:32px;border:1px solid #d8c7b6;background:#fffaf3}.card b{display:block;color:var(--wine);letter-spacing:.17em;font-size:12px;margin-bottom:35px}.card p{color:var(--muted)}.card img{height:190px;width:100%;object-fit:cover;margin:-32px -32px 25px;max-width:calc(100% + 64px)}.dark .card{background:#392624;border-color:#694a43}.dark .card p{color:#e4d5c8}.quote{font:clamp(36px,5vw,66px)/1.1 'Italiana',serif;max-width:900px;margin:0}.quote cite{display:block;font:14px 'DM Sans';margin-top:22px;color:#d7aa7a}.page-hero{padding:105px 0 75px;background:radial-gradient(circle at 85% 5%,#eac87c90,transparent 35%),repeating-conic-gradient(from 0deg at 86% 3%,#b8814d20 0 3deg,transparent 3deg 16deg),#f2e5d5}.page-hero p{max-width:690px}.page-hero h1{max-width:900px}.note{border-left:3px solid var(--gold);padding:10px 18px;background:#fff8ec;color:#634d43;font-size:14px}.source{font-size:13px;color:#816b5e}.source a{word-break:break-word}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}.timeline article{border-top:1px solid #b4886d;padding-top:18px}.timeline b{color:var(--wine);font-size:13px;letter-spacing:.15em}.tour-stage{position:relative;height:min(60vw,600px);min-height:410px;background:#241a1a;overflow:hidden}.tour-photo{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s}.tour-stage[data-view=0] [data-photo="0"],.tour-stage[data-view=1] [data-photo="1"],.tour-stage[data-view=2] [data-photo="2"],.tour-stage[data-view=3] [data-photo="3"]{opacity:1}.tour-caption{position:absolute;bottom:0;left:0;right:0;color:white;padding:55px 28px 25px;background:linear-gradient(transparent,#1d1211c9)}.tour-caption h3{margin:6px 0}.tour-control{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.tour-control button,.transit button{border:1px solid #816a61;background:transparent;color:inherit;padding:11px 14px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.tour-control button[aria-pressed=true],.transit button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:white}.tour-control .next{margin-left:auto;background:var(--wine);color:white}.products{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.product{border:1px solid #d3bead;padding:26px;background:#fffaf2;display:flex;flex-direction:column}.product h3{font-size:35px;margin:8px 0}.product .tag{font-size:12px;letter-spacing:.15em;color:var(--wine);text-transform:uppercase;font-weight:700}.product p{margin-bottom:8px}.product .pair{color:#715f55;font-size:14px}.product button{align-self:flex-start;margin-top:auto;border:1px solid var(--wine);background:var(--wine);color:white;padding:12px 17px;font-weight:700;cursor:pointer}.basket{position:sticky;bottom:0;background:#251a1aed;color:#fff;padding:15px 0;z-index:4}.basket .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.basket button{border:0;background:#e9c99b;color:#2b1820;padding:13px 18px;font-weight:700}.basket small{display:block;color:#d9bb9c}.transit{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}.map-panel{border:1px solid #c8aa91;background:#fffaf3;display:grid;grid-template-columns:1fr 1fr;min-height:390px}.map-panel iframe{width:100%;height:390px;border:0}.map-info{padding:30px}.map-info p{max-width:370px}.foot{padding:48px 0;background:#1e1515;color:#f5e8d6}.foot .wrap{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.foot a{color:#deb683}.foot small{font-size:12px;color:#c8ac9a}.foot nav{display:flex;gap:15px;flex-wrap:wrap}.sunmark{color:#c3874b;letter-spacing:.4em}.age{font-size:13px;color:#7a6154}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:760px){.mast .wrap{display:block;padding:14px 0}.nav{margin-top:14px;gap:13px}.nav a{font-size:10px}.hero{min-height:580px}.chapter{padding:68px 0}.split,.grid3,.timeline,.products,.map-panel{grid-template-columns:1fr}.split img{height:330px}.wide-photo{height:350px}.tour-stage{height:480px}.map-panel iframe{height:290px}.tour-control .next{margin-left:0}.page-hero{padding:70px 0 55px}.card img{height:230px}}.chapter.dark em{color:#e4b68d}.basket label{display:flex;align-items:center;gap:8px;font-size:13px}.basket input{width:17px;height:17px;accent-color:#e9c99b}.basket button:disabled{opacity:.48;cursor:not-allowed}.photo-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}.photo-grid img{height:330px;width:100%;object-fit:cover}.price-grid,.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.price-grid article{border-top:1px solid #a07b6d;padding:22px 0}.price-grid article span{font-size:12px;letter-spacing:.17em;color:#ddb78a}.price-grid article h3{margin:14px 0}.price-grid article p{color:#e7d9c9}.team-grid article{padding:26px;background:white;border:1px solid #ddcbb9}.team-grid h3{font-size:34px;margin-bottom:10px}.team-grid p{margin:0;color:#645247}.hours{display:grid;grid-template-columns:1fr auto;gap:12px;max-width:530px;padding:26px;background:#fffaf3;border:1px solid #dfc9b6}.hours span,.hours b{border-bottom:1px solid #ecddcf;padding-bottom:8px}@media(max-width:760px){.photo-grid,.price-grid,.team-grid{grid-template-columns:1fr}.photo-grid img{height:240px}}.service-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:30px 0}.service-menu article{border:1px solid #cbbdac;padding:24px;background:#f8f2e9}.service-menu h3{font-family:Georgia,serif;font-size:24px;margin:0 0 15px}.service-menu small{display:block;font:13px/1.5 Arial,sans-serif;color:#775442;margin-top:7px}.service-menu p,.service-menu li{line-height:1.6}.service-menu ul{padding-left:20px;margin:0}.service-menu li+li{margin-top:8px}@media(max-width:740px){.service-menu{grid-template-columns:1fr}.service-menu article{padding:20px}}
/* A richer, more editorial identity shared by all pages. */
:root{--ink:#231b19;--wine:#5a1d31;--cream:#f6eee2;--gold:#d2a568}
body{background:#f6eee2;background-image:radial-gradient(circle at 10% 0%,#e7c79c33,transparent 40%)}
.mast{background:#201719;border-bottom:1px solid #a7806155}.mast .wrap{min-height:84px}.brand{font-size:35px;letter-spacing:-.035em}.nav{gap:15px}.nav a{transition:color .25s,transform .25s}.nav a:hover{color:#e4ba80;transform:translateY(-2px);opacity:1}.nav .reserve{background:#e9be85;color:#25191b;padding:13px 17px}
.editorial-hero{padding:76px 0 80px;min-height:740px;background:radial-gradient(circle at 20% 6%,#743344,transparent 38%),#301c25;position:relative;overflow:hidden}
.editorial-hero:before{content:'';position:absolute;inset:0;opacity:.13;background:repeating-linear-gradient(110deg,transparent 0 73px,#e4bf8522 74px 75px)}
.hero-layout{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:6%;align-items:center}.hero-copy{position:relative;z-index:1}.hero-copy h1{font-size:clamp(70px,7.6vw,126px);line-height:.89;margin:18px 0 30px;letter-spacing:-.052em}.hero-copy h1 em{color:#eec787;font-style:italic}.hero-copy .lead{font-size:20px;max-width:510px;color:#f0dfd4;margin-bottom:30px}.hero-copy .eyebrow{color:#e6b984}.hero-copy .actions{align-items:center;gap:28px}.hero-copy .btn{min-width:190px;justify-content:space-between}.text-link,.underlined-link{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:6px;display:inline-flex;gap:24px;align-items:center}.text-link:hover,.underlined-link:hover{opacity:.7}.hero-photo-frame{height:585px;position:relative;transform:rotate(2deg);box-shadow:24px 29px 0 #b9855538}.hero-photo-frame:after{content:'';position:absolute;inset:0;border:14px solid #f3e5d2;pointer-events:none}.hero-photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center}.photo-stamp{position:absolute;z-index:2;right:-24px;bottom:36px;transform:rotate(-8deg);width:185px;height:185px;border-radius:50%;background:#e7ba77;color:#311c23;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font:23px/1.05 'Italiana',serif;box-shadow:0 7px 25px #100b0e88}.photo-stamp span{font-size:27px}.photo-stamp small{font:700 8px/1.5 'DM Sans',sans-serif;letter-spacing:.12em;margin-top:8px}.hero-side{position:absolute;right:-46px;top:50%;transform:translate(50%,-50%) rotate(90deg);font-size:10px;letter-spacing:.25em;color:#e2bf98}.ribbon{background:#d4a365;color:#301f20;padding:19px 0;border-block:1px solid #7f583a}.ribbon .wrap{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.2em;font-weight:700}.ribbon i{font-size:24px;font-style:normal}.invitation{padding:110px 0 120px}.invitation-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end;margin-bottom:65px}.invitation-layout h2{margin:0}.invitation-layout .lead{font-size:19px;color:#634940}.invitation-layout .underlined-link{color:var(--wine)}.editorial-gallery{display:grid;grid-template-columns:1fr .7fr 1fr;gap:14px;align-items:stretch}.editorial-gallery img{width:100%;height:360px;object-fit:cover}.editorial-gallery img:last-child{object-position:center}.gallery-note{padding:30px;background:#512235;color:#f7e9d5;display:flex;flex-direction:column;justify-content:space-between}.gallery-note span{letter-spacing:.19em;color:#e0b782;font-size:12px}.gallery-note strong{font:44px/1.03 'Italiana',serif}.gallery-note a{font-size:13px;text-decoration:none;color:#f1cd9c;border-bottom:1px solid currentColor;align-self:flex-start;padding-bottom:5px}.closing-scene{background:#251b1b;color:#f7e9db}.closing-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center}.closing-layout h2 em{color:#e2b375}.closing-layout p{font-size:18px;color:#e3ccbb;max-width:510px}.closing-layout img{width:100%;height:440px;object-fit:cover;border:10px solid #d9b787}.page-hero{background:radial-gradient(circle at 80% 10%,#e0ad7188,transparent 32%),#ead8bf}.page-hero h1{letter-spacing:-.045em}.chapter.winebg{background:radial-gradient(circle at 84% 8%,#b9745788,transparent 38%),#67293c}.btn{transition:transform .25s,background .25s}.btn:hover{transform:translateY(-3px);opacity:1}
@media(max-width:1040px){.mast .wrap{align-items:flex-start;flex-direction:column;padding:16px 0;gap:10px}.nav{gap:12px}.hero-side{display:none}}
@media(max-width:760px){.mast .wrap{display:flex}.brand{font-size:32px}.nav{gap:4px 15px}.nav a{font-size:11px;padding:7px 0}.nav .reserve{padding:9px 12px}.editorial-hero{padding:55px 0 70px;min-height:0}.hero-layout{grid-template-columns:1fr;gap:50px}.hero-copy h1{font-size:clamp(67px,15vw,110px)}.hero-copy .lead{font-size:18px}.hero-photo-frame{height:410px;margin-right:16px}.photo-stamp{height:130px;width:130px;right:-12px;bottom:20px;font-size:18px}.photo-stamp small{font-size:7px}.ribbon .wrap{justify-content:center;flex-wrap:wrap;gap:8px 17px;font-size:10px}.ribbon i{font-size:15px}.invitation{padding:70px 0}.invitation-layout{grid-template-columns:1fr;gap:22px;margin-bottom:40px}.editorial-gallery{grid-template-columns:1fr 1fr}.editorial-gallery img{height:240px}.gallery-note{grid-column:1/-1;grid-row:2;min-height:195px}.gallery-note strong{font-size:38px}.closing-layout{grid-template-columns:1fr;gap:38px}.closing-layout img{height:320px}}
@media(max-width:400px){.hero-copy .actions{align-items:flex-start;flex-direction:column;gap:20px}.editorial-gallery img{height:180px}.nav{gap:3px 11px}.nav a{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.hero-photo-frame video{width:100%;height:100%;object-fit:cover;background:#24191b}.hero-photo-frame video::-webkit-media-controls-panel{background:linear-gradient(transparent,#24151ccc)}
