@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap');
:root{--blue:#073f3c;--blue-dark:#052d2a;--rust:#aa3824;--rust-dark:#89291b;--gold:#efb92c;--green:#073f3c;--paper:#fffaf0;--ink:#1c2c30;--muted:#555f60;--border:#ded7c9;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:8rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.16;letter-spacing:-.035em}h1{font-size:clamp(3rem,5.4vw,5.75rem);margin-bottom:1.5rem}h2{font-size:clamp(2.25rem,3.3vw,3.7rem);margin-bottom:1.4rem}h3{font-size:1.85rem}h1 em,h2 em{font-weight:400}p{margin-bottom:1.25rem}::selection{background:var(--gold);color:var(--blue-dark)}:focus-visible{outline:3px solid #e38700;outline-offset:5px}.wrap{width:min(1240px,calc(100% - 6rem));margin-inline:auto}.section{padding-block:6rem}.eyebrow{display:block;font-family:var(--sans);font-size:.875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1.35rem;line-height:1.5}.eyebrow.rust{color:var(--rust)}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:100;transform:translateY(-200%);padding:.75rem;background:var(--gold);color:var(--blue)}.skip-link:focus{transform:translateY(0)}
.topline{background:var(--green);color:#fff;padding:.55rem 3rem;display:flex;justify-content:space-between;font-size:.8125rem;letter-spacing:.035em}.site-header{position:sticky;top:0;z-index:30;background:var(--blue);color:#fff;box-shadow:0 3px 0 var(--gold)}.header-inner{min-height:106px;max-width:1500px;margin:auto;padding:1.25rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{flex-shrink:0;display:flex;flex-direction:column;line-height:1}.wordmark{font:2.5rem/.9 var(--serif);letter-spacing:.06em;color:var(--gold)}.brand-star{font-size:2rem;vertical-align:middle;margin-left:.3rem}.brand-sub{font-size:.625rem;font-weight:600;letter-spacing:.17em;margin-top:.8rem;color:#fff8e8}nav{display:flex;align-items:center;gap:1.65rem}nav>a,.nav-split>a{font-size:.875rem;font-weight:500;line-height:1.5;padding:.6rem 0;white-space:nowrap}nav a:not(.button):hover{color:var(--gold)}nav [aria-current=page]:not(.button){color:var(--gold);box-shadow:0 2px 0 var(--gold)}.nav-group{position:relative}.nav-split{display:flex;align-items:center;gap:.25rem}.dropdown-toggle{border:0;background:transparent;color:white;padding:.75rem .35rem;display:flex;align-items:center;min-height:42px;min-width:28px;justify-content:center}.chevron{height:6px;width:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s}.dropdown-toggle[aria-expanded=true] .chevron{transform:rotate(225deg)}.dropdown{position:absolute;top:100%;left:-1rem;width:292px;padding:.65rem;background:var(--blue-dark);border-top:3px solid var(--gold);box-shadow:0 10px 20px #0a163433}.dropdown a{display:block;font-size:.875rem;line-height:1.5;padding:.8rem}.dropdown a:hover{background:#ffffff0c}.mobile-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;padding:.95rem 1.55rem;min-height:50px;font-size:.875rem;font-weight:700;line-height:1.4;border:1px solid transparent;transition:background .2s,transform .2s;text-align:center}.button:hover{transform:translateY(-2px)}.saffron{background:var(--gold);color:var(--blue-dark)}.saffron:hover{background:#ffd268}.cobalt{background:var(--blue);color:#fff}.cobalt:hover{background:var(--blue-dark)}nav .nav-cta{padding:.85rem 1.15rem;font-size:.8125rem}.text-link{display:inline-block;font-size:.875rem;font-weight:700;color:var(--blue);border-bottom:1px solid currentColor;padding-bottom:.3rem;line-height:1.5}.text-link:hover{color:var(--rust)}.text-link.light{color:#fff9e9}.text-link.light:hover{color:var(--gold)}
.home-hero{display:grid;grid-template-columns:47% 53%;background:var(--rust);color:var(--paper);min-height:660px;padding:4.75rem 3rem 4.5rem;gap:0;overflow:hidden}.hero-copy{padding-left:max(0px,calc((100vw - 1340px)/2));padding-right:2rem;align-self:center;position:relative;z-index:2}.hero-copy h1{font-size:clamp(3.6rem,5.1vw,6rem);line-height:1.04;letter-spacing:-.045em;margin-bottom:1.5rem}.hero-copy h1 em{color:#ffd876}.hero-copy>p{max-width:440px;color:#fff2e6;line-height:1.75}.hero-copy .eyebrow{font-size:.8125rem;color:#ffe4aa}.hero-actions{display:flex;align-items:center;gap:1.7rem;flex-wrap:wrap;margin-top:1.9rem}.hero-note{margin-top:2.6rem;font-size:.8125rem;display:flex;align-items:center;gap:.8rem}.note-line{width:2rem;height:1px;background:var(--gold)}.hero-image{position:relative;min-height:580px;margin-left:1rem}.hero-image img{height:100%;width:100%;object-fit:cover;object-position:54% 55%;border-radius:45% 45% 0 0;max-height:680px}.hero-image figcaption{position:absolute;left:2rem;bottom:2rem;right:2rem;font-family:var(--serif);font-style:italic;font-size:1.65rem;text-shadow:0 2px 8px #000;background:#162b249e;padding:1rem 1.25rem;text-align:center}.image-index{position:absolute;right:0;bottom:-2rem;font-size:.6875rem;letter-spacing:.14em}.occasion-strip{background:var(--gold);color:var(--blue-dark);display:flex;align-items:center;justify-content:center;padding:1.35rem 2rem;gap:0;font-size:.8125rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.occasion-strip span{padding:0 2rem;position:relative}.occasion-strip span+span:before{content:'✧';position:absolute;left:-.3rem;font-size:1.2rem;top:-.3rem}.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.home-intro h2{margin-bottom:0}.home-intro h2 em{color:var(--rust)}.home-intro p{max-width:540px;color:var(--muted)}.service-section{background:var(--green);color:var(--paper);padding-block:5.5rem}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2.8rem}.section-heading h2{margin:0}.section-heading .eyebrow{color:#ffce65}.occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #ffffff3d}.occasion-card{display:block;padding:2.4rem 2rem;transition:background .2s}.occasion-card+.occasion-card{border-left:1px solid #ffffff3d}.occasion-card:hover{background:#ffffff0a}.card-number{display:block;letter-spacing:.14em;font-size:.75rem;font-weight:600;line-height:1.5;margin-bottom:2rem;color:#ffd477}.occasion-card h3{font-size:2rem;line-height:1.2;margin-bottom:1.25rem}.occasion-card p{font-size:1rem;color:#d7e5de;margin-bottom:2rem}.card-link{display:inline-block;font-size:.8125rem;font-weight:600;border-bottom:1px solid #ffffff80;padding-bottom:.2rem}.chef-teaser{display:grid;grid-template-columns:1fr 1.4fr;gap:7rem;align-items:center}.chef-teaser>div>p{color:var(--muted);max-width:580px}.experience-block{background:var(--blue);color:var(--paper);min-height:350px;padding:2.5rem;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;border-radius:45% 45% 0 0;position:relative}.experience-block>span:first-child{font:8rem/1 var(--serif);color:var(--gold)}.experience-block>p{font-size:.75rem;letter-spacing:.15em;line-height:1.7;margin:1.2rem 0}.experience-rule{width:55px;height:1px;background:#ffe8bb80;margin-bottom:1.25rem}.experience-signature{font-family:var(--serif);font-style:italic;font-size:1.8rem}.cta-band{background:var(--rust);color:var(--paper);padding:3.8rem 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:3rem}.cta-inner .eyebrow{color:#ffe099}.cta-inner h2{font-size:clamp(2rem,3vw,3.25rem);margin-bottom:.8rem}.cta-inner p{color:#fff0dd;margin:0}.cta-inner .button{flex-shrink:0}
.page-intro{padding-top:5rem;padding-bottom:3.5rem}.page-intro h1{max-width:1000px}.page-intro h1 em,.contact-copy h1 em,.menu-intro h1 em{color:var(--rust)}.page-intro>p{max-width:670px;font-size:1.125rem;color:var(--muted);margin:0}.about-layout{display:grid;grid-template-columns:.85fr 1.25fr;gap:7rem;align-items:start;padding-block:1rem 3rem}.experience-block.large{min-height:500px}.experience-block.large>span:first-child{font-size:10rem}.about-copy{padding-top:1rem}.about-copy p{color:var(--muted)}.about-copy .button{margin-top:1rem}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;border-top:1px solid var(--border);padding-top:2.8rem}.principles .eyebrow{font-size:.75rem}.principles p{color:var(--muted);margin:0}.event-feature{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:5rem;padding-block:1rem 2rem}.event-feature img{height:460px;object-fit:cover;border-radius:48% 48% 0 0}.event-feature p{color:var(--muted)}.service-details{display:grid;grid-template-columns:1fr 1fr;gap:6rem}.service-details article{border-top:1px solid var(--border);padding-top:2rem;scroll-margin-top:10rem}.service-details .card-number{color:var(--rust)}.service-details h2{font-size:2.6rem}.service-details p{color:var(--muted)}.format-section{background:var(--blue);color:var(--paper);padding-block:5rem}.format-layout{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.format-layout>div>.eyebrow{color:#ffda73}.format-layout h2 em{color:#ffda73}.format-layout p{color:#e3e9f7}.format-controls{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.format-controls button{background:transparent;color:#fff;border:1px solid #ffffff80;padding:.75rem 1.2rem;font-size:.875rem;font-weight:600;min-height:48px}.format-controls button:hover{background:#ffffff12}.format-controls button[aria-pressed=true]{background:var(--gold);color:var(--blue-dark);border-color:var(--gold)}.format-description .eyebrow{font-size:.75rem;color:#ffda73}.format-description h3{font-size:2rem;max-width:450px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;list-style:none;margin:2.5rem 0 0;padding:0}.process-grid li{border-top:1px solid var(--border);padding-top:1.5rem}.process-grid li>span{font:2.5rem var(--serif);color:var(--rust)}.process-grid h3{margin:1rem 0;font-size:1.75rem}.process-grid p{color:var(--muted);margin:0}.wedding-hero{position:relative;min-height:590px;display:flex;align-items:center;padding:4.5rem max(3rem,calc((100vw - 1240px)/2));background:var(--green);color:white}.wedding-hero>img{position:absolute;inset:0;height:100%;object-fit:cover;filter:brightness(.6)}.wedding-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0a2c27ce,#0a2c2710)}.wedding-hero>div{position:relative;z-index:1;max-width:820px}.wedding-hero h1{font-size:clamp(3rem,5.2vw,5.6rem)}.wedding-hero h1 em{color:#ffd575}.wedding-hero p{max-width:500px;margin-bottom:2rem}.wedding-hero .eyebrow{color:#ffdf8a}
.menu-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:5rem;align-items:center;padding-block:4.5rem 3rem}.menu-intro h1{font-size:clamp(3rem,4.6vw,5.15rem)}.menu-intro p{color:var(--muted);max-width:550px}.menu-intro img{height:350px;object-fit:cover;object-position:60% 80%;border-radius:45% 45% 0 0}.menu-section{padding-bottom:5rem}.menu-toolbar{border-block:1px solid var(--border);padding-block:1.2rem;margin-bottom:1.5rem}.menu-filters{display:flex;gap:.5rem;flex-wrap:wrap}.menu-filters button{border:1px solid var(--border);background:transparent;color:var(--ink);min-height:44px;padding:.65rem 1rem;font-size:.875rem;font-weight:500}.menu-filters button:hover{border-color:var(--blue)}.menu-filters button[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:white}.menu-count{font-size:.875rem;color:var(--muted);margin:.9rem 0 0}.menu-disclaimer{font-size:.875rem;max-width:780px;color:var(--muted);margin-bottom:2rem}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.menu-card{background:white;border:1px solid var(--border);border-top:3px solid var(--rust);padding:2rem;display:flex;flex-direction:column}.menu-card .eyebrow{font-size:.75rem;margin-bottom:1rem}.menu-card h2{font-size:1.7rem;line-height:1.28;margin-bottom:1rem}.menu-card>p{color:var(--muted);font-size:1rem;flex:1}.menu-card details{border-top:1px solid var(--border);padding-top:.8rem;font-size:.875rem}.menu-card summary{cursor:pointer;font-weight:600;color:var(--blue);padding:.3rem 0}.menu-card details p{margin:1rem 0 0;color:var(--muted)}
.contact-section{display:grid;grid-template-columns:1.1fr 1fr;gap:6rem;padding-block:5rem 6rem;align-items:start}.contact-copy h1{font-size:clamp(3rem,4.5vw,4.7rem)}.contact-copy>p{max-width:480px;color:var(--muted)}.contact-info{margin-top:2.5rem;display:flex;flex-direction:column}.contact-info>.eyebrow{font-size:.75rem;margin:0 0 .5rem}.contact-info>a{font-size:clamp(1.1rem,1.6vw,1.35rem);color:var(--blue);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere;margin-bottom:1.8rem}.contact-info>p{color:var(--muted);font-size:.9375rem}.contact-experience{display:flex;gap:1rem;align-items:center;border-top:1px solid var(--border);padding-top:1.5rem;max-width:430px;margin-top:1.5rem}.contact-experience strong{font:2rem var(--serif);color:var(--rust);white-space:nowrap}.contact-experience span{font-size:.875rem;color:var(--muted);max-width:180px}.inquiry-card{background:white;border:1px solid var(--border);border-top:5px solid var(--gold);padding:2.5rem;box-shadow:12px 12px 0 #073f3c0d}.form-heading h2{font-size:2.3rem;margin-bottom:1rem}.form-heading .eyebrow{font-size:.75rem}.form-heading p{font-size:.875rem;color:var(--muted);line-height:1.6;margin-bottom:1.75rem}.field{min-width:0;margin-bottom:1.2rem}.field label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.45rem}.field input{width:100%;max-width:100%;min-width:0;border:1px solid #bcbfbf;border-radius:0;min-height:50px;padding:.7rem .8rem;background:#fffefd;color:var(--ink);font-size:1rem;line-height:1.5;color-scheme:light}.field input:focus{border-color:var(--blue)}.field input[aria-invalid=true]{border-color:var(--rust);background:#fff8f6}.field input::placeholder{color:#727b7c;opacity:1}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field-error{font-size:.8125rem;color:var(--rust);line-height:1.5;margin:.45rem 0 0}.form-error-summary{background:#fff0ec;border-left:3px solid var(--rust);font-size:.875rem;color:var(--rust-dark);padding:.8rem 1rem;margin-bottom:1.5rem}.form-submit{width:100%;margin-top:.3rem}.form-note{font-size:.8125rem;color:var(--muted);line-height:1.55;margin:1rem 0 0}.form-note a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}#inquiry-review h2{font-size:2.2rem}#inquiry-review>p{font-size:.9375rem;color:var(--muted)}.review-details{margin:1.5rem 0 2rem}.review-details>div{padding:.85rem 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:100px 1fr;gap:1rem}.review-details dt{font-size:.875rem;font-weight:600}.review-details dd{margin:0;font-size:.9375rem;overflow-wrap:anywhere}.edit-button{background:none;border:0;border-bottom:1px solid currentColor;margin-top:1rem;margin-left:1rem;padding:0 0 .3rem}
.site-footer{background:var(--blue-dark);color:var(--paper);padding-top:4.5rem}.footer-top{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:5rem;padding-bottom:3rem}.footer-brand{font:3rem/1 var(--serif);letter-spacing:.05em;color:var(--gold);display:block;margin-bottom:1.2rem}.footer-brand span{font-size:2rem;margin-left:.3rem}.footer-top h2{font-family:var(--sans);font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:#ffd56b;margin-bottom:1.5rem;font-weight:600}.footer-top p{color:#d5dcf0;font-size:.875rem;margin:1rem 0 0}.footer-top>div>a:not(.footer-brand){display:block;font-size:.875rem;margin-bottom:.6rem;overflow-wrap:anywhere}.footer-top a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;align-items:start;border-top:1px solid #ffffff26;padding-block:1.25rem;gap:2rem;color:#c5cfe6;font-size:.75rem}.credits{max-width:300px}.credits summary{cursor:pointer}.credits p{margin:.75rem 0;font-size:.75rem}.credits a{text-decoration:underline}
@media(min-width:1700px){.home-hero{padding-inline:max(3rem,calc((100vw - 1450px)/2));grid-template-columns:47% 53%}.hero-copy{padding-left:0}}
@media(max-width:1200px){.header-inner{gap:1rem;padding-inline:2rem}nav{gap:1rem}nav>a,.nav-split>a{font-size:.8125rem}.wordmark{font-size:2.2rem}nav .nav-cta{padding:.7rem .85rem}.home-hero{padding-inline:2.5rem}.hero-copy h1{font-size:5.2vw}.hero-image{min-height:540px}.occasion-strip span{padding-inline:1.4rem;font-size:.75rem}.wrap{width:calc(100% - 5rem)}.contact-section{gap:3rem}.inquiry-card{padding:2rem}.chef-teaser,.about-layout{gap:4rem}}
@media(max-width:1020px){.topline{padding-inline:2rem}.header-inner{min-height:88px}.mobile-toggle{display:flex;align-items:center;gap:.7rem;color:#fff;background:none;border:1px solid #ffffff50;padding:.6rem .8rem;font-size:.875rem;min-height:44px}.hamburger{width:18px;height:12px;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor;position:relative}.hamburger:after{content:'';position:absolute;left:0;right:0;top:4px;height:1.5px;background:currentColor}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--blue-dark);border-top:1px solid #ffffff2b;max-height:calc(100dvh - 100px);overflow-y:auto;padding:1rem 2rem 1.5rem;align-items:stretch;gap:0;box-shadow:0 15px 20px #08193640}nav.is-open{display:flex;flex-direction:column}nav>a,.nav-split>a{font-size:1rem;padding:.75rem 0}.nav-split{justify-content:space-between}.nav-split>a{flex:1}.dropdown-toggle{min-width:46px;min-height:46px}.dropdown{position:static;width:auto;margin-bottom:.6rem;border-top:0;border-left:2px solid var(--gold);box-shadow:none;background:#ffffff08}.dropdown a{font-size:.9375rem;padding:.7rem 1rem}.nav-cta{margin-top:.75rem;align-self:flex-start}.hero-copy h1{font-size:clamp(3rem,5.5vw,4.8rem)}.home-hero{min-height:560px;padding-top:3.5rem}.hero-image{min-height:480px}.hero-image figcaption{font-size:1.3rem;left:1rem;right:1rem}.occasion-strip{flex-wrap:wrap;row-gap:.9rem}.occasion-strip span{flex-basis:50%;text-align:center}.occasion-strip span:nth-child(3):before{display:none}.home-intro,.format-layout{gap:3rem}.occasion-card{padding:2rem 1.5rem}.occasion-card h3{font-size:1.7rem}.menu-grid{grid-template-columns:repeat(2,1fr)}.menu-intro{gap:3rem}.menu-intro img{height:310px}.contact-section{grid-template-columns:1fr 1fr}.contact-copy h1{font-size:3.6rem}.field-row{grid-template-columns:1fr;gap:0}.event-feature{gap:3rem}.footer-top{gap:3rem}.service-details{gap:3rem}}
@media(max-width:760px){.wrap{width:calc(100% - 3rem)}.section{padding-block:3.5rem}.topline{justify-content:center;padding:.5rem 1rem;font-size:.75rem}.topline span:first-child{display:none}.header-inner{padding:.9rem 1.5rem;min-height:86px}.wordmark{font-size:2.1rem}.brand-sub{font-size:.5625rem;letter-spacing:.12em}.home-hero{grid-template-columns:1fr;padding:3rem 1.5rem 2.75rem;overflow:visible;gap:2.5rem}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(3.5rem,10vw,5.5rem)}.hero-copy h1 br:first-child{display:none}.hero-copy h1 br:first-child:after{content:' '}.hero-copy>p{max-width:520px}.hero-copy .eyebrow{font-size:.75rem}.hero-note{margin-top:2rem}.hero-image{min-height:0;margin:0;width:100%;height:380px}.hero-image img{max-height:none;object-position:50% 70%;border-radius:42% 42% 0 0}.hero-image figcaption{bottom:1rem;font-size:1.4rem;padding:.75rem}.image-index{bottom:-1.7rem}.occasion-strip{padding:1.2rem .5rem;row-gap:1rem}.occasion-strip span{font-size:.6875rem;line-height:1.5;padding:0 .8rem}.home-intro,.chef-teaser,.about-layout,.event-feature,.service-details,.format-layout,.menu-intro,.contact-section{grid-template-columns:1fr;gap:2rem}.home-intro h2{margin-bottom:.2rem}.home-intro p{max-width:none}.service-section{padding-block:3.5rem}.section-heading{display:block;margin-bottom:2rem}.section-heading>.text-link{margin-top:1.5rem}.occasion-grid{grid-template-columns:1fr}.occasion-card+.occasion-card{border-left:0;border-top:1px solid #ffffff3d}.occasion-card{padding:2rem}.card-number{margin-bottom:1.25rem}.occasion-card h3{font-size:2rem}.occasion-card p{margin-bottom:1.5rem}.experience-block{min-height:320px;max-width:380px;width:100%;margin-inline:auto}.chef-teaser{gap:2.5rem}.chef-teaser h2{font-size:2.6rem}.cta-band{padding-block:3rem}.cta-inner{display:block}.cta-inner .button{margin-top:1.75rem}.cta-inner h2{font-size:2.4rem}.page-intro{padding-block:3rem 2.5rem}.page-intro h1{font-size:clamp(3rem,8.7vw,4.4rem)}.page-intro>p{font-size:1rem}.experience-block.large{min-height:400px;margin-bottom:1rem}.experience-block.large>span:first-child{font-size:8.5rem}.about-layout{padding-bottom:0}.principles{grid-template-columns:1fr;gap:2.5rem}.principles h3{margin-bottom:.8rem}.principles p{max-width:500px}.event-feature{padding-top:0}.event-feature img{height:340px}.service-details{gap:2.5rem}.format-section{padding-block:3.5rem}.format-controls button{padding-inline:1rem}.format-description h3{font-size:2rem}.process-grid{grid-template-columns:1fr;gap:2rem}.process-grid li{display:grid;grid-template-columns:55px 1fr;gap:.75rem 1rem}.process-grid h3{margin:0;align-self:center}.process-grid p{grid-column:2}.wedding-hero{min-height:520px;padding:3rem 1.5rem}.wedding-hero h1{font-size:clamp(3rem,8.6vw,4.5rem)}.wedding-hero>img{object-position:45% center}.wedding-hero:after{background:#0b2e2790}.menu-intro{padding-block:3rem 2rem}.menu-intro h1{font-size:clamp(3rem,8.5vw,4.2rem)}.menu-intro img{height:300px;object-position:50% 75%}.menu-section{padding-bottom:3.5rem}.menu-card{padding:1.5rem}.menu-grid{gap:1rem}.menu-card h2{font-size:1.5rem}.contact-section{padding-block:3rem 3.5rem;gap:2.5rem}.contact-copy h1{font-size:clamp(3rem,8.5vw,4.25rem)}.contact-info{margin-top:2rem}.contact-experience{margin-top:1rem}.inquiry-card{padding:2rem;box-shadow:6px 6px 0 #073f3c0d}.field-row{grid-template-columns:1fr 1fr;gap:1rem}.footer-top{grid-template-columns:1fr 1fr;gap:2.5rem;padding-bottom:2.5rem}.footer-top>div:first-child{grid-column:1/-1}.site-footer{padding-top:3rem}.footer-bottom{display:block}.credits{margin-top:1rem}}
@media(max-width:430px){.hero-copy h1{font-size:clamp(2.8rem,13vw,3.65rem)}.hero-actions{gap:1.2rem}.hero-image{height:310px}.hero-image figcaption{font-size:1.2rem}.occasion-strip span{font-size:.625rem}.menu-grid{grid-template-columns:1fr}.menu-card{padding:1.5rem}.menu-card h2{font-size:1.8rem}.menu-filters button{padding-inline:.8rem}.field-row{grid-template-columns:1fr;gap:0}.inquiry-card{padding:1.5rem}.footer-top{grid-template-columns:1fr;gap:2rem}.footer-top>div:first-child{grid-column:auto}.review-details>div{grid-template-columns:80px 1fr;gap:.5rem}.edit-button{display:block;width:max-content;margin:1.2rem 0 0}.hero-note{font-size:.75rem}.format-controls{gap:.35rem}.format-controls button{font-size:.8125rem;padding-inline:.75rem}.contact-copy h1{font-size:3rem}}
html:not(.js) .mobile-toggle{display:none}
@media(max-width:1020px){html:not(.js) .site-header{position:static}html:not(.js) .header-inner{flex-wrap:wrap}html:not(.js) nav{display:flex;position:static;width:100%;flex-direction:column;max-height:none;padding:1rem;box-shadow:none}}
/* Earlier Oasis visual direction: cream, gold, teal and Moroccan geometry. */
:root{--blue:#073f3c;--blue-dark:#052d2a;--green:#073f3c;--gold:#edbd4a;--rust:#a33c29;--paper:#fffaf0}
.site-header{background:var(--paper);color:var(--blue);box-shadow:0 2px 0 #bd8d2b}.header-inner{min-height:105px}.brand{display:grid;grid-template-columns:48px auto;grid-template-rows:auto auto;column-gap:.8rem;align-items:center}.brand-motif{grid-row:1/3;width:48px;height:48px;color:var(--blue)}.wordmark{grid-column:2;color:#987019;font-size:2.7rem}.brand-star{display:none}.brand-sub{grid-column:2;color:var(--blue);font-size:.72rem;letter-spacing:.32em;margin-top:.55rem}.dropdown-toggle{color:var(--blue)}nav [aria-current=page]:not(.button){color:#8b6113;box-shadow:0 2px 0 #bd8d2b}nav a:not(.button):hover{color:#98680e}.nav-cta.saffron{background:var(--blue);color:white}.nav-cta.saffron:hover{background:#0b5550}.dropdown{background:var(--paper);color:var(--blue);box-shadow:0 8px 20px #063b3a22}.dropdown a:hover{background:#ead4a62e}.mobile-toggle{color:var(--blue);border-color:#073f3c60}
.moroccan-hero{display:block;position:relative;isolation:isolate;min-height:540px;padding:5rem 0 4rem;background:var(--blue);color:white;overflow:hidden}.moroccan-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:68% 53%}.moroccan-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#031e1bea 0%,#062a25c2 26%,#051d1744 57%,#04151205 85%)}.moroccan-hero .hero-copy{padding:0;max-width:1240px;position:relative}.moroccan-hero .eyebrow{font-size:1.08rem;font-weight:500;letter-spacing:.1em;color:#ffe18a;max-width:580px}.moroccan-hero h1{font-size:clamp(3.3rem,5.7vw,6rem);line-height:1.15;max-width:750px;margin:0 0 1.25rem;letter-spacing:-.035em}.moroccan-hero h1 em{color:white}.moroccan-hero .hero-copy>p{font-size:1.2rem;line-height:1.6;color:#fff;max-width:480px;margin-top:1.25rem}.moroccan-hero .hero-note{color:#ffe3a0;font-size:.875rem;margin-top:2rem;max-width:500px}.moroccan-divider{display:flex;align-items:center;gap:.65rem;max-width:390px;color:#edbd4a}.moroccan-divider i{height:1px;background:#dcb656;flex:1}.moroccan-divider b{font-weight:400;font-size:1.2rem;line-height:1}.gathering-band{background:var(--paper);border-bottom:1px solid var(--border);padding:2.2rem 0}.gathering-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0}.gathering-grid>a{text-align:center;padding:0 1.4rem}.gathering-grid>a+a{border-left:1px solid var(--border)}.gathering-number{font:2rem/1 var(--serif);color:#a67a1d;display:block;margin-bottom:1rem}.gathering-grid h2{font:600 .875rem/1.5 var(--sans);letter-spacing:.025em;text-transform:uppercase;color:var(--blue);margin-bottom:.65rem}.gathering-grid p{font-size:.8125rem;line-height:1.6;margin:0;color:var(--muted)}.gathering-grid>a:hover h2{color:var(--rust)}
.signature-section{padding:3.5rem 0 1.5rem;scroll-margin-top:9rem}.signature-heading{margin-bottom:1.8rem}.signature-heading .eyebrow{margin-bottom:.6rem}.signature-heading h2{font-size:2.8rem;margin-bottom:0}.signature-heading h2 em{color:#9a6a14}.food-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.food-card{margin:0;background:var(--blue);min-width:0;border-bottom:3px solid #c4973c}.food-card>img{width:100%;height:280px;object-fit:cover;object-position:center 55%}.food-caption{color:var(--paper);text-align:center;padding:1.1rem .7rem 1.25rem}.food-caption h3{font:600 1.1rem/1.4 var(--sans);letter-spacing:.07em;text-transform:uppercase;margin:0 0 .35rem;color:#ffe7ad}.food-caption p{font-family:var(--serif);font-style:italic;font-size:1rem;line-height:1.5;margin:0}.menu-intro img{object-position:50% 55%;border-radius:0;box-shadow:10px 10px 0 #bd8d2b2b}.site-footer{position:relative;background-color:var(--blue-dark);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90' viewBox='0 0 90 90'%3E%3Cpath d='M45 10L55 30L75 35L60 50L65 75L45 62L25 75L30 50L15 35L35 30Z' fill='none' stroke='%23cfa544' stroke-opacity='.08'/%3E%3C/svg%3E")}.footer-brand small{display:block;font:600 .75rem/1 var(--sans);letter-spacing:.33em;margin-top:.9rem;color:#fff0bc}.topline{background:var(--blue-dark)}.experience-block{border:1px solid #bb922f}.cta-band{background:var(--blue);border-top:3px solid #c4973c}.cta-inner .eyebrow{color:#edcf84}.section-heading .eyebrow{color:#edcf84}
@media(max-width:1200px){nav{gap:1rem}.header-inner{padding-inline:1.6rem}.wordmark{font-size:2.3rem}.brand-motif{width:42px;height:42px}.brand{grid-template-columns:42px auto;column-gap:.6rem}nav>a,.nav-split>a{font-size:.8125rem}.gathering-grid>a{padding-inline:.9rem}.food-card>img{height:240px}}
@media(max-width:1020px){nav{background:var(--paper);border-top:1px solid var(--border);box-shadow:0 12px 20px #063b3a25}.dropdown{background:#e9dfc83b;border-left-color:#b98c2c}.moroccan-hero{min-height:540px}.moroccan-hero .eyebrow{font-size:.9375rem}.gathering-grid{grid-template-columns:repeat(3,1fr);gap:1.7rem 0}.gathering-grid>a:nth-child(4){border-left:0}.gathering-grid>a{padding-inline:1.2rem}.food-card>img{height:210px}.food-caption p{font-size:.875rem}.food-caption h3{font-size:1rem}}
@media(max-width:760px){.brand-sub{font-size:.625rem}.brand-motif{width:38px;height:38px}.brand{grid-template-columns:38px auto}.header-inner{min-height:88px;padding:1rem 1.5rem}.moroccan-hero{min-height:560px;padding:3.5rem 0 2.8rem}.moroccan-hero h1{font-size:clamp(3.15rem,8.7vw,4.8rem);max-width:580px}.moroccan-hero .eyebrow{font-size:.875rem;max-width:340px}.moroccan-hero .hero-copy>p{font-size:1.0625rem;max-width:330px}.moroccan-hero-image{object-position:65% center}.moroccan-hero:after{background:linear-gradient(90deg,#031e1bee,#062a2599 65%,#051d1744)}.moroccan-hero .hero-note{font-size:.8125rem;line-height:1.6}.gathering-grid{grid-template-columns:repeat(2,1fr);row-gap:1.8rem}.gathering-grid>a:nth-child(odd){border-left:0}.gathering-grid>a:nth-child(4){border-left:1px solid var(--border)}.gathering-grid>a:last-child{grid-column:1/-1;max-width:300px;justify-self:center}.gathering-grid h2{font-size:.8125rem}.gathering-grid p{font-size:.8125rem}.signature-section{padding:2.8rem 0 1rem}.signature-heading h2{font-size:2.35rem}.food-gallery{grid-template-columns:1fr;gap:1.4rem}.food-card>img{height:300px;object-position:center 52%}.food-caption h3{font-size:1.05rem}.food-caption p{font-size:1rem}.moroccan-divider{max-width:270px}}
@media(max-width:430px){.moroccan-hero{min-height:560px}.moroccan-hero h1{font-size:3.1rem;max-width:300px}.moroccan-hero .hero-actions{align-items:flex-start;flex-direction:column;gap:1.1rem}.food-card>img{height:260px}.wordmark{font-size:2.1rem}.gathering-grid>a{padding-inline:.7rem}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.menu-size-note{display:flex;justify-content:space-between;gap:1.5rem;padding:1.3rem 1.5rem;background:#ede5d1;border-left:3px solid #ac7d22;color:var(--blue);font-size:.9375rem;flex-wrap:wrap}.menu-size-note span{font-size:.875rem}.menu-category-group{margin-bottom:3.2rem;scroll-margin-top:9rem}.priced-category-heading{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:1.3rem}.priced-category-heading h2{font-size:2.4rem;color:var(--blue);margin:0}.priced-category-heading p{max-width:470px;font-size:.875rem;color:var(--muted);margin:0}.priced-menu-table{width:100%;border-collapse:collapse;border:1px solid var(--border);table-layout:fixed;background:white}.priced-menu-table th:first-child{width:52%;text-align:left}.priced-menu-table thead{background:var(--blue);color:var(--paper)}.priced-menu-table thead th{padding:1rem 1.2rem;font-size:.875rem;font-weight:600;letter-spacing:.03em;text-align:center}.priced-menu-table thead span{display:block;font-size:.75rem;color:#ffe2a0;font-weight:400;margin-top:.15rem}.priced-menu-table tbody th{padding:1.3rem 1.5rem;font-weight:400}.priced-menu-table tbody td{padding:1.2rem .6rem;text-align:center;vertical-align:middle;border-left:1px solid #eee6d7;font-size:1.125rem;color:var(--blue)}.priced-menu-table tbody tr+tr{border-top:1px solid var(--border)}.priced-menu-table tbody tr:nth-child(even){background:#fffaf0}.priced-menu-table h3{font-family:var(--serif);font-size:1.35rem;font-weight:500;line-height:1.3;margin:0 0 .5rem;letter-spacing:-.02em;color:var(--blue)}.priced-menu-table p{font-size:.875rem;line-height:1.6;margin:0;color:var(--muted)}.mobile-size{display:none}.priced-menu-groups{padding-top:.5rem}
@media(max-width:760px){.menu-size-note{display:block;padding:1rem 1.2rem}.menu-size-note span{display:block;margin-top:.5rem;line-height:1.7}.priced-category-heading{display:block}.priced-category-heading p{margin-top:.75rem}.priced-category-heading h2{font-size:2rem}.priced-menu-table{display:block;table-layout:auto;border:0;background:none}.priced-menu-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.priced-menu-table tbody{display:block}.priced-menu-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border);margin-bottom:1rem;background:#fff}.priced-menu-table tbody th:first-child{width:auto;grid-column:1/-1;padding:1.1rem 1.1rem .9rem}.priced-menu-table tbody td{padding:.8rem .25rem;border-top:1px solid var(--border);font-size:1.125rem}.priced-menu-table tbody td:nth-child(2){border-left:0}.priced-menu-table tbody tr+tr{border-top:1px solid var(--border)}.mobile-size{display:block;white-space:normal;font-family:var(--sans);font-size:.6875rem;font-weight:500;line-height:1.5;margin-bottom:.3rem;color:var(--muted)}.priced-menu-table h3{font-size:1.4rem}.priced-menu-table p{font-size:.9375rem}.menu-category-group{margin-bottom:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover{transform:none}}

/* Chef Karim's supplied portrait and family story */
.about-layout{grid-template-columns:.65fr 1.4fr;gap:4rem;align-items:start}
.chef-profile{display:flex;flex-direction:column;align-items:center;padding-top:1rem;gap:1.5rem}
.chef-portrait-frame{width:min(100%,320px);padding:.65rem;background:var(--blue);border:1px solid var(--gold);box-shadow:10px 10px 0 #c4973c20}
.chef-portrait-frame img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}
.chef-portrait-frame figcaption{text-align:center;color:#ffe7ad;font-family:var(--serif);font-size:1.1rem;line-height:1.5;padding:.9rem .4rem .4rem}
.chef-experience{text-align:center;color:var(--blue)}.chef-experience .chef-years{display:block;font:2.5rem/1.2 var(--serif)}.chef-experience p{font-size:.875rem;margin:.5rem 0 0}
@media(max-width:760px){.about-layout{grid-template-columns:1fr;gap:2.5rem}.chef-profile{padding-top:0}.chef-portrait-frame{width:min(100%,280px)}.about-copy{padding-top:0}}

/* Existing Contact Form 7 integrated into the editable inquiry widget */
.oasis-template .inquiry-card .wpcf7 form{margin:0}
.oasis-template .inquiry-card .field label{color:#1c2c30;font:600 .875rem/1.5 'DM Sans',Arial,sans-serif}
.oasis-template .inquiry-card .wpcf7 input:not([type=hidden]){width:100%;max-width:100%;box-sizing:border-box;min-height:48px;border:1px solid #b7bdba;border-radius:0;background:#fff;color:#1c2c30;padding:.8rem 1rem;font:1rem/1.5 'DM Sans',Arial,sans-serif}
.oasis-template .inquiry-card .wpcf7 input[aria-invalid=true]{border-color:#aa3824}
.oasis-template .inquiry-card .wpcf7 .wpcf7-not-valid-tip{font-size:.875rem;color:#aa3824;margin:.35rem 0}
.oasis-template .inquiry-card .wpcf7 button[type=submit],.oasis-template .inquiry-card .wpcf7 input[type=submit]{display:flex;width:100%;justify-content:center;align-items:center;background:#efb92c!important;border:1px solid #efb92c!important;color:#052d2a!important;font:700 .875rem/1.5 'DM Sans',Arial,sans-serif;min-height:50px;margin:.75rem 0 0;padding:.9rem 1rem;text-transform:none}
.oasis-template .inquiry-card .wpcf7-response-output{margin:1.5rem 0 0;padding:.75rem 1rem;font-size:1rem;line-height:1.5}
