/* Selective Version 2 merge over the Version 1 base.
   Only typography, hero, countdown, venue and Stay With Us are restyled here. */
body.typography-v2{
  --v2-serif:"Cormorant Garamond",Georgia,serif;
  --v2-script:"Pinyon Script",cursive;
  --serif:var(--v2-serif);
  --script:var(--v2-script);
  --display:var(--v2-serif);
  --sans:var(--v2-serif);
  font-family:var(--v2-serif);
  letter-spacing:0;
}
body.typography-v2 .eyebrow,
body.typography-v2 button,
body.typography-v2 input,
body.typography-v2 select,
body.typography-v2 textarea{font-family:var(--v2-serif)}

.v2-overline{font:400 12px/1.7 var(--v2-serif);letter-spacing:.19em;text-transform:uppercase;margin:0 0 15px}
.v2-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 26px;border:1px solid #8e7353;background:transparent;color:inherit;font:400 16px/1.3 var(--v2-serif);text-decoration:none;letter-spacing:.03em;transition:background .25s ease,color .25s ease}
.v2-button:hover{background:#614930;color:#fff7e8}
.v2-paper{background-color:#f3ecdf;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%237c6046' opacity='.06' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}

/* Version 2 hero */
.v2-hero{position:relative;isolation:isolate;height:100svh;min-height:690px;max-height:1000px;overflow:hidden;color:var(--hero-text-color,#fff9ed);text-align:center;background:#6d624e;display:flex;flex-direction:column;justify-content:space-between;padding:48px 24px 62px}
body.hero-medium .v2-hero{height:85svh;min-height:620px}
body.hero-compact .v2-hero{height:72svh;min-height:560px}
.v2-hero-picture{position:absolute;inset:0;z-index:-4;display:block;width:100%;height:100%;overflow:hidden}
.v2-hero-photo,.v2-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 44%;animation:v2-drift 18s ease-in-out infinite alternate;transform-origin:48% 40%}
.v2-hero-video{z-index:-3}
.v2-hero-video-mobile{display:none}
.v2-hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none}
.v2-hero-shade.hero-overlay-soft{background:linear-gradient(180deg,#251a0f55,transparent 37%,#211c1540 62%,#211c15ce)}
.v2-hero-shade.hero-overlay-uniform{background:var(--hero-overlay-color,#1d241f);opacity:var(--hero-overlay-opacity,.46)}
.v2-hero-shade.hero-overlay-bottom{background:linear-gradient(180deg,transparent 25%,var(--hero-overlay-color,#1d241f));opacity:var(--hero-overlay-opacity,.46)}
.v2-hero-heading{position:relative;z-index:2}
.v2-hero-heading h1{font:400 clamp(58px,17vw,82px)/.94 var(--v2-script);margin:0;letter-spacing:0;text-shadow:0 2px 15px #31200c50}
.v2-hero-heading h1 span{display:block;margin-left:10px}
.v2-hero-heading .v2-overline{font-size:12px;color:inherit}
.v2-hero-bottom{position:relative;z-index:2}
.v2-verse{font:italic 22px/1.35 var(--v2-serif);margin:0 auto 10px;max-width:300px}
.v2-verse-ar{font:400 26px/1.8 Georgia,serif;margin:0 0 25px}
.v2-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:420px;margin:auto}
.v2-hero-actions a{display:grid;place-items:center;padding:12px 8px;min-height:48px;border:1px solid #fff4dcaa;color:inherit;font:400 15px/1.3 var(--v2-serif);letter-spacing:.035em;background:#38271920;text-decoration:none;transition:background .25s ease,color .25s ease}
.v2-hero-actions a:hover{background:#f4ecdb;color:#594430}

/* Version 2 countdown */
.v2-countdown{position:relative;overflow:hidden;isolation:isolate;min-height:600px;display:flex;align-items:flex-end;justify-content:center;text-align:center;padding:50px 22px;color:var(--v2-countdown-text,#fff6e5);background:#615442}
.v2-countdown-picture,.v2-countdown-photo,.v2-countdown-shade{position:absolute;inset:0;width:100%;height:100%}
.v2-countdown-picture{z-index:-3;display:block;overflow:hidden}
.v2-countdown-photo{object-fit:cover;object-position:50% 28%;animation:v2-drift 18s ease-in-out infinite alternate;transform-origin:50% 35%}
.v2-countdown-shade{z-index:-1;background:linear-gradient(transparent 10%,#33251c40 40%,#291f18dc),rgba(34,27,21,var(--v2-countdown-overlay,.45));pointer-events:none}
.v2-countdown-content{width:100%;max-width:560px;position:relative;z-index:1}
.v2-countdown .v2-overline{color:var(--v2-countdown-kicker,#fff6e5);margin-bottom:15px}
.v2-countdown h2{font:400 59px/1.2 var(--v2-script);margin:0 0 30px;color:var(--v2-countdown-title,#fff6e5)}
.v2-countdown .countdown{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;margin:0!important;width:100%!important;border:0!important;color:inherit!important}
.v2-countdown .countdown>div{display:flex!important;flex-direction:column;gap:7px;border:0!important;border-right:1px solid #e9dcc04d!important;padding:4px 0!important;background:none!important}
.v2-countdown .countdown>div:last-child{border-right:0!important}
.v2-countdown .countdown>div:nth-child(-n+2){border-bottom:0!important}
.v2-countdown .countdown strong{display:block;font:400 36px/1.2 var(--v2-serif)!important;color:inherit!important}
.v2-countdown .countdown span{font:400 11px/1.3 var(--v2-serif)!important;letter-spacing:.1em!important;text-transform:uppercase;color:inherit!important;margin:0!important}

/* Version 2 Rosen Centre Hotel section */
.v2-venue{text-align:center;padding:72px 22px 82px;color:#594430}
.v2-venue>div{width:min(100%,980px);margin:auto}
.v2-venue h2{font:400 clamp(40px,6vw,62px)/1.08 var(--v2-serif);max-width:650px;margin:0 auto 30px;letter-spacing:-.025em}
.v2-venue-art{margin:0 auto 22px;width:min(100%,850px)}
.v2-venue-art img{display:block;width:100%;margin:auto;filter:grayscale(.78) sepia(.62) saturate(.48) contrast(.88);mix-blend-mode:multiply;opacity:.96}
.v2-venue-address{font:400 16px/1.6 var(--v2-serif);max-width:360px;margin:15px auto 30px}
.v2-venue-copy{max-width:470px;margin:30px auto}
.v2-venue-copy h3{font:400 39px/1.2 var(--v2-script);margin:0 0 15px}
.v2-venue-copy p{font:400 19px/1.6 var(--v2-serif);margin:0}
.v2-map-link{display:block;border:0;border-bottom:1px solid #927553;background:none;color:inherit;padding:10px 0;min-height:44px;margin:20px auto 0;font:400 16px/1.5 var(--v2-serif)}

/* Stay With Us: full-bleed background with centered stationery card. */
.v2-stay{position:relative;isolation:isolate;min-height:700px;width:100%;display:grid;place-items:center;padding:70px 24px;background:#3a342c var(--v2-stay-image) center/cover no-repeat;color:#594430;overflow:hidden}
.v2-stay-shade{position:absolute;inset:0;z-index:-1;background:rgba(24,20,16,.48)}
.v2-stay-card{position:relative;width:min(100%,540px);padding:58px 48px 52px;text-align:center;background:rgba(243,235,222,.94);border:1px solid rgba(181,161,128,.6);box-shadow:0 20px 70px rgba(20,16,12,.22);backdrop-filter:blur(3px)}
.v2-stay-card:before{content:"";position:absolute;inset:10px;border:1px solid rgba(188,167,133,.42);pointer-events:none}
.v2-stay-divider{position:relative;z-index:1;display:block;width:145px;height:34px;object-fit:contain;margin:0 auto 26px;opacity:.66;mix-blend-mode:multiply}
.v2-stay-divider-bottom{margin:30px auto 0;transform:rotate(180deg)}
.v2-stay-card .v2-overline{position:relative;z-index:1;color:#8d744f;margin-bottom:12px}
.v2-stay-card h2{position:relative;z-index:1;font:400 clamp(52px,7vw,72px)/1.05 var(--v2-script);margin:0 0 24px;color:#27302a}
.v2-stay-card>p:not(.v2-overline){position:relative;z-index:1;font:italic 19px/1.65 var(--v2-serif);margin:0 auto;max-width:430px;color:#594430}
.v2-stay-card .v2-button{position:relative;z-index:1;margin-top:28px}

@keyframes v2-drift{from{transform:scale(1)}to{transform:scale(1.07) translateY(-1%)}}

@media(min-width:760px){
  .v2-hero{padding:55px 40px 65px}
  .v2-hero-photo,.v2-hero-video{object-position:50% 36%}
  .v2-hero-heading h1{font-size:106px}
  .v2-hero-heading h1 span{display:inline;margin-left:18px}
  .v2-hero-heading .v2-overline{font-size:14px}
  .v2-verse{font-size:27px;max-width:500px}
  .v2-hero-actions{width:430px}
  .v2-countdown-content{max-width:560px}
  .v2-venue{padding:78px 35px 95px}
}

@media(max-width:759px){
  .v2-hero-video-desktop{display:none!important}
  .v2-hero-video-mobile{display:block}
  .v2-hero{min-height:690px;max-height:none}
  body.hero-medium .v2-hero,body.hero-compact .v2-hero{min-height:620px}
  .v2-countdown{min-height:550px;padding:45px 18px}
  .v2-countdown h2{font-size:51px}
  .v2-countdown .countdown strong{font-size:clamp(26px,8vw,34px)!important}
  .v2-countdown .countdown span{font-size:10px!important;letter-spacing:.07em!important}
  .v2-venue{padding:60px 18px 68px}
  .v2-venue-art{margin-inline:-8px;width:auto}
  .v2-venue-copy p{font-size:18px}
  .v2-stay{min-height:640px;padding:45px 18px}
  .v2-stay-card{padding:48px 24px 42px}
  .v2-stay-card h2{font-size:56px}
  .v2-stay-card>p:not(.v2-overline){font-size:18px}
}

@media(max-width:360px){
  .v2-hero{padding-inline:18px}
  .v2-hero-heading h1{font-size:58px}
  .v2-countdown h2{font-size:47px}
  .v2-stay-card{padding-inline:18px}
}

@media(prefers-reduced-motion:reduce){
  .v2-hero-photo,.v2-hero-video,.v2-countdown-photo{animation:none!important;transform:none!important}
}
