
:root{
  --navy:#0d2744; --navy2:#07192c; --gold:#c89b46; --gold2:#e0bb73;
  --white:#fff; --ink:#17202b; --muted:#67717d; --cream:#f7f5f1; --line:#ded8cf;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:#fff}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(1180px,94%);margin:auto}
.top{background:var(--navy);color:#fff;border-bottom:1px solid rgba(200,155,70,.7)}
.header{display:grid;grid-template-columns:330px 1fr auto;align-items:center;gap:28px;min-height:112px}
.brand img{width:320px;max-height:84px;object-fit:contain;object-position:left center}
.tagline{text-align:center;color:#e7dcc8;font-family:"Cormorant Garamond",serif;letter-spacing:.12em;font-size:17px;line-height:1.35;text-transform:uppercase}
.social{display:flex;align-items:center;gap:14px}
.social a.icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--navy);font-weight:700}
.visit{border:1px solid var(--gold);color:#fff;padding:12px 18px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
nav{background:var(--navy);color:#fff;border-top:1px solid rgba(255,255,255,.06)}
.navrow{display:flex;justify-content:center;gap:30px;align-items:center;min-height:52px;font-size:13px;font-weight:600;text-transform:uppercase}
.navrow a{padding:17px 3px;position:relative}
.navrow a:hover:after,.navrow a.active:after{content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;background:var(--gold)}
.menu-btn{display:none}
.hero{background:linear-gradient(105deg,#07192c,#0d2744 68%,#173b62);color:#fff}
.mainhero{min-height:520px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:45px;padding:70px 0}
.mainhero h1{font-family:"Cormorant Garamond",serif;font-size:76px;line-height:.95;font-weight:600;margin:10px 0 20px}
.mainhero p{font-size:17px;line-height:1.7;color:#e4e9ef;max-width:620px}
.mainhero .eyebrow{color:var(--gold2);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.mainhero-card{border:1px solid rgba(200,155,70,.65);padding:38px;background:rgba(255,255,255,.04)}
.mainhero-card .r{font-family:"Cormorant Garamond",serif;font-size:120px;line-height:.75}
.mainhero-card h2{font-family:"Cormorant Garamond",serif;font-size:35px;margin:24px 0 8px}
.mainhero-card p{font-size:14px}
.seasonal{background:#f4efe5;padding:24px}
.seasonal-inner{width:min(1180px,94%);margin:auto;border:1px solid #d7c49f;display:grid;grid-template-columns:1fr auto;gap:25px;align-items:center;padding:24px 28px}
.seasonal h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:30px;margin:0 0 4px}
.seasonal p{margin:0;color:var(--muted);font-size:13px}
.wedding-party{padding:58px 0;background:#fff}
.wedding-party .intro{text-align:center;max-width:760px;margin:0 auto 28px}
.wedding-party .intro h2{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:48px;margin:0 0 10px}
.wedding-party .intro p{color:var(--muted);font-size:15px;line-height:1.7}
.wedding-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch}
.wedding-photo{min-height:380px;overflow:hidden}
.wedding-photo img{width:100%;height:100%;object-fit:cover}
.wedding-copy{background:var(--navy);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:center}
.wedding-copy h3{font-family:"Cormorant Garamond",serif;font-size:38px;margin:0 0 14px}
.wedding-copy p{color:#e7edf4;line-height:1.7;font-size:14px}
.wedding-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 24px}
.wedding-options div{border:1px solid rgba(224,187,115,.45);padding:11px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.wedding-actions{display:flex;gap:12px;flex-wrap:wrap}
.wedding-secondary{border:1px solid var(--gold);padding:14px 18px;color:#fff;font-size:12px;font-weight:700;text-transform:uppercase}
.hero-grid{display:grid;grid-template-columns:37% 43% 20%;min-height:445px}
.hero-copy{padding:42px 34px 36px 50px;display:flex;flex-direction:column;justify-content:center}
.hero-copy .small{font-family:"Cormorant Garamond",serif;font-size:27px;letter-spacing:.04em;text-align:center}
.prom{font-family:"Cormorant Garamond",serif;font-size:105px;line-height:.8;color:var(--gold2);font-style:italic;text-align:center;margin:5px 0 16px}

.cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--gold2);color:var(--navy2);font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.05em;padding:15px 19px;border:0}
.hero-photo{overflow:hidden}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.hero-side{padding:52px 28px;display:flex;flex-direction:column;justify-content:center}
.hero-side ul{list-style:none;padding:0;margin:0;font-family:"Cormorant Garamond",serif;font-size:25px;line-height:1.55;letter-spacing:.04em}
.hero-side .rule{width:64px;height:2px;background:var(--gold);margin:18px 0}
.hero-side .quote{font-family:"Cormorant Garamond",serif;text-align:center;font-size:18px;line-height:1.35}
.hero-side .quote em{display:block;color:var(--gold2);font-size:37px}
.tiles{padding:18px 24px;background:#fff}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.tile{height:205px;position:relative;overflow:hidden;color:#fff}
.tile img{width:100%;height:100%;object-fit:cover;transition:.3s}
.tile:hover img{transform:scale(1.03)}
.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,.78))}
.tile-content{position:absolute;left:16px;right:16px;bottom:14px;z-index:2}
.tile h3{font-family:"Cormorant Garamond",serif;font-size:27px;margin:0 0 2px}
.tile p,.tile a{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.tile a{display:inline-block;margin-top:8px;font-weight:700}
.brands{padding:14px 20px 28px;background:#fff;text-align:center}
.brands h3{font-family:"Cormorant Garamond",serif;color:var(--navy);letter-spacing:.18em;text-transform:uppercase;font-size:19px;font-weight:600;margin:10px 0 18px}
.brandstrip{display:flex;justify-content:center;gap:48px;flex-wrap:wrap;align-items:center;color:#1d2732;font-weight:700;font-size:22px}
.features{padding:0 24px 12px;background:#fff}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.feature{height:173px;position:relative;color:#fff;overflow:hidden}
.feature img{width:100%;height:100%;object-fit:cover}
.feature:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 32%,rgba(0,0,0,.75))}
.feature .txt{position:absolute;left:18px;bottom:14px;z-index:2}
.feature h3{font-family:"Cormorant Garamond",serif;font-size:24px;margin:0}
.feature p,.feature a{font-size:11px;margin:2px 0;text-transform:uppercase}
.instagram{padding:18px 24px 34px;text-align:center;background:#fff}
.instagram h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:26px;letter-spacing:.08em;margin:0}
.instagram .handle{font-size:12px;margin-bottom:14px}
.iggrid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}
.iggrid a{aspect-ratio:1/1;overflow:hidden}
.iggrid img{width:100%;height:100%;object-fit:cover}
.igbtn{margin-top:16px}
.footer{background:linear-gradient(90deg,#09213b,#0d2a49);color:#fff;padding:35px 0 16px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr;gap:30px}
.footer .flogo img{width:260px;max-height:80px;object-fit:contain;object-position:left center}
.footer h4{font-family:"Cormorant Garamond",serif;font-size:18px;letter-spacing:.08em;margin:0 0 12px}
.footer p,.footer a{font-size:12px;line-height:1.7;color:#f2f3f5}
.footer .muted{color:#d7c9ad}
.footer-bottom{margin-top:24px;padding-top:14px;border-top:1px solid rgba(200,155,70,.35);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#d7dce4}
@media(max-width:900px){
  .wedding-grid{grid-template-columns:1fr}
  .wedding-photo{min-height:300px}
  .mainhero{grid-template-columns:1fr;min-height:auto;padding:55px 0}
  .mainhero h1{font-size:60px}
  .mainhero-card{display:none}
  .seasonal-inner{grid-template-columns:1fr}
  .header{grid-template-columns:1fr auto;min-height:88px}
  .tagline{display:none}
  .brand img{width:260px}
  .navrow{display:none}
  .menu-btn{display:block;background:none;color:#fff;border:1px solid var(--gold);padding:10px 12px}
  .hero-grid{grid-template-columns:1fr}
  .hero-copy{padding:48px 24px}
  .hero-photo{height:430px}
  .hero-side{display:none}
  .grid4{grid-template-columns:1fr 1fr}
  .grid3{grid-template-columns:1fr}
  .iggrid{grid-template-columns:repeat(4,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .header{grid-template-columns:1fr}
  .social{justify-content:flex-start;padding-bottom:14px}
  .brand img{width:230px}
  .prom{font-size:78px}
  .hero-photo{height:350px}
  .grid4{grid-template-columns:1fr}
  .tiles,.features,.instagram{padding-left:12px;padding-right:12px}
  .iggrid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column}
}
