 .menu-card-brown{background:var(--brown)!important;color:var(--blue)!important}
 .menu-card-brown h3,.menu-card-brown p,.menu-card-brown .tag{color:var(--blue)!important}
 .menu-card-featured,.menu-card-featured h3,.menu-card-featured p,.menu-card-featured li,.menu-card-featured .card-number,.menu-card-featured .tag,.menu-card-featured .price{color:var(--cream)!important}
.section-pad.events-section{position:relative;display:block;overflow:hidden}
.events-section .event-image{position:absolute;right:clamp(40px,12vw,180px);bottom:0;z-index:0;width:min(42vw,520px);opacity:.24;pointer-events:none}
.events-section .event-image img{width:100%;height:auto;max-height:none;border:0;border-radius:0;padding:0;transform:none}
.events-section .event-list{position:relative;z-index:1;width:min(100%,760px);margin:0 auto;text-align:center}
.events-section .event-list ul{max-width:720px;margin:28px auto 0;text-align:left}
.events-section .event-list ul{background:rgba(183,209,245,.62)}
@media(max-width:760px){.events-section .event-image{right:4%;bottom:0;width:min(72vw,380px);opacity:.18}.events-section .event-list{width:100%}}
.event-image{position:relative;display:flex;align-items:center;justify-content:center}.event-image img{width:min(100%,500px);height:min(100%,500px);max-height:500px;aspect-ratio:1;object-fit:contain;border-radius:50%;border:14px solid var(--cream);transform:rotate(-7deg);background:rgba(255,255,255,.12);padding:12px}
@media(max-width:480px){.event-image img{border-width:9px;padding:8px}}
@media(max-width:760px){.site-header{align-items:center!important;flex-direction:row!important}}

.booking-section .eyebrow-light{color:var(--orange)!important}
.booking-section .eyebrow-light span{background:var(--orange)!important}
.booking-section>div>p:not(.eyebrow-light){color:var(--cream)!important}
@media(max-width:760px){.hero-circle{box-shadow:none!important}}
.hero::before,.hero-circle::before{display:none!important}.hero-circle{box-shadow:none!important}
.event-list{border-top:0!important}
.event-list ul{padding:18px 24px!important;background:var(--blue);border:1px solid rgba(62,26,24,.18)}
.hero{background:var(--cream)!important}
.hero .text-link{color:var(--brown)!important}
.hero{grid-template-columns:1fr!important;gap:10px;justify-items:center;text-align:center}
.hero-logo{width:min(100%,560px);height:auto;margin:0 auto 28px}
.hero-copy{width:100%;max-width:1000px;text-align:center}
.hero .hero-lede{margin-left:auto;margin-right:auto}
.hero-actions{justify-content:center}
.hero-logo{margin:0 auto}
@media(max-width:760px){.hero{gap:0}}
.menu-grid{grid-template-columns:1fr}
.menu-card .price{font-family:'Fredoka',sans-serif}
:root{--cream:#faf1ea;--blue:#B7D1F5;--orange:#FD4A01;--brown:#3E1A18;--ink:#3E1A18;--white:#fffaf6;--line:rgba(62,26,24,.18);--serif:"Fraunces",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--brown);font-family:var(--sans);font-size:16px;line-height:1.5}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.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}.section-pad{padding-left:clamp(24px,7vw,112px);padding-right:clamp(24px,7vw,112px)}.announcement{background:var(--orange);color:var(--cream);font-size:12px;font-weight:700;letter-spacing:.12em;text-align:center;text-transform:uppercase;padding:9px 20px}.announcement span{padding:0 10px;color:var(--orange)}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:14px clamp(24px,7vw,112px);background:rgba(250,241,161,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:22px;font-weight:700;line-height:.9}.brand img{width:42px;height:42px;border-radius:50%;object-fit:cover}.brand small{display:block;font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.27em;text-transform:uppercase}.site-nav{display:flex;align-items:center;gap:clamp(17px,2.6vw,38px);font-size:13px;font-weight:600}.site-nav>a:not(.button){position:relative}.site-nav>a:not(.button):after{content:"";position:absolute;bottom:-7px;left:0;width:0;height:2px;background:var(--orange);transition:width .25s}.site-nav>a:not(.button):hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid var(--orange);background:var(--orange);color:var(--cream);padding:14px 21px;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:5px 5px 0 var(--brown)}.button-small{padding:10px 15px}.button-dark{background:var(--brown);border-color:var(--brown)}.button-cream{background:var(--cream);border-color:var(--cream);color:var(--brown)}.text-link{display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid var(--brown);padding-bottom:4px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.text-link span{font-size:20px;font-weight:400}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:26px;height:2px;margin:5px;background:var(--brown)}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:50px;min-height:650px;align-items:center;overflow:hidden}.hero-copy{padding:75px 0 86px}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.eyebrow span{display:inline-block;width:28px;height:2px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:600;letter-spacing:-.04em;line-height:.98}h1{font-size:clamp(56px,7vw,100px);margin:24px 0 28px}h2{font-size:clamp(45px,5vw,72px);margin:18px 0 28px}em{color:var(--orange);font-style:normal}.hero-lede{max-width:455px;color:rgba(62,26,24,.74);font-size:17px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:35px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:62px;color:rgba(62,26,24,.7);font-size:12px;font-weight:600;line-height:1.3;text-transform:uppercase;letter-spacing:.07em}.hero-note strong{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--orange);border-radius:50%;color:var(--orange);font-size:20px}.hero-art{position:relative;display:grid;place-items:center;min-height:550px}.hero-circle{position:relative;width:min(34vw,450px);aspect-ratio:1;border:16px solid var(--blue);border-radius:50%;overflow:hidden;box-shadow:18px 20px 0 rgba(183,209,245,.45);transform:rotate(5deg)}.hero-circle:before{content:"";position:absolute;inset:0;background:var(--cream);opacity:.14;z-index:1}.hero-circle img{width:100%;height:100%;object-fit:cover}.sun-sticker{position:absolute;z-index:2;top:55px;right:2%;display:grid;place-items:center;width:125px;height:125px;border:2px solid var(--orange);border-radius:50%;background:var(--orange);color:var(--cream);font-size:11px;line-height:1.4;letter-spacing:.12em;text-align:center;transform:rotate(10deg)}.sun-sticker strong{font-size:17px}.hero-caption{position:absolute;bottom:75px;right:8%;display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}.hero-caption span:first-child{color:var(--orange)}.scribble{position:absolute;border:2px solid var(--orange);border-radius:50%;width:160px;height:33px;transform:rotate(-25deg);opacity:.8}.scribble-one{bottom:90px;left:1%}.scribble-two{top:100px;left:3%;width:75px;height:18px;transform:rotate(35deg)}.intro-band{background:var(--brown);color:var(--cream);padding:90px 0}.intro-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:30px;align-items:start}.eyebrow-light{color:var(--blue)}.eyebrow-light span{background:var(--blue)}.intro-grid h2{font-size:clamp(42px,5vw,66px);margin:0}.intro-grid>p:last-child{max-width:300px;color:rgba(250,241,234,.75);margin:5px 0 0}.menu-section{padding-top:120px;padding-bottom:130px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:56px}.section-heading h2{margin-bottom:0}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.menu-card{display:flex;flex-direction:column;justify-content:space-between;min-height:375px;padding:29px;background:var(--white);border:1px solid var(--line);position:relative;overflow:hidden}.menu-card-featured{background:var(--orange);color:var(--cream)}.menu-card-blue{background:var(--blue)}.card-number{font-family:var(--serif);font-size:14px}.tag{display:inline-block;align-self:flex-start;margin-top:20px;border:1px solid currentColor;border-radius:30px;padding:5px 10px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.tag-orange{color:var(--orange)}.menu-card h3{font-family:var(--serif);font-size:38px;line-height:1.03;margin:24px 0 13px}.menu-card p{max-width:250px;color:rgba(62,26,24,.68);font-size:14px;margin-bottom:0}.menu-card-featured p{color:rgba(250,241,234,.78)}.price{align-self:flex-end;font-family:var(--serif);font-size:25px}.story-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,140px);align-items:center;padding-top:120px;padding-bottom:130px;background:var(--blue)}.story-image{position:relative}.story-image img{width:min(100%,500px);aspect-ratio:1;object-fit:cover;border-radius:50%;border:14px solid var(--cream);transform:rotate(-7deg)}.image-label{position:absolute;right:2%;bottom:3%;display:grid;place-items:center;width:125px;height:125px;padding:15px;border-radius:50%;background:var(--orange);color:var(--cream);font-size:11px;line-height:1.2;letter-spacing:.1em;text-align:center;text-transform:uppercase;transform:rotate(8deg)}.image-label strong{font-size:24px}.story-copy>p:not(.eyebrow){max-width:455px;color:rgba(62,26,24,.75);font-size:16px}.story-copy .button{margin-top:18px}.events-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,10vw,150px);padding-top:125px;padding-bottom:125px;background:var(--cream)}.events-copy>p:not(.eyebrow){max-width:420px;color:rgba(62,26,24,.75);margin-bottom:32px}.event-list{border-top:1px solid var(--line)}.event-list>div{display:grid;grid-template-columns:45px 1fr;gap:4px;padding:24px 0;border-bottom:1px solid var(--line)}.event-list span{color:var(--orange);font-family:var(--serif);font-size:14px}.event-list strong{font-family:var(--serif);font-size:24px}.event-list small{grid-column:2;color:rgba(62,26,24,.62);font-size:13px}.quote-section{padding-top:105px;padding-bottom:110px;background:var(--orange);color:var(--cream);text-align:center}.quote-mark{font-family:var(--serif);font-size:75px;line-height:.7}.quote-section blockquote{max-width:760px;margin:15px auto 25px;font-family:var(--serif);font-size:clamp(30px,4vw,52px);line-height:1.05}.quote-section p{font-size:12px;letter-spacing:.1em;text-transform:uppercase}.booking-section{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,10vw,160px);padding-top:125px;padding-bottom:130px;background:var(--brown);color:var(--cream)}.booking-section>div>p:not(.eyebrow){max-width:390px;color:rgba(250,241,234,.7)}.booking-form{display:flex;flex-direction:column}.booking-form label{margin:0 0 7px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.booking-form input,.booking-form textarea{resize:vertical;width:100%;border:0;border-bottom:1px solid rgba(250,241,234,.4);background:transparent;color:var(--cream);font:inherit;padding:10px 0 14px;margin-bottom:23px;outline:none}.booking-form input:focus,.booking-form textarea:focus{border-color:var(--orange)}.booking-form input::placeholder,.booking-form textarea::placeholder{color:rgba(250,241,234,.5)}.booking-form .button{align-self:flex-start;margin-top:10px}.form-status{min-height:20px;color:var(--blue);font-size:13px}.site-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-top:76px;padding-bottom:25px;background:var(--cream)}.footer-brand p{max-width:190px;margin-top:20px;color:rgba(62,26,24,.68)}.footer-col h3{margin:0 0 15px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.footer-col p,.footer-col a{display:block;color:rgba(62,26,24,.68);font-size:13px;line-height:1.8}.footer-col a:hover{color:var(--orange)}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;color:rgba(62,26,24,.55);font-size:11px;letter-spacing:.05em}.footer-bottom a{color:var(--brown)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.reveal-delay{transition-delay:.13s}@media(max-width:800px){.site-header{padding-top:11px;padding-bottom:11px}.menu-toggle{display:block;z-index:11}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:flex-start;gap:0;padding:14px 24px 25px;background:var(--cream);border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav>a{padding:12px 0}.site-nav .button{width:100%;margin-top:9px}.hero{grid-template-columns:1fr;min-height:auto;padding-top:25px}.hero-copy{padding:65px 0 10px}.hero-art{min-height:440px}.hero-circle{width:min(75vw,390px)}.sun-sticker{top:20px;right:7%}.hero-caption{bottom:35px;right:4%}.scribble-one{bottom:45px}.intro-grid,.story-section,.events-section,.booking-section{grid-template-columns:1fr}.intro-grid{gap:20px}.intro-grid>p:last-child{margin-top:15px}.menu-section,.story-section,.events-section,.booking-section{padding-top:80px;padding-bottom:85px}.menu-grid{grid-template-columns:1fr}.menu-card{min-height:300px}.section-heading{align-items:start;flex-direction:column;gap:25px}.story-image{max-width:510px}.story-copy{max-width:540px}.site-footer{grid-template-columns:1fr 1fr;gap:35px;padding-top:60px}.footer-brand{grid-column:1/-1}}@media(max-width:480px){.announcement{font-size:9px;letter-spacing:.08em}.brand{font-size:19px}.brand img{width:36px;height:36px}h1{font-size:55px}.hero-lede{font-size:15px}.hero-art{min-height:365px}.hero-circle{border-width:10px}.sun-sticker{width:94px;height:94px;font-size:9px}.sun-sticker strong{font-size:13px}.hero-caption{font-size:9px;bottom:20px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.intro-band{padding:68px 0}.menu-card h3{font-size:34px}.story-image img{border-width:9px}.image-label{width:95px;height:95px;font-size:9px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}}@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap');

:root {
  --ink: #3E1A18;
  --muted: #3E1A18;
  --cream: #faf1ea;
  --paper: #faf1ea;
  --sky: #B7D1F5;
  --orange: #FD4A01;
  --line: rgba(62,26,24,.16);
  color: var(--ink);
  background: var(--paper);
  font-family: 'DM Sans', sans-serif;
  line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.site-header {
  position: absolute;
  z-index: 5;
  top: 0; left: 0; right: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  max-width: var(--max);
  margin: auto;
  padding: 25px 28px;
}
.brand { display: inline-flex; align-items: center; gap: 11px; }
.brand-mark { width: 48px; height: 48px; object-fit: cover; border-radius: 50%; }
.brand strong, .brand small { display: block; line-height: 1.1; }
.brand strong { font-size: .95rem; letter-spacing: .02em; }
.brand small { margin-top: 5px; color: var(--muted); font-size: .67rem; letter-spacing: .12em; text-transform: uppercase; }
.section-dark .brand small, .site-header .brand small { color: inherit; opacity: .7; }
nav { display: flex; align-items: center; gap: 28px; font-size: .82rem; font-weight: 600; }
nav a { transition: color .2s ease; }
nav a:hover { color: var(--orange); }
.nav-cta { padding: 11px 17px; color: var(--paper); background: var(--orange); border-radius: 3px; }
.nav-cta:hover { color: var(--paper); background: var(--orange); }
.section { padding: 112px max(28px, calc((100% - var(--max)) / 2)); }
.section-dark { color: var(--paper); background: var(--ink); }
.hero { min-height: 710px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 72px; padding-top: 140px; background: var(--ink); overflow: hidden; }
.hero::before { content: ''; position: absolute; top: 0; left: 0; width: 52%; height: 100%; background: linear-gradient(145deg, rgba(183,209,245,.16), transparent 50%); pointer-events: none; }
.hero-copy { position: relative; z-index: 1; }
.eyebrow, .section-label { color: var(--orange); font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow { margin-bottom: 24px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: 'Playfair Display', serif; font-weight: 700; line-height: 1.05; }
h1 { max-width: 610px; margin-bottom: 26px; font-size: clamp(3.4rem, 7vw, 6.4rem); letter-spacing: -.035em; }
h2 { margin-bottom: 22px; font-size: clamp(2.25rem, 4vw, 4.2rem); letter-spacing: -.025em; }
h3 { margin-bottom: 9px; font-size: 1rem; }
.hero-text { max-width: 480px; color: var(--blue); font-size: 1.05rem; }
.actions { display: flex; align-items: center; gap: 25px; margin-top: 35px; }
.button { display: inline-flex; justify-content: center; border: 0; padding: 15px 21px; cursor: pointer; font: inherit; font-weight: 700; border-radius: 3px; transition: transform .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-light { color: var(--ink); background: var(--paper); }
.button-dark { color: var(--paper); background: var(--orange); }
.text-link, .underlined-link { font-weight: 700; font-size: .85rem; }
.text-link span, .underlined-link span { color: var(--orange); margin-left: 7px; }
.image-placeholder { display: grid; place-items: center; align-content: center; min-height: 210px; color: var(--ink); background: var(--sky); text-align: center; }
.image-placeholder span { font-size: .74rem; font-weight: 700; letter-spacing: .14em; }
.image-placeholder small { display: block; margin-top: 5px; opacity: .7; }
.image-placeholder--hero { min-height: 470px; border-radius: 46% 46% 4px 4px; background: var(--sky) url('images/laplongeecafe.jpg') center / 58% no-repeat; box-shadow: 23px 23px 0 var(--orange); }
.image-placeholder--hero span, .image-placeholder--hero small { display: none; }
.intro { background: var(--cream); }
.intro-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 90px; align-items: end; margin-top: 23px; }
.intro-grid h2 { max-width: 560px; margin-bottom: 0; }
.intro-grid p { max-width: 430px; color: var(--muted); }
.underlined-link { display: inline-block; padding-bottom: 7px; border-bottom: 1px solid var(--ink); }
.principles, .package-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.principles { margin-top: 92px; }
.principles article, .package-grid article { border-top: 1px solid var(--line); padding-top: 19px; }
.number, .package-icon { color: var(--orange); font-size: .75rem; font-weight: 700; letter-spacing: .12em; }
.principles p, .package-grid p { max-width: 270px; color: var(--muted); font-size: .9rem; }
.feature-band { display: grid; grid-template-columns: minmax(280px, 430px) 1fr; gap: clamp(50px, 10vw, 140px); align-items: center; }
.image-placeholder--portrait { min-height: 570px; background: var(--orange); border-radius: 3px; }
.feature-copy { max-width: 520px; }
.feature-copy h2 { margin-top: 22px; }
.feature-copy > p { color: var(--muted); }
.service-list { display: grid; gap: 12px; margin: 35px 0 0; padding: 0; list-style: none; font-size: .91rem; font-weight: 600; }
.service-list li { padding: 13px 0 13px 30px; border-top: 1px solid var(--line); position: relative; }
.service-list li::before { content: '+'; position: absolute; left: 0; color: var(--orange); font-size: 1.2rem; }
.packages { background: var(--sky); }
.section-heading { max-width: 680px; margin-bottom: 58px; }
.package-grid article { border-color: rgba(23,50,70,.25); }
.package-icon { display: block; margin-bottom: 36px; }
.gallery { padding-bottom: 120px; }
.gallery .section-heading { margin-bottom: 45px; }
.gallery h2 { margin: 18px 0 12px; }
.gallery .section-heading p { color: var(--blue); }
.gallery-grid { display: grid; grid-template-columns: 1.35fr 1fr 1fr; gap: 13px; }
.gallery-grid .image-placeholder { min-height: 255px; background-color: #B7D1F5; color: var(--paper); }
.gallery-grid .image-placeholder:first-child { min-height: 365px; grid-row: span 2; background-color: var(--orange); }
.contact { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; background: var(--cream); }
.contact-copy h2 { margin-top: 20px; }
.contact-copy > p { max-width: 390px; color: var(--muted); }
.contact-details { display: grid; gap: 7px; margin-top: 34px; font-weight: 700; }
.contact-details a:hover { color: var(--orange); }
.contact-form { display: grid; gap: 19px; align-self: center; }
.contact-form label { display: grid; gap: 7px; font-size: .78rem; font-weight: 700; }
input, textarea { width: 100%; border: 1px solid var(--line); border-radius: 2px; padding: 14px 15px; color: var(--ink); background: var(--paper); font: inherit; resize: vertical; }
input:focus, textarea:focus { outline: 2px solid var(--orange); outline-offset: 2px; }
.form-status { min-height: 1.4em; margin: 0; color: var(--orange); font-size: .85rem; font-weight: 700; }
.site-footer { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 40px; padding: 55px max(28px, calc((100% - var(--max)) / 2)); color: var(--paper); background: var(--ink); }
.site-footer .brand-mark { width: 42px; height: 42px; }
.site-footer p { max-width: 260px; margin: 22px 0 0; color: var(--blue); font-size: .85rem; }
.site-footer > div:not(:first-child) { display: grid; align-content: start; gap: 9px; font-size: .83rem; }
.footer-label { margin-bottom: 8px; color: var(--orange); font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.site-footer a:hover { color: var(--orange); }
select { width: 100%; border: 1px solid var(--line); border-radius: 2px; padding: 14px 15px; color: var(--ink); background: var(--paper); font: inherit; }
select:focus { outline: 2px solid var(--orange); outline-offset: 2px; }
.booking-form { display: grid; gap: 12px; }
.booking-form label { display: block; margin-top: 6px; }
.booking-form input, .booking-form select, .booking-form textarea { display: block; margin-top: 4px; }
.booking-form select { border: 0; border-bottom: 1px solid var(--line); border-radius: 0; }
.booking-form label[for="event-date"] { padding-top: 12px; }
.form-separator { width: 100%; height: 1px; margin: 8px 0 2px; border: 0; background: rgba(250, 241, 161, .4); }
@media (max-width: 760px) {
  .site-header { position: relative; padding: 18px 22px; background: var(--paper); }
  .site-header nav { display: none; }
  .section { padding: 76px 22px; }
  .hero { min-height: auto; grid-template-columns: 1fr; gap: 55px; padding-top: 75px; padding-bottom: 100px; }
  h1 { font-size: clamp(3rem, 16vw, 4.7rem); }
  .image-placeholder--hero { min-height: 320px; box-shadow: 12px 12px 0 var(--orange); }
  .intro-grid, .feature-band, .contact { grid-template-columns: 1fr; gap: 35px; }
  .principles, .package-grid { grid-template-columns: 1fr; gap: 36px; margin-top: 58px; }
  .feature-band { gap: 45px; }
  .image-placeholder--portrait { min-height: 330px; }
  .gallery-grid { grid-template-columns: 1fr 1fr; }
  .gallery-grid .image-placeholder:first-child { min-height: 255px; grid-column: span 2; grid-row: auto; }
  .site-footer { grid-template-columns: 1fr 1fr; padding: 55px 22px; }
  .site-footer > div:first-child { grid-column: span 2; }
}/* Palette et logo de La Plongee Cafe */
:root{--ink:#3E1A18;--deep:#3E1A18;--teal:#3E1A18;--mint:#B7D1F5;--cream:#faf1ea;--paper:#faf1ea;--orange:#FD4A01;--line:rgba(62,26,24,.16)}
.site-header{background:var(--cream)!important}
.brand-mark{font-size:0;background:var(--cream) url('images/laplongeecafe.jpg') center/cover no-repeat;border:0!important}
.image-placeholder{color:var(--deep);background:repeating-linear-gradient(135deg,rgba(62,26,24,.06) 0 1px,transparent 1px 13px),var(--mint)!important;border-color:rgba(62,26,24,.28)!important}
.image-placeholder--hero,.gallery-grid .image-placeholder{background:repeating-linear-gradient(135deg,rgba(250,241,161,.12) 0 1px,transparent 1px 15px),var(--deep)!important;border-color:rgba(250,241,161,.28)!important}
.feature-band{background:var(--mint)!important}
.packages{background:var(--cream)!important}
.contact{background:var(--orange)!important}
.section-dark{background:#3E1A18!important}

:root{--serif:'Fredoka',sans-serif;--sans:'Nunito',sans-serif}
body,button,input,textarea{font-family:'Nunito',sans-serif!important}
h1,h2,h3,.brand,.hero h1{font-family:'Fredoka',sans-serif!important}
nav a{color:#3E1A18!important}
.nav-cta,.button-dark{color:#faf1ea;background:#3E1A18!important}
.eyebrow,.section-label,.footer-label{color:#FD4A01!important}
.feature-band{background:#B7D1F5!important}
.contact{background:#FD4A01!important}
:root{--ink:#3E1A18;--deep:#3E1A18;--teal:#3E1A18;--mint:#B7D1F5;--cream:#faf1ea;--paper:#faf1ea;--orange:#FD4A01;--line:rgba(62,26,24,.16);--serif:Georgia,'Times New Roman',serif;--sans:'Avenir Next','Helvetica Neue',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1.2rem,4vw,4rem);background:rgba(250,241,161,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:.7rem}.brand strong{display:block;font-family:var(--serif);font-size:1.15rem}.brand small{display:block;color:var(--teal);font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}.brand-mark{display:grid;place-items:center;width:2.6rem;height:2.6rem;border:1px solid var(--teal);border-radius:50%;color:var(--teal);font-size:.75rem;font-weight:800;letter-spacing:.08em}nav{display:flex;align-items:center;gap:1.6rem;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}nav a{color:var(--teal)}.nav-cta{padding:.7rem 1rem;color:var(--cream);background:var(--teal);border-radius:999px}.section{padding:clamp(4rem,8vw,8rem) clamp(1.2rem,6vw,7rem)}.section-dark{color:#f7f4ea;background:var(--deep)}.hero{display:grid;grid-template-columns:1fr minmax(280px, .72fr);gap:clamp(2rem,7vw,7rem);align-items:center;min-height:calc(100vh - 76px);padding-top:clamp(4rem,10vw,9rem);padding-bottom:clamp(4rem,10vw,9rem)}.hero-copy{max-width:44rem}.eyebrow,.section-label,.footer-label{display:block;color:var(--orange);font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.hero h1,h2{margin:.65rem 0 1.2rem;font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:-.03em}.hero h1{max-width:8ch;font-size:clamp(3.8rem,8vw,8rem)}.hero-text{max-width:34rem;color:rgba(247,244,234,.75);font-size:1.08rem}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:1.3rem;margin-top:2rem}.button{display:inline-flex;justify-content:center;align-items:center;padding:.95rem 1.35rem;border:0;border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.button-light{color:var(--deep);background:var(--cream)}.button-dark{color:var(--cream);background:var(--teal)}.text-link{color:#f7f4ea;font-size:.82rem}.text-link span,.underlined-link span{color:var(--orange);font-size:1.2rem}.image-placeholder{display:grid;place-items:center;align-content:center;gap:.45rem;min-height:18rem;color:var(--teal);background:repeating-linear-gradient(135deg,rgba(31,108,105,.06) 0 1px,transparent 1px 13px),var(--mint);border:1px solid rgba(31,108,105,.28);text-align:center}.image-placeholder span{font-size:.72rem;font-weight:900;letter-spacing:.2em}.image-placeholder small{font-size:.78rem;opacity:.75}.image-placeholder--hero{min-height:30rem;color:#f7f4ea;background:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 15px),#26575a;border-color:rgba(255,255,255,.22);transform:rotate(2deg)}.image-placeholder--portrait{min-height:32rem}.intro{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end}.intro h2,.feature-copy h2,.section-heading h2,.contact h2{font-size:clamp(2.8rem,6vw,6.2rem)}.intro-grid p,.feature-copy>p,.section-heading>p,.contact-copy>p{max-width:34rem;color:rgba(20,37,43,.68);font-size:1.05rem}.underlined-link{display:inline-block;margin-top:1rem;padding-bottom:.35rem;border-bottom:1px solid var(--teal);font-weight:700}.principles,.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:5rem;background:var(--line)}.principles article,.package-grid article{padding:2rem 1.3rem;background:var(--cream)}.number,.package-icon{color:var(--orange);font-size:.75rem;font-weight:800;letter-spacing:.1em}.principles h3,.package-grid h3{font-family:var(--serif);font-size:1.65rem;font-weight:400}.principles p,.package-grid p{color:rgba(20,37,43,.65)}.feature-band{display:grid;grid-template-columns:.9fr 1fr;gap:clamp(2rem,8vw,8rem);align-items:center;background:#eadfcf}.feature-copy h2{max-width:8ch}.service-list{display:grid;gap:.8rem;margin:2rem 0 0;padding:0;list-style:none}.service-list li{padding:.8rem 0;border-bottom:1px solid var(--line);font-weight:700}.service-list li::before{content:'+';margin-right:.8rem;color:var(--orange)}.packages{background:#f9f6ee}.section-heading{max-width:48rem}.section-heading h2{max-width:10ch}.gallery{padding-bottom:clamp(4rem,8vw,8rem)}.gallery .section-heading>p{color:rgba(247,244,234,.7)}.gallery-grid{display:grid;grid-template-columns:1.25fr .85fr .85fr;gap:1rem}.gallery-grid .image-placeholder{min-height:20rem;color:#f7f4ea;background:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 1px,transparent 1px 13px),#26575a;border-color:rgba(255,255,255,.2)}.gallery-grid .image-placeholder:first-child{min-height:32rem}.contact{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,9vw,10rem);background:var(--orange);color:#fff9ef}.contact .section-label{color:#fff9ef}.contact h2{max-width:8ch}.contact-copy>p{color:rgba(255,249,239,.82)}.contact-details{display:grid;gap:.35rem;margin-top:2rem;font-weight:700}.contact-form{display:grid;gap:1.1rem;align-content:center}.contact-form label{display:grid;gap:.45rem;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.contact-form input,.contact-form textarea{width:100%;padding:.9rem 0;border:0;border-bottom:1px solid rgba(255,255,255,.55);border-radius:0;outline:0;color:#fff9ef;background:transparent}.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,249,239,.7)}.form-status{min-height:1.4rem;margin:0;color:#fff9ef;font-size:.85rem}.site-footer{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;padding:4rem clamp(1.2rem,6vw,7rem);color:#dfeae1;background:var(--deep)}.site-footer p{max-width:20rem;color:rgba(223,234,225,.68)}.site-footer>div{display:grid;align-content:start;gap:.55rem}.site-footer .brand{margin-bottom:1rem}.site-footer .brand small{color:#a8d3c0}.site-footer .brand-mark{color:#a8d3c0;border-color:#a8d3c0}.footer-label{margin-bottom:.35rem;color:var(--orange)}.site-footer a:not(.brand){font-size:.9rem;color:rgba(223,234,225,.8)}@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{width:100%;justify-content:space-between;gap:.55rem;font-size:.66rem}.hero,.intro-grid,.feature-band,.contact{grid-template-columns:1fr}.hero h1{font-size:clamp(3.5rem,17vw,6rem)}.image-placeholder--hero{min-height:22rem}.principles,.package-grid,.gallery-grid,.site-footer{grid-template-columns:1fr}.gallery-grid .image-placeholder,.gallery-grid .image-placeholder:first-child{min-height:16rem}.site-footer{gap:2.5rem}}
