
: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}
.pricebox{border:2px solid var(--gold);padding:10px 18px 14px;text-align:center;margin:0 auto 18px;width:min(250px,100%)}
.pricebox .label{font-family:"Cormorant Garamond",serif;font-size:24px;letter-spacing:.08em}
.price{font-family:"Cormorant Garamond",serif;font-size:68px;line-height:.9}
.price sup{font-size:26px}
.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}
}

.subhero{background:linear-gradient(105deg,#07192c,#0d2744 68%,#173b62);color:#fff;padding:74px 0 68px;border-bottom:1px solid rgba(200,155,70,.55)}
.subhero .eyebrow{color:var(--gold2);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.subhero h1{font-family:"Cormorant Garamond",serif;font-size:66px;line-height:.95;font-weight:600;margin:10px 0 16px}
.subhero p{max-width:760px;font-size:16px;line-height:1.7;color:#e4e9ef}
.page-section{padding:58px 24px;background:#fff}
.page-section.alt{background:var(--cream)}
.two-col{width:min(1180px,94%);margin:auto;display:grid;grid-template-columns:1.02fr .98fr;gap:34px;align-items:center}
.two-col.reverse{grid-template-columns:.98fr 1.02fr}
.two-col img{width:100%;height:420px;object-fit:cover}
.page-copy h2,.section-title{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:43px;line-height:1.05;margin:0 0 14px}
.page-copy p,.section-intro{font-size:14px;line-height:1.8;color:var(--muted)}
.section-head{width:min(900px,94%);margin:0 auto 30px;text-align:center}
.cards{width:min(1180px,94%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.card{border:1px solid var(--line);background:#fff;padding:26px;min-height:185px}
.card h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:28px;margin:0 0 8px}
.card p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}
.goldline{width:66px;height:2px;background:var(--gold);margin:16px 0}
.steps{width:min(1180px,94%);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{border-top:3px solid var(--gold);padding:22px;background:#fff}
.step span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;font-weight:700}
.step h3{font-family:"Cormorant Garamond",serif;color:var(--navy);font-size:24px;margin:13px 0 7px}
.step p{font-size:12px;line-height:1.65;color:var(--muted)}
.brand-page-grid{width:min(1000px,94%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.brand-page-grid div{background:#fff;border:1px solid var(--line);padding:22px;text-align:center;font-size:19px;font-weight:700;color:var(--navy)}
.cta-band{width:min(1180px,94%);margin:auto;background:linear-gradient(105deg,#07192c,#0d2744);padding:31px 34px;display:flex;justify-content:space-between;align-items:center;gap:25px;color:#fff}
.cta-band h2{font-family:"Cormorant Garamond",serif;font-size:34px;margin:0 0 5px}
.cta-band p{font-size:13px;margin:0;color:#e3e9ef}
.contact-grid{width:min(1180px,94%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.contact-panel{padding:34px;border:1px solid var(--line);background:#fff}
.contact-panel.dark{background:var(--navy);color:#fff;border-color:var(--gold)}
.contact-panel h2{font-family:"Cormorant Garamond",serif;font-size:36px;margin:0 0 14px;color:var(--navy)}
.contact-panel.dark h2{color:#fff}.contact-panel p{line-height:1.8;font-size:14px;color:var(--muted)}.contact-panel.dark p,.contact-panel.dark a{color:#fff}
.package-box{width:min(1040px,94%);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;background:var(--navy);color:#fff;border:1px solid var(--gold)}
.package-visual{min-height:420px}.package-visual img{width:100%;height:100%;object-fit:cover}
.package-copy{padding:42px}.package-copy h2{font-family:"Cormorant Garamond",serif;font-size:47px;margin:0 0 12px}.package-copy p{color:#e4e9ef;line-height:1.75;font-size:14px}
.package-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.package-list div{border:1px solid rgba(224,187,115,.45);padding:11px;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.activepage:after{content:"";position:absolute;left:0;right:0;bottom:7px;height:2px;background:var(--gold)}
@media(max-width:900px){.two-col,.two-col.reverse,.package-box,.contact-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.brand-page-grid{grid-template-columns:1fr 1fr}.subhero h1{font-size:54px}.cta-band{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.cards,.steps,.brand-page-grid{grid-template-columns:1fr}.subhero h1{font-size:45px}.page-section{padding-left:12px;padding-right:12px}.two-col img{height:320px}.package-copy{padding:28px}.package-list{grid-template-columns:1fr}}
