@font-face{font-family:'Tenor Sans';src:url('assets/fonts/TenorSans-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#e7ebd8;--surface:#d9dfc4;--ink:#28301f;--muted:#4f5c3e;--line:#c4cdb0;--green:#52603d;--green-hover:#3d482d;--flower-rose:#ba5757;--flower-rose-hover:#9f4345;--gutter:clamp(24px,5.2vw,88px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Tenor Sans',Arial,sans-serif;font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}
img{display:block;width:100%;height:auto}
figure,p{margin:0}
a:focus-visible{outline:2px solid var(--green);outline-offset:6px}
::selection{background:#bdc89f}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:24px;z-index:30;background:var(--paper);padding:12px}
.skip-link:focus{top:10px}
.header{min-height:124px;padding:22px var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}
.brand{width:140px;flex-shrink:0}
.brand img{mix-blend-mode:multiply}
.header nav{display:flex;gap:32px;font-size:17px;font-weight:400}
.header nav a:hover,.header-contact:hover,.text-link:hover{color:var(--green)}
.header-contact{font-size:17px;font-weight:400;white-space:nowrap}
.header-contact span{margin-left:16px;font-size:23px}
.eyebrow{font-size:14px;letter-spacing:1.4px;font-weight:400;line-height:1.5}
.tiny-flower{font-size:28px;font-weight:400;color:var(--green)}
h1,h2,.closing>p:not(.eyebrow){font-family:'Tenor Sans',Arial,sans-serif;font-weight:400;letter-spacing:-.8px;line-height:1.15;margin:0}
h2{font-size:clamp(38px,4.1vw,60px)}
em{font-style:normal;font-weight:inherit;color:var(--green)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:42px;min-height:60px;padding:15px 25px;background:var(--green);color:#fff;font-size:17px;font-weight:400;line-height:1.5;transition:background .2s,transform .2s}
.button:hover{background:var(--green-hover);transform:translateY(-2px)}
.button span{font-size:26px;line-height:1}
.brand-cover{background:#b8c19e}
.brand-cover img{width:100%;height:auto}
.cover-intro{display:flex;align-items:center;gap:35px;padding:32px var(--gutter) 36px}
.cover-caption{margin-right:auto}
.cover-caption .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:14px}
.cover-caption>p:last-child{font-size:18px;color:var(--muted);line-height:1.7}
.cover-scroll{display:inline-flex;align-items:center;gap:18px;font-size:16px;white-space:nowrap}
.cover-scroll span{font-size:24px;color:var(--green)}
.section{padding:85px var(--gutter)}
.section-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:36px;gap:24px}
.aside-note{font-size:17px;color:var(--muted)}
.flowers{border-top:1px solid var(--line)}
.flowers>h2{margin-bottom:38px}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:44px;gap:45px}
.section-heading>p{font-size:18px;line-height:1.7;color:var(--muted);width:310px;flex-shrink:0;padding-bottom:4px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.gallery figure{min-width:0}
.gallery img{aspect-ratio:3/4;object-fit:cover}
.gallery-message{margin-top:44px;text-align:center;font-size:28px;line-height:1.4;color:var(--green)}
.gallery-message strong{font-weight:400}
.gallery-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:38px;padding-top:28px;gap:30px}
.gallery-bottom p{font-size:17px;color:var(--muted)}
.text-link{display:inline-flex;gap:30px;align-items:center;font-size:17px;font-weight:400;line-height:1.5;border-bottom:1px solid #87936e;padding-bottom:8px}
.text-link span{font-size:25px}
.about{display:grid;grid-template-columns:1fr 1.03fr;gap:7vw;background:var(--surface);padding-top:84px;padding-bottom:84px}
.about-photo img{height:650px;object-fit:cover;object-position:50% 60%}
.about-copy{align-self:center}
.about-copy .eyebrow{margin-bottom:26px}
.about-copy h2{font-size:clamp(35px,3.6vw,52px);margin-bottom:30px}
.about-copy>p:not(.eyebrow){max-width:510px;font-size:18px;color:var(--muted);margin-top:20px;line-height:1.8}
.contact-section{padding-top:90px;padding-bottom:92px}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw}
.contact-copy h2{margin-bottom:34px}
address{font-style:normal}
.contact-label{font-size:14px;letter-spacing:1.2px;color:var(--muted);margin-top:26px;margin-bottom:10px;font-weight:400}
.address{font-size:22px;line-height:1.6}
.hours{font-size:18px;color:var(--muted);margin-top:10px}
.phone{font-size:25px;font-weight:400}
.contact-order{margin-top:28px}
.map-link{display:flex;width:fit-content;margin-top:23px;gap:22px;font-size:16px}
.map-container{min-height:600px;align-self:stretch;background:var(--surface)}
.map-container iframe{width:100%;height:100%;min-height:600px;border:0}
.closing{padding:69px 24px 73px;background:var(--green);color:var(--paper);text-align:center}
.closing .eyebrow{font-size:14px;color:#dde5c9}
.closing>p:not(.eyebrow){font-size:clamp(38px,4.5vw,68px);margin:25px 0 34px}
.closing em{color:#dde5c9}
.button-light{background:var(--paper);color:var(--ink)}
.button-light:hover{background:#d8e1be}
footer{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;align-items:start;padding:34px var(--gutter);gap:32px;border-top:1px solid var(--line)}
footer p,footer a,footer>span{font-size:16px;line-height:1.7;color:var(--muted)}
.footer-contacts a{display:inline-block;white-space:nowrap}
.footer-contacts a:hover{color:var(--green)}
@media(min-width:1600px){body{max-width:1920px;margin:auto}}
@media(max-width:1100px){.cover-scroll{display:none}.section-heading{gap:28px}.section-heading>p{width:280px}}
@media(max-width:1000px){
  .header{min-height:110px;gap:22px}.brand{width:120px}.header nav{gap:20px;font-size:16px}.header-contact{font-size:15px}.header-contact span{margin-left:8px}
  .section{padding-top:65px;padding-bottom:65px}.about{gap:4vw}.about-photo img{height:650px}.contact-layout{gap:30px}
}
@media(max-width:700px){
  :root{--gutter:22px}
  body{font-size:17px}
  .header{min-height:96px;padding-top:18px;padding-bottom:18px;gap:18px}.brand{width:105px}.header nav{gap:20px;font-size:16px}.header nav a:first-child,.header-contact{display:none}
  /* Crop only the empty side margins: source pixels 350–1903 of 1983. */
  .brand-cover{overflow:hidden;aspect-ratio:1553/793}.brand-cover img{width:127.689%;max-width:none;margin-left:-22.537%}
  .cover-intro{display:block;padding-top:25px;padding-bottom:32px}.cover-caption .eyebrow{font-size:13px;gap:10px;margin-bottom:12px}.tiny-flower{font-size:24px}
  .flowers>h2{margin-bottom:26px}.gallery-message{font-size:24px;margin-top:30px}
  .cover-caption>p:last-child{font-size:17px;line-height:1.75}.cover-caption>p:last-child br{display:none}.cover-intro .button{margin-top:23px}
  .button{font-size:16px;min-height:56px;padding:14px 22px;gap:35px}
  .section{padding-top:49px;padding-bottom:49px}.section-top{display:block;margin-bottom:26px}.eyebrow{font-size:13px;letter-spacing:1px}.aside-note{font-size:16px;margin-top:10px}
  h2{font-size:35px;letter-spacing:-.4px;line-height:1.2}.section-heading{display:block;margin-bottom:29px}.section-heading>p{font-size:17px;margin-top:20px;width:auto;padding-bottom:0}.section-heading>p br{display:none}
  .gallery{grid-template-columns:repeat(2,1fr);gap:14px}
  .gallery-bottom{display:block;margin-top:28px;padding-top:23px}.gallery-bottom p{font-size:16px;line-height:1.75}.gallery-bottom .text-link{margin-top:21px;font-size:16px;gap:22px}
  .about{grid-template-columns:1fr;gap:32px}.about-photo img{height:auto;aspect-ratio:1/1;object-position:50% 50%}.about-copy .eyebrow{margin-bottom:20px}.about-copy h2{font-size:33px;letter-spacing:-.4px;margin-bottom:24px}.about-copy>p:not(.eyebrow){font-size:17px;max-width:100%;line-height:1.8;margin-top:17px}
  .contact-layout{grid-template-columns:1fr;gap:35px}.contact-copy h2{margin-bottom:26px}.contact-label{font-size:13px;letter-spacing:.9px}.address{font-size:20px}.phone{font-size:23px}.hours{font-size:17px}.contact-order{margin-top:25px}.map-link{font-size:16px;gap:16px}
  .map-container,.map-container iframe{height:360px;min-height:360px}
  .closing{padding:47px 22px}.closing .eyebrow{font-size:13px}.closing>p:not(.eyebrow){font-size:36px;letter-spacing:-.4px;margin:23px 0 29px}
  footer{grid-template-columns:1fr;padding-top:30px;padding-bottom:30px;gap:20px}
}
@media(max-width:360px){:root{--gutter:18px}.header nav{font-size:15px;gap:15px}.brand{width:100px}.about-copy h2{font-size:30px}.map-link{font-size:15px;gap:12px}}
.order-cta{background:var(--flower-rose);color:#fff;justify-content:center;text-transform:uppercase;font-weight:400;letter-spacing:1px;min-width:235px}
.order-cta:hover{background:var(--flower-rose-hover)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
