/* Original concept styling; layered over existing style.css. */
:root{--cream:#fbf9f7;--ivory:#fffdfa;--taupe:#b39a87;--dark:#282523;--line:#e8ded7}
.site-header{position:relative;padding:12px 4.5%;min-height:110px;background:#fffdfb;border-bottom:0}
.brand-icon{font-size:28px;line-height:1;color:#ac907b}.brand strong{font-size:25px}.site-header nav a{font-size:10px;letter-spacing:.16em}.site-header nav{gap:25px}
.hero{grid-template-columns:43% 57%;min-height:410px;position:relative;background:#f9f5f0}
.hero-copy{position:relative;z-index:1;padding:48px 5% 45px 9%;background:linear-gradient(90deg,#fbf9f7 50%,#fbf9f7ed 85%,#fbf9f700 100%);margin-right:-80px}
.hero .eyebrow{order:2;margin-top:15px;font-size:10px;letter-spacing:.17em;max-width:320px}
.hero h1{order:0;font-size:clamp(42px,4.6vw,67px);line-height:.92;margin:0 0 8px}
.hero h1 em{display:block;font-size:clamp(44px,4.5vw,66px);line-height:1.15;white-space:normal;margin-top:5px}
.hero-copy>p:not(.eyebrow){order:3;font-size:12px;max-width:350px}.hero-copy .button{order:4;align-self:flex-start;margin-top:12px;background:transparent;border:1px solid #b39a87;color:#292725}
.hero-image{min-height:410px;background-image:var(--photo);background-position:center center}
#portfolio{padding:18px 4.5% 35px;background:#fffdfb}.gallery-grid{gap:8px}.gallery-card{background:#f8f5f1}.gallery-card .photo{height:225px;min-height:225px;background-image:var(--photo)}.gallery-card h3{font-size:25px;margin:5px 0 0}.gallery-card p{font-size:12px}.gallery-card small{font-size:10px;padding-bottom:12px}
.about{grid-template-columns:42% 58%;background:#fcfaf8}.about-image{min-height:310px;background-image:var(--photo);background-position:center 40%}.about-copy{padding:28px 9%}.about-copy h2{font-size:28px;letter-spacing:.14em}.about-copy p:not(.script){font-size:12px;max-width:460px}.about-copy .script{font-size:49px}.about-copy .button{margin-top:10px}
.moment-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#fff;padding:8px 4.5%}.moment-strip img{width:100%;height:125px;object-fit:cover}
.contact-banner{background:#e7dcd2;padding:42px 20px}.contact-banner h2{font-size:35px}.contact-banner .button{background:#b39a87}
footer{background:#fffdfa;border-top:1px solid #e8ded7}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{margin:0;padding:55px 8%;background:#fbf9f7}.hero-image{min-height:360px}.gallery-card .photo{height:220px}.about{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.site-header{min-height:90px}.hero h1{font-size:53px}.hero h1 em{font-size:54px}.gallery-grid,.about{grid-template-columns:1fr}.about-image{min-height:330px}.moment-strip img{height:95px}.gallery-card .photo{height:280px}.hero-image{min-height:320px}}

/* Exact supplied header artwork: do not recreate or alter the lettering. */
.site-header{display:flex;align-items:center;gap:24px;min-height:112px;padding:9px 3.2%;}
.site-header .brand{display:block;flex:0 0 clamp(245px,25vw,365px);width:clamp(245px,25vw,365px);line-height:0;}
.site-header .brand-image{display:block;width:100%;height:auto;object-fit:contain;}
.site-header nav{margin-left:auto;display:flex;align-items:center;gap:clamp(12px,1.7vw,28px);}
.site-header>.button{margin-left:clamp(10px,3vw,45px);white-space:nowrap;}
.hero-heart-divider{order:1;display:flex;align-items:center;gap:10px;color:#b9a38e;width:min(285px,100%);margin:8px 0 11px;font-size:14px;line-height:1;}
.hero-heart-divider:before,.hero-heart-divider:after{content:'';height:1px;flex:1;background:#cdbbac;}
.hero h1{margin-bottom:0;}
@media(max-width:1100px){.site-header{gap:12px;padding:10px 2.5%}.site-header .brand{flex-basis:260px;width:260px}.site-header nav{gap:12px}.site-header>.button{margin-left:4px}}

/* Targeted repair: keep original header artwork and clear photography. */
.site-header .brand{display:block;flex:0 1 clamp(220px,24vw,355px);width:clamp(220px,24vw,355px);min-width:0;line-height:0}
.site-header .brand-image{display:block;width:100%;height:auto;object-fit:contain}
.photo,.hero-image,.gallery-card .photo,.about-image{background-image:var(--photo)!important;filter:none!important;opacity:1!important}
.hero-heart-divider{order:1;display:flex;align-items:center;justify-content:center;gap:12px;width:min(285px,100%);margin:15px 0 14px;color:#b39a87;font-size:15px;line-height:1}
.hero-heart-divider::before,.hero-heart-divider::after{content:"";height:1px;flex:1;background:#cdb9a7}
.hero-heart-divider span{color:#b39a87;display:block;font-size:15px;line-height:1}
@media(max-width:850px){.site-header{flex-wrap:wrap}.site-header nav{order:3;width:100%;justify-content:center;flex-wrap:wrap}.site-header>.button{margin-left:auto}}
@media(max-width:600px){.site-header .brand{flex-basis:min(73vw,280px);width:min(73vw,280px)}.hero-heart-divider{width:260px;max-width:100%}}

/* Approved wedding details and calculator; other sections remain unchanged. */
.wedding-details{max-width:1150px;margin:55px auto 28px;padding:35px;background:#faf7f3;border:1px solid #e4d8cd}.wedding-details>h3{text-align:center;font:400 35px 'Cormorant Garamond',serif;margin:4px 0 25px}.wedding-details-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:35px}.wedding-details h4{font:500 26px 'Cormorant Garamond',serif;margin:0 0 14px}.wedding-details li{margin:0 0 12px}.wedding-details ul{padding-left:22px;margin:0}.payment-calculator{background:#fff;padding:25px;border:1px solid #e4d8cd}.payment-calculator>p{font-size:13px}.payment-calculator label{display:block;margin:15px 0 4px;font-size:12px}.payment-calculator select{display:block;width:100%;padding:10px;border:1px solid #e4d8cd;background:#fffdfb;color:#292725}.payment-results{margin-top:18px;padding:14px;background:#faf7f3}.payment-results p{display:flex;justify-content:space-between;gap:12px;margin:8px 0}.payment-calculator .fineprint{text-align:left}.contact-banner{scroll-margin-top:120px}.booking{scroll-margin-top:120px}@media(max-width:760px){.wedding-details{padding:22px 18px}.wedding-details-grid{grid-template-columns:1fr}.wedding-details>h3{font-size:29px}}
