/* The selected sixth Warm Stories design. */
body.family-warm{background:#f5e9d9;color:#4b382e;font-family:Manrope,Arial,sans-serif}
.warm-page{overflow:hidden;background:#f5e9d9;color:#4b382e}
.warm-page .section-emotion{display:none!important}
.warm-page section{position:relative;overflow:hidden;padding:clamp(65px,8vw,110px) clamp(26px,8vw,110px)}
.warm-page h1,.warm-page h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.05}
.warm-page h2{font-size:clamp(42px,5vw,72px);margin:0 0 23px}
.warm-page p,.warm-page a,.warm-page li,.warm-gate p,.warm-gate button{font-size:clamp(17px,1.8vw,20px);line-height:1.65}
.warm-page a:focus-visible,.warm-gate button:focus-visible{outline:3px solid #ce936b;outline-offset:5px}
.warm-kicker{margin:0 0 22px!important;text-transform:uppercase;letter-spacing:.08em;font-size:16px!important;font-weight:750}
.warm-page.warm-animate .warm-reveal>div,.warm-page.warm-animate .warm-reveal>img,.warm-page.warm-animate .warm-reveal>h2,.warm-page.warm-animate .warm-reveal>p,.warm-page.warm-animate .warm-reveal>ol{transition:opacity .85s,transform .85s;opacity:0;transform:translateY(20px)}
.warm-page.warm-animate .warm-reveal>img{transform:translateX(24px)}
.warm-page.warm-animate .warm-reveal.seen>div,.warm-page.warm-animate .warm-reveal.seen>img,.warm-page.warm-animate .warm-reveal.seen>h2,.warm-page.warm-animate .warm-reveal.seen>p,.warm-page.warm-animate .warm-reveal.seen>ol,.family-cover .warm-reveal>div,.family-cover .warm-reveal>img,.family-cover .warm-reveal>h2,.family-cover .warm-reveal>p,.family-cover .warm-reveal>ol{opacity:1;transform:none}
.warm-reveal>img{transition-delay:.16s}.warm-reveal>ol{transition-delay:.1s}
.warm-gate{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 50% 30%,#e9d3bd,#6f4c3d);text-align:center}
.warm-gate[hidden]{display:none}.warm-gate-paper{width:min(590px,100%);padding:clamp(45px,7vw,90px) 30px;background:#fff6e8;border:1px solid #a78065;box-shadow:0 25px 90px #39271c55}
.warm-gate h1{font:500 clamp(45px,7vw,86px)/1 'Cormorant Garamond',Georgia,serif;margin:16px auto 22px}
.warm-gate button{min-height:55px;padding:12px 28px;border:0;border-radius:40px;background:#704b39;color:white;font-weight:700;cursor:pointer}
.warm-page .warm-hero{min-height:720px;display:grid;place-items:center;background:linear-gradient(125deg,#604137,#301f1c);padding:75px 28px}
.warm-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.84)}
.warm-hero:after{content:"";position:absolute;inset:0;background:#3d291a54;pointer-events:none}
.warm-hero-paper{position:relative;z-index:1;width:min(540px,100%);padding:clamp(45px,6vw,80px) 28px;text-align:center;background:#f9f0e5e8;box-shadow:0 20px 80px #2d1c1455}
.warm-hero h1{font-size:clamp(62px,8.5vw,122px);margin:15px 0 23px}
.warm-hero-date{font-size:18px!important;font-weight:600}.warm-hero-note{max-width:410px;margin:20px auto 0!important}
.warm-page .warm-glasses{position:absolute;z-index:2;right:4%;bottom:0;width:clamp(150px,18vw,260px);height:auto;object-fit:contain;mask-image:url("../../images/invitation-websites/art/warm-stories-glasses-mask.5f7707c995fb.svg");mask-size:100% 100%;mask-repeat:no-repeat}
.warm-page .warm-letter{min-height:650px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6vw;align-items:center;background:#e7d2b8}
.warm-letter-copy{min-width:0;overflow-wrap:anywhere;position:relative;z-index:1;max-width:500px}.warm-letter h2{margin-bottom:25px}.warm-letter .invitation-prose{white-space:normal}
.warm-page .warm-letter-photo{width:100%;height:min(60vw,520px);object-fit:cover}
.warm-page .warm-letters{position:absolute;z-index:2;bottom:-110px;left:-90px;width:min(25vw,300px);height:auto;object-fit:contain;pointer-events:none}
.warm-page .warm-day{min-height:450px;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f9efe3}
.warm-day h2{font-size:clamp(55px,7vw,105px)}.warm-rule{width:70px;border-top:1px solid #a48268;margin:25px auto}
.warm-page .warm-venue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6vw;align-items:center;background:#caa788;min-height:620px}
.warm-venue-copy{position:relative;z-index:1}.warm-venue a{display:inline-block;min-height:46px;padding:8px 0;font-weight:750;border-bottom:1px solid currentColor}
.warm-page .warm-venue-photo{width:100%;height:min(58vw,490px);object-fit:cover}
.warm-map-art{position:relative;min-height:370px;border:2px solid #91694d;background:repeating-linear-gradient(28deg,#ead1b7 0 30px,#e4c5a6 30px 58px);border-radius:45% 45% 8px 8px;overflow:hidden}
.warm-map-art span{position:absolute;border:2px solid #9a765d;border-radius:50%;width:90%;height:65%;left:15%;top:20%;transform:rotate(35deg)}.warm-map-art span:nth-child(2){left:-20%;top:30%;transform:rotate(-23deg)}.warm-map-art span:nth-child(3){left:10%;top:-42%}.warm-map-art i{position:absolute;left:50%;top:45%;width:38px;height:38px;background:#704b39;border:6px solid #fff5e6;border-radius:50%;box-shadow:0 10px 25px #38251b55}
.warm-page .warm-countdown{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#5f4237;color:#fff4e5}
.warm-countdown h2{font-size:clamp(65px,8vw,115px)}
.warm-page .warm-schedule{min-height:500px;text-align:center;background:#e8d1b9}.warm-schedule ol{list-style:none;max-width:600px;margin:32px auto 0;padding:0;text-align:left}
.warm-schedule li{display:grid;grid-template-columns:95px 1fr;gap:18px;padding:19px 0;border-top:1px solid #aa8c71;line-height:1.5}.warm-schedule time{font-weight:750}
.warm-page .warm-gallery{padding:30px;display:flex;gap:20px;overflow-x:auto;background:#f9efe3}.warm-gallery img{flex:0 0 auto;width:min(30vw,350px);aspect-ratio:4/5;object-fit:cover}
.warm-page .warm-dress{min-height:470px;text-align:center;background:#f9efe3}.warm-dress .invitation-prose{max-width:680px;margin:0 auto}
.warm-palette{display:flex;justify-content:center;gap:13px;margin-top:30px}.warm-palette i{width:45px;height:45px;border:1px solid #896c5a;border-radius:50%}
.warm-page .warm-details{min-height:470px;background:#caa788;text-align:center}.warm-details>div{max-width:620px;margin:0 auto;text-align:left}
.warm-details .invitation-prose{padding:15px 0;border-bottom:1px solid #967658;margin:0}
.warm-page .invitation-rsvp{max-width:none;margin:0;padding:90px 25px 105px;min-height:400px;background:#e8d1b9;box-shadow:none;border-radius:0;text-align:center}
.warm-page .invitation-rsvp:before,.warm-page .invitation-rsvp-mark,.warm-page .invitation-rsvp .family-caption,.warm-page .invitation-rsvp .emotion-illustration{display:none}
.warm-page .invitation-rsvp h2{font:500 clamp(46px,6vw,85px)/1.05 'Cormorant Garamond',Georgia,serif;margin:0 auto 22px;text-align:center}
.warm-page .invitation-rsvp p{font:18px/1.6 Manrope,Arial,sans-serif;text-align:center}
.warm-page .invitation-rsvp button{min-height:56px;border-radius:40px;background:#704b39;color:#fff;font-size:17px}
.warm-page .warm-closing{padding:95px 25px 35px;background:#f9efe3;color:#4b382e;text-align:center}
.warm-closing h2{font:500 clamp(48px,6vw,85px)/1.05 'Cormorant Garamond',Georgia,serif;margin:0 0 22px}.warm-closing p{font-size:19px}
body.family-warm footer.warm-closing .invitation-credit{margin-top:75px;opacity:1}
body.family-warm footer.warm-closing .invitation-credit a{font-size:14px!important;line-height:1.6!important;color:#4b382e!important;opacity:1;text-decoration:none}
@media(max-width:700px){
  .warm-page section{padding:48px 24px}
  .warm-page h2{font-size:clamp(42px,11vw,58px);margin-bottom:16px}
  .warm-page .warm-hero{min-height:520px;padding:42px 20px}
  .warm-hero-paper{margin-top:-20px;padding:40px 22px}
  .warm-hero h1{font-size:clamp(58px,15vw,82px);margin:10px 0 16px}
  .warm-hero-note{display:none}
  .warm-page .warm-glasses{width:115px;right:1%;bottom:0}
  .warm-page .warm-letter,.warm-page .warm-venue{grid-template-columns:minmax(0,1fr);gap:28px;min-height:0}
  .warm-page .warm-letter{padding-bottom:135px}
  .warm-page .warm-letter-photo,.warm-page .warm-venue-photo{height:auto;aspect-ratio:4/3}
  .warm-page .warm-letters{width:115px;bottom:-15px;left:-25px}
  .warm-page .warm-day,.warm-page .warm-countdown{min-height:280px}
  .warm-day h2,.warm-countdown h2{font-size:clamp(55px,14vw,76px)}
  .warm-rule{margin:16px auto}
  .warm-page .warm-schedule,.warm-page .warm-dress,.warm-page .warm-details{min-height:0}
  .warm-schedule ol{margin-top:20px}
  .warm-page .warm-schedule li{grid-template-columns:70px 1fr;gap:12px;padding:13px 0}
  .warm-page .warm-gallery{padding:18px;gap:12px}
  .warm-gallery img{width:70vw}
  .warm-palette{margin-top:20px}
  .warm-page .warm-details>div{text-align:left}
  .warm-page .invitation-rsvp{min-height:0;padding:52px 22px 62px}
  .warm-page .warm-closing{padding:62px 22px 28px}
  body.family-warm footer.warm-closing .invitation-credit{margin-top:55px}
}
@media(prefers-reduced-motion:reduce){.warm-reveal>div,.warm-reveal>img,.warm-reveal>h2,.warm-reveal>p,.warm-reveal>ol{transition:none!important;opacity:1!important;transform:none!important}html{scroll-behavior:auto!important}}

/* A complete paper composition before the author adds a photograph. */
.warm-page .warm-hero--paper{background:radial-gradient(ellipse at 15% 20%,#e8d6bb,transparent 60%),linear-gradient(135deg,#e8dfd1,#c9b8a1);min-height:600px}
.warm-hero--paper:after{inset:24px;border:1px solid #8b735840;background:transparent;border-radius:200px 200px 4px 4px}
.warm-hero--paper .warm-hero-paper{background:#fff8eae8;box-shadow:0 20px 60px #51412d20;border:1px solid #fffaf0}
@media(max-width:600px){.warm-page .warm-hero--paper{min-height:490px;padding:56px 22px}.warm-hero--paper:after{inset:14px}.warm-hero--paper .warm-hero-paper{margin:0;padding:42px 18px}.warm-hero--paper .warm-glasses{max-width:110px}}

/* Without a venue photo, keep the address as a complete centred scene. */
.warm-page .warm-venue.warm-venue--no-photo{
  grid-template-columns:minmax(0,1fr);min-height:0;text-align:center;
}
.warm-venue--no-photo .warm-venue-copy{width:100%;max-width:760px;margin-inline:auto}

/* Long author text must not set the minimum width of a grid column. */
.warm-page .warm-letter>*{min-width:0;max-width:100%;box-sizing:border-box}
.warm-page .warm-letter-copy :is(h2,p){overflow-wrap:anywhere}
