/*
Theme Name: Our Song Wedding Complete
Theme URI: https://oursongwedding.com/
Author: Our Song Theme
Description: A clean, image-rich wedding music WordPress theme inspired by the Our Song domain. Rebuilt because the archived SPA assets are missing.
Version: 2.0.0
Requires PHP: 7.4
Text Domain: our-song-wedding
*/
:root{--rose:#c88f84;--rose-dark:#a96f65;--cream:#faf7f3;--ink:#29272a;--muted:#716f70}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 Arial,sans-serif}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.topbar{position:relative;z-index:10;background:#fff;border-bottom:1px solid #f1efed}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;flex-direction:column;line-height:1}.brand strong{font:italic 39px/1.1 Georgia,serif;color:var(--rose-dark);letter-spacing:-2px}.brand small{font-size:9px;letter-spacing:2px;margin:4px auto;color:#888}.nav{display:flex;gap:22px;align-items:center;font:14px Georgia,serif}.nav a:hover,.nav a.active{color:var(--rose-dark)}.btn{display:inline-block;background:var(--rose);color:white!important;padding:13px 26px;border-radius:30px;font:15px Georgia,serif;text-align:center;border:1px solid var(--rose);transition:.2s}.btn:hover{background:var(--rose-dark)}.btn-outline{background:#fff!important;color:var(--rose-dark)!important}.menu-check,.burger{display:none}.hero{min-height:560px;background:linear-gradient(90deg,#fcfaf8 8%,#faf7f0 100%);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch;min-height:560px}.hero-copy{padding:90px 24px 70px 0;position:relative;z-index:1}.eyebrow{color:var(--rose-dark);text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:bold}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.16}h1{font-size:clamp(42px,5.1vw,72px);margin:18px 0 22px;letter-spacing:-2px}h2{font-size:clamp(32px,3.6vw,50px);margin:10px 0 20px}h3{font-size:25px;margin:16px 0 9px}.lead{font-size:18px;line-height:1.75;color:#626065;max-width:530px}.hero-photo{background-image:linear-gradient(90deg,rgba(250,247,240,.8),transparent 25%),url('assets/wedding-couple.jpg');background-size:cover;background-position:center 38%;min-height:450px}.micro{display:flex;gap:24px;flex-wrap:wrap;margin-top:38px;color:#746c67;font-size:13px}.micro span:before{content:'♡';color:var(--rose);font-size:22px;vertical-align:middle;margin-right:7px}.section{padding:85px 0}.section.soft{background:var(--cream)}.center{text-align:center}.section-intro{max-width:690px;margin:0 auto 42px;color:var(--muted)}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.tile{background:white}.tile img{width:100%;height:215px;object-fit:cover}.tile p{color:var(--muted);margin:0}.tile .tile-body{padding:0 2px 15px}.count{font:15px Georgia,serif;color:var(--rose-dark);letter-spacing:1px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px}.split img{width:100%;height:430px;object-fit:cover}.split p,.plain p{color:var(--muted)}.quote{padding:38px 46px;border-left:3px solid var(--rose);background:#fff;font:italic 26px/1.5 Georgia,serif}.pagehero{padding:90px 0 80px;background:#faf7f3}.pagehero h1{font-size:clamp(40px,5vw,64px);margin:10px 0}.pagehero p{font-size:19px;max-width:710px;color:var(--muted)}.faq{max-width:850px;margin:0 auto}.faq details{border-bottom:1px solid #e9e2dd;padding:21px 2px}.faq summary{font:20px Georgia,serif;cursor:pointer}.faq p{color:var(--muted)}.footer{background:#272426;color:#f5f1ee;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}.footer a:hover{color:#e6aea1}.footer small,.footer p{color:#cec4c0}.footer-nav{display:flex;flex-direction:column;gap:9px}.footer-bottom{border-top:1px solid #554e4c;margin-top:40px;padding-top:20px;color:#bdb4b0;font-size:12px}.social-like{font:italic 34px Georgia,serif;color:#f0c0b5}.cta-panel{padding:56px 28px;text-align:center;background:#f7eeea}.cta-panel h2{margin:0 0 15px}.contact-card{background:var(--cream);padding:35px}.contact-card a{color:var(--rose-dark);text-decoration:underline}.post-content{max-width:850px;margin:auto;padding:65px 0}.post-content h1{font-size:48px}@media(max-width:1030px){.nav{gap:13px;font-size:13px}.header-inner>.btn{display:none}}@media(max-width:760px){.wrap{width:min(100% - 32px,1180px)}.header-inner{min-height:78px}.brand strong{font-size:32px}.burger{display:block;cursor:pointer;font-size:30px}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:20px 26px;box-shadow:0 12px 20px #0001;flex-direction:column;align-items:flex-start}.menu-check:checked~.nav{display:flex}.hero-inner{display:flex;flex-direction:column}.hero-copy{padding:55px 0 44px}.hero-photo{min-height:350px;order:-1;margin:0 -16px}.hero{min-height:0}.micro{gap:12px}.three,.split,.footer-grid{grid-template-columns:1fr}.split{gap:28px}.split img{height:300px}.section{padding:55px 0}.tile img{height:245px}.pagehero{padding:50px 0}.quote{font-size:21px;padding:26px}.footer-grid{gap:22px}}
