:root{--ink:#172a24;--cream:#fff7e8;--butter:#f8cf55;--coral:#ef6b4d;--mint:#b9d8c7;--paper:#fffdf7}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit}em{font-family:Georgia,serif;font-weight:400}h1,h2,h3,p{margin-top:0}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;padding:.7rem 1rem;background:#fff}.skip-link:focus{top:1rem}.demo{padding:.45rem 1rem;background:var(--ink);color:#fff;text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.site-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem clamp(1rem,5vw,5rem);border-bottom:1px solid #17312822;background:rgba(255,247,232,.97);position:sticky;top:0;z-index:10}.logo{display:grid;grid-template-columns:auto auto;align-items:center;text-decoration:none;line-height:.85}.logo span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;margin-right:.6rem;border-radius:50%;background:var(--coral);color:#fff;font-family:Georgia,serif;font-size:1.5rem;font-style:italic}.logo strong{font-family:Georgia,serif;font-size:1.2rem}.logo small{font-size:.56rem;letter-spacing:.3em}nav{display:flex;gap:2rem}nav a,.text-link{font-weight:800;text-decoration:none}.nav-toggle{display:none}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.25rem;border-radius:999px;text-decoration:none;font-weight:900}.dark{background:var(--ink);color:#fff}.coral{background:var(--coral);color:#fff}.cream{background:var(--cream);color:var(--ink)}.hero{min-height:720px;padding:clamp(4rem,8vw,8rem) clamp(1rem,6vw,7rem);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:4rem;overflow:hidden}.kicker{font-size:.75rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#b94630}.hero h1,.section h2,.story h2,.love h2,.visit h2{font-size:clamp(3.6rem,8vw,7.4rem);line-height:.87;letter-spacing:-.065em}.hero h1 em,.section-title h2 em,.story h2 em,.love h2 em,.visit h2 em{color:var(--coral)}.lead{max-width:610px;font-size:clamp(1.1rem,2vw,1.35rem)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem}.hero-art{position:relative;min-height:560px}.sun{position:absolute;width:530px;height:530px;right:-90px;top:0;border-radius:50%;background:var(--butter)}.arch{position:absolute;inset:45px 20px 0 15%;border-radius:250px 250px 24px 24px;background:var(--mint);border:14px solid var(--ink);box-shadow:18px 18px 0 var(--coral);overflow:hidden}.bread{position:absolute;display:grid;place-items:center;background:var(--paper);border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink)}.bread-one{font-size:7rem;left:9%;top:15%;width:48%;height:36%;transform:rotate(-6deg)}.bread-two{font-size:6rem;right:7%;top:28%;width:38%;height:36%;transform:rotate(7deg)}.bread-three{font-size:7rem;left:19%;bottom:16%;width:62%;height:25%}.counter{position:absolute;bottom:0;inset-inline:0;background:var(--ink);color:#fff;padding:1rem;text-align:center;letter-spacing:.25em;font-weight:900}.stamp{position:absolute;right:-10px;top:25px;width:118px;height:118px;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--coral);color:#fff;border:3px solid var(--ink);transform:rotate(10deg);font-size:.72rem}.marquee{overflow:hidden;background:var(--butter);border-block:2px solid var(--ink);padding:.85rem;text-align:center;font-size:1.05rem;font-weight:900;letter-spacing:.08em}.section{padding:clamp(5rem,10vw,9rem) clamp(1rem,6vw,7rem)}.section-title{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:4rem}.section-title h2{margin:0}.section-title>p{max-width:420px;font-size:1.15rem}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.product{position:relative;min-height:290px;padding:1.5rem;border:2px solid var(--ink);border-radius:1.5rem;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:7px 7px 0 var(--ink);transition:.2s}.product:hover{transform:translate(-3px,-3px);box-shadow:11px 11px 0 var(--ink)}.product h3{font-family:Georgia,serif;font-size:2rem;margin-bottom:.5rem}.product p{margin:0;max-width:30ch}.number{position:absolute;top:1.3rem;left:1.3rem;font-weight:900}.tag{position:absolute;top:1rem;right:1rem;padding:.35rem .7rem;border:1px solid var(--ink);border-radius:999px;font-size:.65rem;text-transform:uppercase;font-weight:900}.p1,.p5{background:var(--butter)}.p2,.p6{background:var(--mint)}.p3{background:#f6a38f}.p4{background:var(--paper)}.note{margin-top:2rem;font-size:.8rem}.story{padding:clamp(5rem,10vw,9rem) clamp(1rem,6vw,7rem);background:var(--ink);color:#fff;display:grid;grid-template-columns:1.1fr .9fr;gap:5rem;align-items:center}.story h2,.love h2,.visit h2{font-size:clamp(3.5rem,7vw,6.5rem)}.story-card>p{max-width:620px}.facts{display:flex;gap:3rem;margin-top:3rem}.facts div{display:flex;align-items:center;gap:1rem}.facts strong{font-family:Georgia,serif;font-size:4rem;color:var(--butter)}.facts span{max-width:100px;font-size:.75rem;text-transform:uppercase}.quote{padding:3rem;border-radius:50% 50% 45% 55%;background:var(--coral);aspect-ratio:1;display:grid;place-content:center;text-align:center;transform:rotate(3deg)}.quote>span{font-family:Georgia,serif;font-size:6rem;line-height:.4}.quote p{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,3rem);line-height:1.05}.quote small{text-transform:uppercase;letter-spacing:.1em}.love{text-align:center;padding:clamp(5rem,10vw,9rem) clamp(1rem,6vw,7rem)}.love-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:4rem;text-align:left}.love-grid article{padding:2rem;border-top:3px solid var(--ink)}.love-grid b{color:var(--coral)}.love-grid h3{font-family:Georgia,serif;font-size:1.7rem}.visit{display:grid;grid-template-columns:1fr 1fr;background:var(--coral);color:#fff}.visit-copy{padding:clamp(4rem,8vw,7rem)}.visit h2 em,.visit .kicker{color:var(--butter)}.visit-copy>p{max-width:500px}.visit iframe{width:100%;height:100%;min-height:600px;border:0}.light{color:#fff}.visit small{display:block;margin-top:2rem;max-width:500px}footer{padding:3rem clamp(1rem,6vw,7rem);display:grid;grid-template-columns:1fr 1fr auto;gap:2rem;align-items:center;background:var(--paper)}footer div{display:flex;gap:1rem}footer small{grid-column:1/-1;border-top:1px solid #172a2433;padding-top:1rem}.footer-logo{justify-self:start}:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
@media(max-width:850px){.site-header{flex-wrap:wrap}.nav-toggle{display:grid;width:44px;height:44px;place-content:center;gap:4px;border:0;background:none}.nav-toggle span{display:block;width:23px;height:2px;background:var(--ink)}.nav-toggle b{position:absolute;width:1px;height:1px;overflow:hidden}.header-cta{display:none}nav{display:none;flex-basis:100%;padding-top:1rem}nav.open{display:grid;gap:.4rem}nav a{padding:.6rem}.hero{grid-template-columns:1fr;padding-top:5rem}.hero-art{min-height:470px}.sun{width:430px;height:430px}.section-title,.story,.visit{grid-template-columns:1fr}.product-grid,.love-grid{grid-template-columns:1fr 1fr}.quote{max-width:500px}.visit iframe{min-height:420px}footer{grid-template-columns:1fr}}
@media(max-width:560px){.hero h1,.section h2,.story h2,.love h2,.visit h2{font-size:3.4rem}.hero-art{min-height:390px}.arch{inset:35px 10px 0 4%;border-width:9px}.sun{width:340px;height:340px}.bread-one{font-size:4.5rem}.bread-two{font-size:4rem}.bread-three{font-size:5rem}.stamp{width:90px;height:90px}.product-grid,.love-grid{grid-template-columns:1fr}.facts{gap:1rem;flex-direction:column}.quote{border-radius:2rem;aspect-ratio:auto;transform:none}.section-title{display:block}.section-title h2{margin-bottom:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.product{transition:none}}

/* Product photography */
.hero-art img{display:block;width:100%;height:560px;object-fit:cover;border:3px solid var(--ink);border-radius:240px 240px 1.5rem 1.5rem;box-shadow:18px 18px 0 var(--coral)}
.gallery{padding:clamp(4rem,8vw,7rem) clamp(1rem,6vw,7rem);display:grid;grid-template-columns:.7fr 1fr 1fr;gap:1.25rem;align-items:end;background:var(--paper)}
.gallery-heading{align-self:center}.gallery h2{font-size:clamp(3rem,6vw,5.5rem);line-height:.9;letter-spacing:-.055em}.gallery h2 em{color:var(--coral)}
.gallery figure{margin:0;overflow:hidden;border:2px solid var(--ink);border-radius:1.5rem;background:var(--cream);box-shadow:7px 7px 0 var(--ink)}
.gallery figure img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.gallery figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1rem}.gallery figcaption span{font-size:.75rem;text-align:right}
@media(max-width:850px){.hero-art img{height:470px}.gallery{grid-template-columns:1fr 1fr}.gallery-heading{grid-column:1/-1}}
@media(max-width:560px){.hero-art img{height:390px;border-radius:150px 150px 1.25rem 1.25rem}.gallery{grid-template-columns:1fr}}

/* Coastal woodland direction */
:root{
  --ink:#18352f;
  --cream:#f4efe3;
  --butter:#d8c79e;
  --coral:#a85f48;
  --mint:#a9c1b4;
  --paper:#fbf8f0;
  --pine:#18352f;
  --sea-glass:#789d90;
  --driftwood:#c8b89b;
}
body{
  background:
    radial-gradient(circle at 8% 12%,rgba(120,157,144,.16),transparent 28rem),
    linear-gradient(180deg,var(--paper),var(--cream));
}
.demo{background:#102823;color:#e9e2d2;letter-spacing:.11em}
.site-header{background:rgba(244,239,227,.95);border-color:rgba(24,53,47,.16)}
.logo span{background:var(--pine);color:#f3ead8}.dark{background:var(--pine)}.coral{background:#a85f48}
.hero{background:linear-gradient(115deg,rgba(169,193,180,.22),transparent 48%)}
.hero h1 em,.section-title h2 em,.story h2 em,.love h2 em,.gallery h2 em{color:#557d70}
.kicker{color:#8b503e}.hero-art img{border-radius:12rem 12rem 1rem 1rem;border-color:var(--pine);box-shadow:14px 14px 0 var(--sea-glass)}
.stamp{background:#a85f48;border-color:var(--pine);box-shadow:0 0 0 5px var(--cream)}
.marquee{background:var(--driftwood);border-color:var(--pine);color:var(--pine);font-family:Georgia,serif;font-weight:600;letter-spacing:.1em}
.product{border-color:var(--pine);box-shadow:6px 6px 0 var(--pine);border-radius:.75rem}
.product:hover{box-shadow:9px 9px 0 var(--pine)}
.p1,.p5{background:#d8d0b8}.p2,.p6{background:#b9cbc1}.p3{background:#c9957e}.p4{background:#eee6d6}
.tag{border-color:rgba(24,53,47,.6);color:#294c43}
.gallery{background:#e7e1d3}
.gallery figure{background:#f5f0e5;border-color:var(--pine);border-radius:.75rem;box-shadow:6px 6px 0 var(--pine)}
.gallery figure img{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:initial;
  padding:0;
  background:transparent;
}
.gallery figcaption{border-top:1px solid rgba(24,53,47,.2)}
.story{background:#17362f}
.quote{background:#789d90;border-radius:48% 52% 46% 54%;color:#fff}
.facts strong{color:#d9c8a5}
.love{background:linear-gradient(180deg,#f7f2e8,#e8eee9)}
.love-grid article{border-color:#789d90}
.visit{background:#466f64}
.visit h2 em,.visit .kicker{color:#ead9b5}
footer{background:#102823;color:#e9e2d2}.footer-logo span{background:#a85f48}
@media(max-width:560px){
  .hero-art img{border-radius:7rem 7rem .8rem .8rem}
  .gallery figure img{padding:0}
}

/* Interior pages */
nav a[aria-current="page"]{color:#a85f48}.page-hero{padding:clamp(5rem,10vw,8rem) clamp(1rem,8vw,9rem);background:linear-gradient(130deg,#d8e2dc,#f4efe3)}.page-hero h1{max-width:1000px;margin-bottom:1.5rem;font-family:Arial,Helvetica,sans-serif;font-size:clamp(3.5rem,8vw,7rem);line-height:.88;letter-spacing:-.065em}.page-hero h1 em{color:#557d70}.page-hero>p{max-width:700px;font-size:1.15rem}.menu-page{padding:clamp(4rem,8vw,7rem) clamp(1rem,8vw,9rem)}.menu-category{margin-bottom:5rem}.category-heading{display:flex;gap:1.5rem;align-items:start;padding-bottom:1.25rem;border-bottom:3px solid var(--pine)}.category-heading>span{display:grid;width:3rem;height:3rem;place-items:center;border-radius:50%;background:var(--sea-glass);color:#fff;font-weight:900}.category-heading h2{margin:0;font-family:Georgia,serif;font-size:clamp(2.3rem,5vw,4rem)}.category-heading .kicker{margin-bottom:.25rem}.menu-list article{display:flex;justify-content:space-between;gap:2rem;padding:1.35rem 0;border-bottom:1px solid rgba(24,53,47,.22)}.menu-list h3{margin-bottom:.25rem;font-family:Georgia,serif;font-size:1.35rem}.menu-list p{margin:0;color:#4b625b}.menu-list strong{color:#8b503e;white-space:nowrap}.sample-notice{padding:1.25rem 1.5rem;border-left:5px solid #a85f48;background:#e9e1d1}.about-hero{display:grid;grid-template-columns:1fr .8fr;gap:4rem;align-items:center}.about-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;border:3px solid var(--pine);border-radius:10rem 10rem .75rem .75rem;box-shadow:12px 12px 0 var(--sea-glass)}.about-story{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);padding:clamp(5rem,10vw,9rem) clamp(1rem,8vw,9rem)}.about-story h2{font-family:Georgia,serif;font-size:clamp(2.5rem,5vw,4.7rem);line-height:1}.about-story>div:last-child{font-size:1.15rem}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:0 clamp(1rem,8vw,9rem) clamp(5rem,10vw,9rem)}.values article{padding:2rem;border:2px solid var(--pine);background:#e7e1d3;box-shadow:6px 6px 0 var(--pine)}.values span{color:#8b503e;font-weight:900}.values h3{font-family:Georgia,serif;font-size:1.7rem}.about-cta{padding:clamp(5rem,10vw,8rem) clamp(1rem,8vw,9rem);background:#466f64;color:#fff}.about-cta h2{font-family:Georgia,serif;font-size:clamp(3rem,7vw,6rem)}.about-cta .kicker{color:#ead9b5}.legal-hero{padding-bottom:4rem}.legal{max-width:850px;margin:auto;padding:4rem 1rem 7rem}.legal .sample-notice{margin-bottom:3rem}.legal h2{margin-top:2.5rem;font-family:Georgia,serif;font-size:1.7rem}.legal p{color:#3c554e}
@media(max-width:850px){.about-hero,.about-story{grid-template-columns:1fr}.values{grid-template-columns:1fr}.about-hero img{max-height:500px}.menu-list article{gap:1rem}footer div{flex-wrap:wrap}}
.contact-details{display:grid;gap:.6rem;margin:2rem 0;font-style:normal;font-size:1.1rem}.contact-details a{width:max-content;color:#fff;font-weight:800;text-underline-offset:.2em}

/* Calmer logo-inspired typography and photo-led menu preview */
.logo{display:flex;flex-direction:column;align-items:flex-start;gap:.08rem;line-height:.8}.logo strong{font-family:Didot,"Bodoni MT","Bodoni 72",Georgia,serif;font-size:1.55rem;font-weight:700;letter-spacing:-.055em}.logo small{margin-left:.12rem;font-family:Arial,Helvetica,sans-serif;font-size:.57rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.logo span{display:none}
h1,h2,h3,.page-hero h1{font-family:Didot,"Bodoni MT","Bodoni 72",Georgia,serif;font-weight:600;letter-spacing:-.035em}
.hero h1,.section h2,.story h2,.love h2,.visit h2{letter-spacing:-.045em}.hero h1{font-size:clamp(3.4rem,7vw,6.4rem)}.section h2,.story h2,.love h2,.visit h2{font-size:clamp(3rem,6vw,5.7rem)}
.hero h1 em,.section-title h2 em,.story h2 em,.love h2 em,.visit h2 em,.gallery h2 em{font-family:inherit;font-style:italic;font-weight:400}
.case-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.case-preview figure{margin:0;background:var(--paper);border:1px solid rgba(24,53,47,.25)}.case-preview img{display:block;width:100%;height:auto}.case-preview figcaption{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1.4rem}.case-preview figcaption div{display:grid;gap:.25rem}.case-preview figcaption span{color:#8b503e;font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.case-preview figcaption strong{font-family:Didot,"Bodoni MT",Georgia,serif;font-size:1.45rem}.case-preview figcaption p{margin:0;color:#4b625b}.menu-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2rem;padding:1.5rem 0;border-block:1px solid rgba(24,53,47,.25)}.menu-cta p{max-width:680px;margin:0}
.footer-logo strong{color:#f4efe3}.footer-logo small{color:#c8d8d0}
@media(max-width:700px){.case-preview{grid-template-columns:1fr}.case-preview figcaption{grid-template-columns:1fr}.menu-cta{align-items:flex-start;flex-direction:column}}

/* Original imagery inspired by the supplied social references */
.case-preview{grid-template-columns:repeat(3,1fr)}
.gallery .wide-photo img{aspect-ratio:1;object-fit:cover}
@media(max-width:1000px){.case-preview{grid-template-columns:1fr 1fr}.case-preview figure:last-child{grid-column:1/-1;width:calc(50% - .75rem);justify-self:center}}
@media(max-width:700px){.case-preview{grid-template-columns:1fr}.case-preview figure:last-child{grid-column:auto;width:auto}}
