/*
Theme Name: Pati & Adrian Wedding V3
Description: Elegancka strona ślubna bez formularza RSVP, z wyskakującą listą stołów.
Version: 4.0
*/
:root{--ink:#262320;--muted:#77716a;--line:#ded8d0;--paper:#fcfbf9;--warm:#b2a395;--dark:#24211f;--serif:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.7}a{text-decoration:none;color:inherit}.site{overflow:hidden}.container{width:min(1180px,92%);margin:auto}
.hero{height:min(94vh,900px);min-height:650px;position:relative;background:#333 url("assets/hero.jpg") center/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.60),rgba(0,0,0,.08) 72%),linear-gradient(0deg,rgba(0,0,0,.46),transparent 48%)}.hero-content{position:absolute;z-index:2;left:max(4%,calc((100% - 1180px)/2));bottom:12%;color:#fff}.monogram{display:flex;align-items:center;gap:27px;font:500 92px/.8 var(--serif)}.monogram i{display:block;width:1px;height:88px;background:rgba(255,255,255,.72)}.date{font-size:14px;letter-spacing:.55em;margin:30px 0 14px}.script{font-family:"Brush Script MT","Segoe Script",cursive;font-size:40px}.scroll{margin-top:28px;font-size:10px;letter-spacing:.3em;text-transform:uppercase}.scroll:after{content:"↓";display:block;font-size:18px}
.sticky-nav{position:sticky;top:0;z-index:10;background:rgba(252,251,249,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.nav{display:flex;justify-content:center;gap:38px;padding:15px 0;font-size:10px;letter-spacing:.16em;text-transform:uppercase}.nav a{color:#615b55}
.intro{text-align:center;padding:85px 20px 60px}.kicker,.section-kicker{font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.intro h1{font:500 48px/1.1 var(--serif);margin:12px 0 14px}.intro p{max-width:650px;margin:auto;color:#6e6861;font-size:14px}.ornament{color:var(--warm);font-size:22px;margin-top:20px}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.info-card{min-height:355px;padding:58px 35px;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.info-icon{height:50px;color:#9f9284;font-size:34px;font-family:var(--serif)}.info-card h2{font:500 27px/1.1 var(--serif);letter-spacing:.15em;text-transform:uppercase;margin:12px 0 20px}.info-card p{font-size:13px;color:#625d57;margin:7px auto;max-width:310px}.info-card .strong{color:var(--ink);font-weight:500}.love{font-size:20px;color:#9f9284;margin-top:22px}
.btn{display:inline-block;border:1px solid #a79d93;padding:12px 24px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-top:15px;transition:.2s;cursor:pointer;background:transparent;color:inherit}.btn:hover{background:var(--dark);color:#fff}
.feature{padding:90px 0}.feature-grid{display:grid;grid-template-columns:1fr 1fr}.feature-copy{padding:70px;background:#f1eee9}.feature-copy h2{font:500 38px/1.1 var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:8px 0 22px}.feature-copy p{font-size:14px;color:#625d57}.feature-photo{min-height:430px;background:url("assets/hero.jpg") center 63%/cover no-repeat;filter:grayscale(1)}
.tables{padding:90px 0;background:#f4f1ed;text-align:center}.tables h2{font:500 45px/1.05 var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:10px 0 14px}.tables p{color:var(--muted);font-size:13px}
.contact{padding:90px 0}.contact-title{text-align:center;font:500 43px/1 var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:10px 0 42px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.contact-box{text-align:center;background:var(--paper);padding:55px}.contact-box h3{font:500 28px var(--serif);letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px}.contact-box a{font-size:18px}.contact-note{text-align:center;color:var(--muted);font-size:13px;margin-top:25px}
.footer{padding:75px 20px;text-align:center;border-top:1px solid var(--line)}.footer .script{font-size:39px}.footer small{display:block;margin-top:13px;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.footer .heart{margin-top:12px;color:#9f9284}
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(25,22,20,.68);padding:20px}.modal.open{display:flex}.modal-box{position:relative;width:min(850px,100%);max-height:88vh;overflow:auto;background:var(--paper);padding:48px}.modal-close{position:absolute;right:18px;top:15px;border:0;background:none;font-size:26px;cursor:pointer}.modal-title{text-align:center;font:500 38px/1 var(--serif);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}.modal-sub{text-align:center;color:var(--muted);font-size:12px;margin-bottom:30px}.modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.modal-table{background:#fff;border:1px solid var(--line);padding:18px 22px}.modal-table h4{font:500 23px var(--serif);margin:0 0 8px}.modal-table p{font-size:12px;margin:3px 0;color:#625d57}
@media(max-width:820px){.hero{height:78vh;min-height:610px}.hero-content{left:7%;bottom:10%}.monogram{font-size:65px;gap:20px}.monogram i{height:65px}.date{font-size:11px;letter-spacing:.4em}.script{font-size:34px}.nav{gap:17px;overflow:auto;justify-content:flex-start;padding-left:4%;white-space:nowrap}.intro{padding:65px 20px 45px}.intro h1{font-size:39px}.info-grid{grid-template-columns:1fr}.info-card{min-height:auto;padding:48px 25px}.feature{padding:55px 0}.feature-grid{grid-template-columns:1fr}.feature-photo{min-height:300px;order:-1}.feature-copy{padding:50px 28px}.tables{padding:65px 0}.modal-grid{grid-template-columns:1fr}.modal-box{padding:42px 20px 28px}.contact{padding:65px 0}.contact-grid{grid-template-columns:1fr}.contact-box{padding:45px 20px}}

.floral-section{position:relative;overflow:hidden}
.floral-section:before,.floral-section:after{content:"✿ ❀ ✿";position:absolute;font-family:Georgia,serif;color:#c9bdb1;opacity:.38;pointer-events:none;font-size:100px;letter-spacing:12px;line-height:1}
.floral-section:before{left:-60px;top:30px;transform:rotate(-22deg)}
.floral-section:after{right:-65px;bottom:20px;transform:rotate(24deg)}
.info-card{position:relative;overflow:hidden}
.info-card:nth-child(1):after,.info-card:nth-child(5):after{content:"❀";position:absolute;right:20px;top:14px;color:#c9bdb1;opacity:.4;font-size:30px}
.info-card:nth-child(2):before,.info-card:nth-child(4):before{content:"✿";position:absolute;left:18px;bottom:14px;color:#c9bdb1;opacity:.35;font-size:28px}
@media(max-width:820px){.floral-section:before,.floral-section:after{font-size:65px;opacity:.28}}

.guest-photos{padding:90px 0;background:#f4f1ed;text-align:center;position:relative;overflow:hidden}
.guest-photos:before,.guest-photos:after{content:"✿ ❀";position:absolute;font-family:Georgia,serif;color:#c9bdb1;opacity:.35;font-size:82px;line-height:1}
.guest-photos:before{left:-30px;top:30px;transform:rotate(-18deg)}
.guest-photos:after{right:-30px;bottom:25px;transform:rotate(18deg)}
.guest-photos .container{position:relative;z-index:1}
.photo-icon{width:64px;height:48px;margin:0 auto 22px;border:2px solid #a99d91;border-radius:8px;position:relative}
.photo-icon:before{content:"";position:absolute;width:16px;height:16px;border:2px solid #a99d91;border-radius:50%;left:21px;top:14px}
.photo-icon:after{content:"";position:absolute;width:17px;height:6px;background:#a99d91;border-radius:4px 4px 0 0;left:7px;top:-7px}
.guest-photos h2{font:500 43px/1.05 var(--serif);letter-spacing:.08em;text-transform:uppercase;margin:10px 0 18px}
.guest-photos p{max-width:650px;margin:0 auto 10px;color:#625d57;font-size:14px}
.guest-photos .btn{margin-top:22px}
