/* ============================================================
   SK WEDDING SITES - Template signatures
   A template (D.template) adds .ws-tpl-<id> to the site root.
   These rules add each template's signature details on top of
   the theme, font and section layouts it picks. Colors come from
   the theme variables, so a couple can still change colors after.
   Loaded by the builder AND the guest page, after sk-sections.css.
   ============================================================ */

/* shared: an ornament above each section heading, drawn in the accent color */
.ws[class*="ws-tpl-"] .ws-wrap>.s-head::before,
.ws[class*="ws-tpl-"] .wl-copy::before{content:"";display:block;margin:0 auto 22px;background:var(--ws-accent);
  -webkit-mask:var(--tpl-orn) center/contain no-repeat;mask:var(--tpl-orn) center/contain no-repeat;width:var(--tpl-orn-w,80px);height:var(--tpl-orn-h,18px)}
.ws[class*="ws-tpl-"] .wl-side .wl-copy::before{margin-left:0}
.ws-mobile[class*="ws-tpl-"] .wl-side .wl-copy::before{margin-left:auto}
@media (max-width:640px){ .ws[class*="ws-tpl-"] .wl-side .wl-copy::before{margin-left:auto} }

/* ===================== SHAADI ROYALE ===================== */
.ws-tpl-royale{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' fill='none' stroke='black' stroke-width='1.4'><path d='M2 12h40M78 12h40'/><path d='M60 3l9 9-9 9-9-9z'/><path d='M60 8l4 4-4 4-4-4z' fill='black'/><circle cx='46' cy='12' r='1.6' fill='black'/><circle cx='74' cy='12' r='1.6' fill='black'/></svg>");--tpl-orn-w:120px;--tpl-orn-h:24px}
.ws-tpl-royale .eyebrow,.ws-tpl-royale .ws-nav .ws-links a{font-family:'Cinzel',serif;letter-spacing:.24em}
.ws-tpl-royale .ws-nav{border-bottom:1px solid color-mix(in srgb,var(--ws-accent) 45%,transparent)}
.ws-tpl-royale .ws-nav .ws-mono{font-family:'Cinzel',serif;font-style:normal;letter-spacing:.12em;font-size:20px;color:var(--ws-accent)}
.ws-tpl-royale .ws-sec{border-top:1px solid color-mix(in srgb,var(--ws-accent) 22%,transparent)}
.ws-tpl-royale .ws-sec .s-head h2{color:var(--ws-accent)}
.ws-tpl-royale .ws-btn{border-radius:2px;letter-spacing:.24em;font-family:'Cinzel',serif;font-size:14px}
.ws-tpl-royale .hs-inv{box-shadow:inset 0 0 0 1px #B08D3A,inset 0 0 0 7px #FFFDF6,inset 0 0 0 8px #B08D3A,0 40px 80px -30px rgba(0,0,0,.6)}
.ws-tpl-royale .hs-inv .h-names{font-family:'Cinzel',serif;font-style:normal;color:#5A121B;letter-spacing:.06em}
.ws-tpl-royale .wl-q h2{font-size:clamp(34px,5vw,60px)}
.ws-tpl-royale .tl2-img,.ws-tpl-royale .ws-event,.ws-tpl-royale .ws-daytab{border:1px solid color-mix(in srgb,var(--ws-accent) 40%,transparent)}
.ws-tpl-royale .ws-daytab.on{background:var(--ws-accent);color:var(--ws-accent-ink)}

/* ===================== MARIGOLD MEHNDI ===================== */
.ws-tpl-mehndi{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 30' fill='black'><circle cx='14' cy='15' r='3'/><circle cx='28' cy='15' r='4'/><circle cx='92' cy='15' r='4'/><circle cx='106' cy='15' r='3'/><path d='M60 2c7 6 10 11 10 15a10 10 0 0 1-20 0c0-4 3-9 10-15z'/><circle cx='42' cy='15' r='5'/><circle cx='78' cy='15' r='5'/></svg>");--tpl-orn-w:120px;--tpl-orn-h:30px}
/* a marigold garland of scallops along the top of each section */
.ws-tpl-mehndi .ws-page:not([data-page="home"]) .ws-sec{position:relative}
.ws-tpl-mehndi .ws-page:not([data-page="home"]) .ws-sec::before{content:"";position:absolute;left:0;right:0;top:0;height:16px;background:var(--ws-accent);
  -webkit-mask:radial-gradient(circle at 12px 0,#000 11px,transparent 12px) 0 0/24px 16px repeat-x;mask:radial-gradient(circle at 12px 0,#000 11px,transparent 12px) 0 0/24px 16px repeat-x;opacity:.9}
.ws-tpl-mehndi .ws-nav{border-bottom:3px solid var(--ws-accent)}
.ws-tpl-mehndi .ws-nav .ws-mono{color:#A8336A}
.ws-tpl-mehndi .eyebrow{color:#A8336A}
.ws-tpl-mehndi .ws-sec .s-head h2,.ws-tpl-mehndi .h-names{color:#4B1438}
.ws-tpl-mehndi .h-amp{color:var(--ws-accent)}
.ws-tpl-mehndi .hs-mq-cell{border-radius:999px 999px 18px 18px;overflow:hidden;border:3px solid #FFFAEE;box-shadow:0 0 0 2px var(--ws-accent)}
.ws-tpl-mehndi .pola:nth-child(1){transform:rotate(-5deg)}.ws-tpl-mehndi .pola:nth-child(2){transform:rotate(3deg) translateY(10px)}.ws-tpl-mehndi .pola:nth-child(3){transform:rotate(-2deg)}
.ws-tpl-mehndi .ws-daytab.on{background:#A8336A;color:#fff;border-color:#A8336A}
.ws-tpl-mehndi .wl-photo{border-radius:999px 999px 24px 24px;overflow:hidden}

/* ===================== GALLERY WHITE ===================== */
.ws-tpl-minimal{counter-reset:tplsec}
.ws-tpl-minimal .ws .ws-wrap,.ws-tpl-minimal .ws-wrap{max-width:1120px}
.ws.ws-tpl-minimal .ws-wrap>.s-head::before{content:counter(tplsec,decimal-leading-zero);counter-increment:tplsec;background:none;-webkit-mask:none;mask:none;width:auto;height:auto;margin:0 0 18px;
  font-family:'Jost',sans-serif;font-size:13px;letter-spacing:.3em;color:var(--ws-faint);display:block;padding-top:18px;border-top:1px solid var(--ws-ink)}
.ws.ws-tpl-minimal .wl-copy::before{display:none}
.ws-tpl-minimal .ws-sec .s-head{text-align:left;max-width:none;margin-left:0}
.ws-tpl-minimal .ws-sec .s-head h2{font-size:clamp(40px,6.4vw,84px);letter-spacing:-.03em;line-height:.98;max-width:14ch}
.ws-tpl-minimal .ws-sec .s-head p{max-width:46ch}
.ws-tpl-minimal .eyebrow{font-family:'Jost',sans-serif;font-size:12px;letter-spacing:.32em;color:var(--ws-ink)}
.ws-tpl-minimal .ws-nav{border-bottom:none;padding-top:26px;padding-bottom:26px}
.ws-tpl-minimal .ws-nav .ws-mono{font-family:'Bodoni Moda',serif;font-style:normal;font-size:22px}
.ws-tpl-minimal .ws-nav .ws-links a{font-family:'Jost',sans-serif;font-size:12px;color:var(--ws-ink)}
.ws-tpl-minimal .ws-btn{border-radius:0;font-family:'Jost',sans-serif;font-size:13px;padding:16px 30px}
.ws-tpl-minimal .ws-hero.hs-minimal .ws-hero-in{max-width:1120px;margin:0 auto}
.ws-tpl-minimal .ws-hero.hs-minimal .h-names{font-size:clamp(56px,11vw,168px);letter-spacing:-.04em;line-height:.9}
.ws-tpl-minimal .ws-hero.hs-minimal .h-amp{display:inline;font-size:.4em;margin:0 .2em;vertical-align:.35em;font-style:italic}
.ws-tpl-minimal .ws-hero.hs-minimal .hs-min-photo{max-width:1120px;aspect-ratio:21/9;border:none}
.ws-tpl-minimal .tl2-img{filter:grayscale(1)}
.ws-tpl-minimal .ws-welcome .s-head h2{max-width:18ch}

/* ===================== NOIR EDITORIAL ===================== */
.ws-tpl-editorial{counter-reset:tplsec}
.ws.ws-tpl-editorial .ws-wrap>.s-head::before{content:"No. " counter(tplsec,decimal-leading-zero);counter-increment:tplsec;background:none;-webkit-mask:none;mask:none;width:auto;height:auto;
  font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.3em;color:var(--ws-accent);margin:0 auto 20px;display:flex;align-items:center;justify-content:center;gap:14px}
.ws.ws-tpl-editorial .wl-copy::before{display:none}
.ws-tpl-editorial .ws-sec{border-top:1px solid var(--ws-line)}
.ws-tpl-editorial .ws-sec .s-head h2{font-size:clamp(40px,6vw,80px)}
.ws-tpl-editorial .wl-q h2{font-size:clamp(40px,6.2vw,88px);line-height:1}
.ws-tpl-editorial .wl-q::before{content:"\201C";display:block;font-family:'Instrument Serif',serif;font-size:160px;line-height:.6;color:var(--ws-accent);margin-bottom:10px}
.ws-tpl-editorial .ws-hero.hs-split .hs-photo::after{content:"";position:absolute;inset:18px;border:1px solid color-mix(in srgb,var(--ws-accent) 70%,transparent);pointer-events:none}
.ws-tpl-editorial .ws-hero.hs-split .h-names{font-size:clamp(52px,7vw,110px)}
.ws-tpl-editorial .ws-btn{border-radius:0}
.ws-tpl-editorial .eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.3em}
.ws-tpl-editorial .ws-nav .ws-links a{font-family:'JetBrains Mono',monospace;font-size:12px}

/* ===================== ENGLISH GARDEN ===================== */
.ws-tpl-garden{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 30' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round'><path d='M10 22c30-2 70-2 100 0'/><path d='M60 22c0-8 2-14 6-18'/><path d='M60 22c-1-7-4-12-9-15'/><path d='M66 4c4 0 7 2 8 6-4 1-7 0-8-6z' fill='black'/><path d='M51 7c-4-1-7 1-9 4 4 2 7 1 9-4z' fill='black'/><path d='M38 21c-3-5-1-9 3-11 1 5-1 9-3 11z' fill='black'/><path d='M82 21c3-5 1-9-3-11-1 5 1 9 3 11z' fill='black'/></svg>");--tpl-orn-w:120px;--tpl-orn-h:30px}
.ws-tpl-garden .hs-arch-photo{box-shadow:0 0 0 6px var(--ws-bg),0 0 0 7px color-mix(in srgb,var(--ws-accent) 70%,transparent)}
.ws-tpl-garden .ws-letter{background:#FBFBF4;box-shadow:0 1px 0 var(--ws-line),0 24px 50px -30px rgba(51,57,43,.45);border:1px solid var(--ws-line)}
.ws-tpl-garden .ws-letter .lt-sig{font-family:'Pinyon Script',cursive;font-size:38px;color:var(--ws-accent)}
.ws-tpl-garden .ws-nav .ws-mono{font-size:30px}
.ws-tpl-garden .eyebrow{letter-spacing:.3em}
.ws-tpl-garden .ws-faq.fs-cards .fq,.ws-tpl-garden .ws-event{border-radius:22px}

/* ===================== BLUSH LETTERS ===================== */
/* a wax seal with an ampersand above each heading */
.ws.ws-tpl-letters .ws-wrap>.s-head::before,.ws.ws-tpl-letters .wl-copy::before{content:"&";-webkit-mask:none;mask:none;width:46px;height:46px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-family:'Italiana',serif;font-size:24px;color:#FFF;background:var(--ws-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--ws-accent) 35%,transparent),0 6px 14px -6px rgba(70,48,58,.6)}
.ws-tpl-letters .hs-frame{background:color-mix(in srgb,var(--ws-bg) 62%,transparent)}
.ws-tpl-letters .ws-hero.hs-framed .h-names{color:var(--ws-ink)}
.ws-tpl-letters .ws-event,.ws-tpl-letters .rsvp-card,.ws-tpl-letters .pola{border:1px dashed color-mix(in srgb,var(--ws-accent) 55%,transparent)}
.ws-tpl-letters .wl-q h2{font-family:'Italiana',serif}
.ws-tpl-letters .ws-btn{letter-spacing:.2em}

/* ===================== COASTAL LINEN ===================== */
.ws-tpl-coastal{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 20' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'><path d='M4 8c8-6 14-6 22 0s14 6 22 0 14-6 22 0 14 6 22 0 14-6 22 0'/><path d='M22 15c8-5 14-5 22 0s14 5 22 0 14-5 22 0 14 5 22 0' opacity='.55'/></svg>");--tpl-orn-w:110px;--tpl-orn-h:20px}
.ws-tpl-coastal .ws-hero.hs-full .ws-hero-grad{background:linear-gradient(180deg,rgba(10,30,44,.42) 0%,rgba(10,30,44,.38) 45%,rgba(10,30,44,.78) 100%)}
.ws-tpl-coastal .ws-hero.hs-full .ws-hero-in{text-shadow:0 2px 24px rgba(5,20,30,.45)}
.ws-tpl-coastal .ws-hero.hs-full{align-items:flex-end}
.ws-tpl-coastal .ws-hero.hs-full .ws-hero-in{padding-bottom:110px;--ws-ink:#FFFFFF;--ws-dim:rgba(255,255,255,.85);color:#FFF}
.ws-tpl-coastal .ws-hero.hs-full .h-names{color:#FFF}
.ws-tpl-coastal .ws-hero.hs-full .ws-btn.ghost{color:#FFF;border-color:#FFF}
.ws-tpl-coastal .ws-hero.hs-full .h-count{border-color:rgba(255,255,255,.4)}
.ws-tpl-coastal .ws-hero.hs-full .h-count .cu b{color:#FFF}
.ws-tpl-coastal .ws-hero.hs-full .h-count .cu span{color:rgba(255,255,255,.75)}
/* the cover ends in a wave */
.ws-tpl-coastal .ws-hero.hs-full::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:60px;background:var(--ws-bg);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'><path d='M0 30C240 0 480 0 720 30s480 30 720 0V60H0z'/></svg>") 0 0/100% 100% no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'><path d='M0 30C240 0 480 0 720 30s480 30 720 0V60H0z'/></svg>") 0 0/100% 100% no-repeat}
.ws-tpl-coastal .ws-nav .ws-mono{font-family:'Fraunces',serif}
.ws-tpl-coastal .eyebrow{font-family:'Jost',sans-serif;font-size:13px}
.ws-tpl-coastal .wl-photo{border-radius:200px 200px 16px 16px;overflow:hidden}

/* ===================== SUNSET RESORT ===================== */
.ws-tpl-resort{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 34' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'><path d='M22 30a18 18 0 0 1 36 0' fill='black'/><path d='M4 31h72'/><path d='M40 4v6M17 11l4 4M63 11l-4 4M8 22h6M66 22h6'/></svg>");--tpl-orn-w:80px;--tpl-orn-h:34px}
.ws-tpl-resort .hs-mq-cell{border-radius:200px 200px 18px 18px;overflow:hidden}
.ws-tpl-resort .wl-photo,.ws-tpl-resort .st-img{border-radius:200px 200px 22px 22px;overflow:hidden}
.ws-tpl-resort .ws-nav .ws-mono{font-family:'Playfair Display',serif;font-style:italic}
.ws-tpl-resort .eyebrow{font-family:'Jost',sans-serif;font-size:13px;letter-spacing:.3em}
.ws-tpl-resort .ws-sec .s-head h2{font-style:italic}
.ws-tpl-resort .ws-daytab.on{background:var(--ws-accent);color:var(--ws-accent-ink);border-color:var(--ws-accent)}

/* phones: lighter ornaments */
.ws-mobile[class*="ws-tpl-"] .ws-wrap>.s-head::before{transform:scale(.85)}
@media (max-width:640px){
  .ws[class*="ws-tpl-"] .ws-wrap>.s-head::before{transform:scale(.85)}
  .ws-tpl-minimal .ws-sec .s-head h2{font-size:clamp(36px,10vw,56px)}
}
.ws-mobile.ws-tpl-minimal .ws-sec .s-head h2{font-size:42px}
.ws-mobile.ws-tpl-minimal .ws-hero.hs-minimal .h-names{font-size:64px}
.ws-mobile.ws-tpl-coastal .ws-hero.hs-full .ws-hero-in{padding-bottom:80px}

/* ======================= SET 2 (v3.3) ======================= */
/* each of these swaps the shared ornament for its own detail */
.ws.ws-tpl-gazette .ws-wrap>.s-head::before,.ws.ws-tpl-gazette .wl-copy::before{content:"";-webkit-mask:none;mask:none;background:none;width:min(420px,80%);height:0;border-top:4px double var(--ws-ink);margin:0 auto 18px}
.ws-tpl-gazette .ws-nav{border-bottom:4px double var(--ws-ink)}
.ws-tpl-gazette .ws-nav .ws-mono{font-family:'UnifrakturMaguntia',serif;font-style:normal;font-size:26px}
.ws-tpl-gazette .ws-sec .s-head h2{font-weight:700;font-style:normal}
.ws-tpl-gazette .eyebrow{font-weight:700;color:var(--ws-accent)}
.ws-tpl-gazette .ws-btn{border-radius:0;letter-spacing:.16em}

.ws-tpl-folio{counter-reset:tplsec}
.ws.ws-tpl-folio .ws-wrap>.s-head::before{content:"p. " counter(tplsec,decimal-leading-zero);counter-increment:tplsec;background:none;-webkit-mask:none;mask:none;width:auto;height:auto;font:500 12px 'Jost',sans-serif;letter-spacing:.3em;color:var(--ws-accent);margin:0 auto 16px}
.ws.ws-tpl-folio .wl-copy::before{display:none}
.ws-tpl-folio .ws-sec .s-head h2{font-size:clamp(42px,6vw,84px);letter-spacing:-.03em;line-height:.95}
.ws-tpl-folio .ws-nav .ws-mono{font-family:'DM Serif Display',serif;font-size:24px}
.ws-tpl-folio .ws-btn{border-radius:0;letter-spacing:.2em;font-size:13px}

.ws-tpl-invite{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24' fill='none' stroke='black' stroke-width='1.2'><path d='M8 12h40M72 12h40'/><path d='M60 3c5 4 5 14 0 18c-5-4-5-14 0-18z' fill='black'/><circle cx='52' cy='12' r='1.6' fill='black'/><circle cx='68' cy='12' r='1.6' fill='black'/></svg>");--tpl-orn-w:110px;--tpl-orn-h:22px}
.ws-tpl-invite .eyebrow{font-family:'Cormorant Garamond',serif;letter-spacing:.3em}
.ws-tpl-invite .ws-btn{border-radius:0;font-family:'Cormorant Garamond',serif;font-size:15px;letter-spacing:.24em}
.ws-tpl-invite .ws-sec .s-head h2{color:var(--ws-accent);font-size:clamp(48px,6vw,80px)}
.ws-tpl-invite .ws-nav .ws-mono{font-family:'Great Vibes',cursive;font-size:30px}

.ws.ws-tpl-cover .ws-wrap>.s-head::before{content:"";-webkit-mask:none;mask:none;background:var(--ws-accent);width:46px;height:6px;margin:0 auto 20px}
.ws.ws-tpl-cover .wl-copy::before{display:none}
.ws-tpl-cover .ws-sec .s-head h2{text-transform:uppercase}
.ws-tpl-cover .eyebrow{color:var(--ws-accent);font-weight:600}
.ws-tpl-cover .ws-nav .ws-mono{font-family:'Abril Fatface',serif;font-style:normal;font-size:26px;color:var(--ws-accent);text-transform:uppercase}
.ws-tpl-cover .ws-btn{border-radius:0;font-weight:600;letter-spacing:.2em}

.ws-tpl-premiere{--tpl-orn:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 24'><path d='M8 12h36M76 12h36' stroke='black' stroke-width='1.4'/><path d='M60 3l2.6 6 6.4.5-4.9 4.2 1.5 6.3L60 16.6 54.4 20l1.5-6.3L51 9.5l6.4-.5z' fill='black'/></svg>")}
.ws-tpl-premiere .ws-sec .s-head h2{letter-spacing:.04em;font-size:clamp(46px,6.4vw,90px);line-height:.92}
.ws-tpl-premiere .eyebrow{letter-spacing:.4em;color:var(--ws-accent)}
.ws-tpl-premiere .ws-nav .ws-mono{font-family:'Bebas Neue',sans-serif;font-style:normal;font-size:28px;letter-spacing:.08em;color:var(--ws-accent)}
.ws-tpl-premiere .ws-btn{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:.12em}
.ws-tpl-premiere .ws-page:not([data-page="home"]) .ws-sec{background-image:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--ws-accent) 9%,transparent),transparent 60%)}

.ws.ws-tpl-album .ws-wrap>.s-head::before,.ws.ws-tpl-album .wl-copy::before{content:"";-webkit-mask:none;mask:none;background:color-mix(in srgb,var(--ws-accent) 40%,transparent);width:110px;height:26px;margin:0 auto 14px;transform:rotate(-3deg)}
.ws-tpl-album .ws-sec .s-head h2{font-size:clamp(50px,6.4vw,84px)}
.ws-tpl-album .ws-nav .ws-mono{font-family:'Caveat',cursive;font-style:normal;font-size:30px}
.ws-tpl-album .ws-btn{border-radius:999px}

/* ---------- Riviera: a white masthead over big sliding photos ---------- */
.ws-tpl-riviera .ws-nav-mast .ws-mono{font-family:'Italiana',var(--ws-display);font-weight:400}
.ws-tpl-riviera .ws-nav-mast .mast-top,.ws-tpl-riviera .ws-nav-mast .ws-links a{font-family:'Libre Baskerville','EB Garamond',serif}
.ws-tpl-riviera .ws-nav-mast .ws-links a{font-size:16px}
.ws-tpl-riviera .hsl-track{gap:4px}
.ws-tpl-riviera .ws-btn{border-radius:0;letter-spacing:.16em}
