/* Say Yes Lab */
:root{
  --navy:#0d2231;
  --navy-deep:#091923;
  --paper:#f4f1ec;
  --white:#fff;
  --line:rgba(255,255,255,.25);
  --muted:rgba(255,255,255,.78);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--navy);
  color:var(--white);
  font-family:"Montserrat",sans-serif;
  font-weight:300;
}
a{color:inherit}
.site-header{
  position:fixed;
  z-index:20;
  top:0;left:0;right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px clamp(20px,5vw,72px);
  background:linear-gradient(to bottom,rgba(5,15,22,.9),rgba(5,15,22,0));
  transition:.25s ease;
}
.site-header.scrolled{background:rgba(9,25,35,.96);backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:"Cormorant Garamond",serif;font-size:1.35rem}
.brand img{width:36px;height:36px;object-fit:contain}
nav{display:flex;align-items:center;gap:28px;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
nav a{text-decoration:none}
.nav-cta{border:1px solid rgba(255,255,255,.7);padding:10px 15px}
.hero{
  min-height:720px;
  display:grid;
  place-items:center;
  position:relative;
  background:url("assets/hero.jpg") center 36%/cover no-repeat;
}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,11,16,.42),rgba(3,11,16,.56))}
.hero-content{position:relative;text-align:center;padding:130px 24px 70px}
.eyebrow{text-transform:uppercase;letter-spacing:.34em;font-size:.72rem;margin:0 0 20px}
h1,h2,h3,.display-copy{font-family:"Cormorant Garamond",serif;font-weight:400}
h1{font-size:clamp(3.2rem,8vw,7rem);line-height:.9;text-transform:uppercase;margin:0 0 24px;letter-spacing:.03em}
.hero-content>p:not(.eyebrow){line-height:1.7;text-transform:uppercase;font-size:clamp(.72rem,1.4vw,.95rem);letter-spacing:.06em}
.button{
  display:inline-block;
  min-width:150px;
  padding:13px 19px;
  margin-top:24px;
  border:1px solid var(--paper);
  background:var(--paper);
  color:#0b1923;
  text-decoration:none;
  text-align:center;
  text-transform:uppercase;
  font-size:.68rem;
  letter-spacing:.08em;
  transition:.2s ease;
}
.button:hover{transform:translateY(-2px);background:transparent;color:var(--white)}
.button-light{margin-top:30px}
.section-shell{max-width:1180px;margin:auto;padding:100px 54px}
.intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:650px}
.display-copy{font-size:clamp(2.1rem,4vw,3.7rem);line-height:1.03;margin:0}
.example-links{display:flex;flex-direction:column;gap:12px;margin-top:34px;font-family:"Cormorant Garamond",serif;font-size:1.1rem}
.phone-card{text-align:center}
.phone-card video{
    width:min(330px,100%);
    filter:drop-shadow(0 30px 35px rgba(0,0,0,.32));
    display:block;
    margin:auto;
}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:55px}
.section-title h2,.includes h2{font-size:clamp(2.7rem,5vw,4.7rem);text-transform:uppercase;margin:0}
.section-title p{margin:4px 0 0;color:var(--muted);font-size:.82rem}
.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;text-align:center}
.event-grid h3{text-transform:uppercase;font-size:1.7rem;margin-bottom:8px}
.event-grid p{font-size:.82rem;line-height:1.7;color:var(--muted)}
.flower-banner{display:block;width:100%;height:280px;object-fit:cover;margin-top:70px}
.includes{text-align:center}
.include-card{
  width:min(650px,100%);
  margin:50px auto 0;
  padding:38px 46px;
  border-block:1px dashed rgba(255,255,255,.65);
  text-align:left;
  font-family:"Cormorant Garamond",serif;
  font-size:1.12rem;
}
.include-card ul{padding-left:20px;line-height:1.55}
.faq{display:grid;grid-template-columns:.7fr 1.5fr;gap:80px;align-items:start;border-top:1px solid var(--line)}
.faq-heading h2{font-size:clamp(3rem,5vw,5rem);line-height:.83;text-transform:uppercase;margin:0}
.accordion details{border-bottom:1px solid var(--line);padding:21px 4px}
.accordion summary{cursor:pointer;font-family:"Cormorant Garamond",serif;font-size:1.45rem;list-style:none}
.accordion summary::-webkit-details-marker{display:none}
.accordion summary:after{content:"+";float:right}
.accordion details[open] summary:after{content:"–"}
.accordion p{color:var(--muted);line-height:1.7;font-size:.88rem}
footer{
  max-width:1180px;
  margin:auto;
  border-top:1px solid var(--line);
  padding:50px 54px 70px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:40px;
}
.footer-brand{display:flex;align-items:center;gap:14px;font-family:"Cormorant Garamond",serif;font-size:1.5rem}
.footer-brand img{width:54px;height:54px}
.footer-card{border:1px solid rgba(255,255,255,.75);padding:25px 30px;display:grid;grid-template-columns:1fr 1fr;gap:70px}
.footer-card h3{text-transform:uppercase;font-size:1.5rem;margin:0 0 10px}
.footer-card a{display:block;text-decoration:none;font-size:.76rem;line-height:1.9}
.socials{display:flex;gap:12px;flex-wrap:wrap}
.floating-whatsapp{
  position:fixed;right:22px;bottom:22px;z-index:25;
  width:52px;height:52px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--paper);color:var(--navy);
  text-decoration:none;font-weight:600;font-size:.72rem;
  box-shadow:0 12px 32px rgba(0,0,0,.35)
}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}

@media (max-width:800px){
  .site-header{padding:13px 18px}
  nav a:not(.nav-cta){display:none}
  .brand span{font-size:1.1rem}
  .hero{min-height:660px;background-position:52% center}
  .hero-content{padding-top:110px}
  .section-shell{padding:78px 24px}
  .intro{grid-template-columns:1fr;text-align:center;gap:55px}
  .section-title{display:block;text-align:center}
  .event-grid{grid-template-columns:1fr;gap:18px}
  .flower-banner{height:180px}
  .include-card{padding:30px 24px}
  .faq{grid-template-columns:1fr;gap:50px}
  .faq-heading{text-align:center}
  footer{padding:45px 24px;flex-direction:column;align-items:stretch}
  .footer-card{gap:25px;padding:24px;grid-template-columns:1fr}
}
