@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,500&display=swap');:root{--cream:#eae8e2;--ink:#1c1c1a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}.top{height:76px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:relative;z-index:5}.logo{font-weight:700;font-size:22px;letter-spacing:-1.3px}.logo span{font-size:10px;vertical-align:top;margin-left:3px}.top nav{display:flex;gap:30px;align-items:center}.top nav a,.top button{font:600 11px 'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:1px}.top button{border:1px solid #777;background:transparent;padding:9px 11px;cursor:pointer}.hero{height:calc(100svh - 76px);min-height:540px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.48),transparent 80%),linear-gradient(0deg,rgba(0,0,0,.3),transparent 50%)}.hero-copy{position:absolute;left:5%;bottom:15%}.eyebrow,.micro{font-size:11px;letter-spacing:2px;font-weight:700}.hero h1{font-size:clamp(82px,13.8vw,240px);line-height:.82;letter-spacing:-.09em;margin:24px 0 20px;font-weight:700}.hero h1 em,.intro h2 i,.section-head h2 i,.about h2 i,.contact h2 i{font-family:'Playfair Display',Georgia,serif;font-weight:500}.hero-copy p{font-size:15px}.scroll,.hero-number{position:absolute;bottom:24px;font-size:10px;letter-spacing:2px}.scroll{left:5%}.hero-number{right:5%}.intro{padding:130px 8% 140px}.intro h2{font-size:clamp(48px,7.7vw,124px);line-height:1.05;letter-spacing:-.067em;font-weight:600;max-width:1200px;margin:42px 0 80px}.intro-foot{display:flex;justify-content:space-between;gap:60px}.intro-foot span{font-size:11px;letter-spacing:1px;font-weight:700}.intro-foot p{max-width:440px;font-size:17px;line-height:1.6;margin:0}.stories{padding:40px 5% 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:65px}.section-head span{font-size:11px;letter-spacing:1.5px}.section-head h2{font-size:clamp(40px,6.5vw,100px);letter-spacing:-.065em;margin:0;font-weight:600}.editorial-grid{display:grid;grid-template-columns:1.15fr .85fr;column-gap:8%;row-gap:90px;align-items:start}.tile{margin:0}.tile img{width:100%;height:auto;display:block;max-height:780px;object-fit:cover}.tile figcaption{font-size:10px;font-weight:700;letter-spacing:1.5px;margin-top:15px}.tile-b{margin-top:150px}.tile-c{margin-left:10%;}.tile-d{margin-top:120px;margin-right:10%}.full-photo{height:85vh;min-height:450px;position:relative;margin-top:140px;overflow:hidden}.full-photo img{width:100%;height:100%;object-fit:cover}.full-photo span{position:absolute;bottom:30px;left:30px;color:#fff;font-size:clamp(24px,5vw,70px);letter-spacing:-.06em;font-weight:700}.about{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy{padding:12% 11%;display:flex;flex-direction:column;justify-content:center}.about h2{font-size:clamp(55px,6vw,105px);line-height:1;letter-spacing:-.07em;margin:50px 0}.about p{font-size:19px;line-height:1.65;max-width:490px}.about p.small{font-size:13px;margin-top:28px}.contact{padding:140px 6% 160px;background:#242421;color:var(--cream);text-align:center}.contact h2{font-size:clamp(58px,10vw,165px);line-height:.96;letter-spacing:-.075em;margin:55px 0}.contact p{font-size:17px}.contact-link{display:inline-block;border-bottom:1px solid var(--cream);padding:14px 0;margin-top:45px;font-size:13px;letter-spacing:1px}.contact .note{opacity:.6;font-size:11px;margin-top:60px}footer{display:flex;justify-content:space-between;padding:35px 5%;font-size:10px;letter-spacing:1px;font-weight:700}@media(max-width:700px){.top{height:65px;padding:0 5%}.logo{font-size:17px}.top nav{gap:12px}.top nav a{display:none}.top button{font-size:10px}.hero{height:calc(88svh - 65px);min-height:470px}.hero>img{object-position:58% center}.hero-copy{left:5%;right:5%;bottom:15%}.hero h1{font-size:clamp(66px,17vw,110px)}.eyebrow{font-size:9px}.hero-copy p{font-size:12px}.intro{padding:80px 6% 95px}.intro h2{font-size:clamp(44px,11vw,74px);margin:40px 0 55px}.intro-foot{display:block}.intro-foot p{margin-top:25px;font-size:15px}.stories{padding:20px 5% 0}.section-head{display:block;margin-bottom:30px}.section-head h2{margin-top:22px;font-size:48px}.editorial-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.tile-b{margin-top:60px}.tile-c{margin-left:0}.tile-d{margin:45px 0 0}.tile figcaption{font-size:8px;letter-spacing:.6px}.full-photo{height:55vh;min-height:300px;margin-top:80px}.full-photo span{left:15px;bottom:15px}.about{display:block}.about-photo{height:60vh}.about-copy{padding:85px 7% 95px}.about h2{margin:35px 0;font-size:60px}.about p{font-size:16px}.contact{padding:100px 5% 115px}.contact h2{font-size:clamp(49px,12vw,80px);margin:40px 0}.contact p{font-size:14px}footer{gap:12px;flex-wrap:wrap;font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Ajustes de encuadre: respetar siempre los rostros y el marco original */
.tile img{max-height:none;object-fit:contain;object-position:center}
.full-photo{background:#20201e}
.full-photo img{object-fit:contain;object-position:center}
.about-photo{background:#262623}
.about-photo img{object-fit:contain;object-position:center}
@media(max-width:700px){
.hero{background:#252522;display:flex;flex-direction:column;height:auto;min-height:0}
.hero>img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;flex:none}
.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.65),transparent 45%);pointer-events:none}
.hero-copy{position:relative;left:auto;right:auto;bottom:auto;padding:24px 5% 56px;background:#252522}
.hero h1{margin:12px 0 16px}
.scroll,.hero-number{bottom:18px}
.full-photo{height:auto;min-height:0}
.full-photo img{height:auto;max-height:75svh;width:100%;object-fit:contain}
.full-photo span{font-size:clamp(20px,6vw,38px);text-shadow:0 2px 10px #000}
.about-photo{height:auto}
.about-photo img{height:auto;max-height:80svh;object-fit:contain}
}

/* Portada apaisada: fotografía completa y ligeramente desplazada a la derecha. */
@media(max-width:700px){
.hero>img{width:94%;height:auto;max-height:none;object-fit:contain;margin-left:6%;}
}

/* Contact form */
.wedding-form{max-width:760px;margin:36px auto 26px;text-align:left}.wedding-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wedding-form label{display:block;margin-bottom:20px}.wedding-form label>span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:9px}.wedding-form input:not([type=checkbox]),.wedding-form textarea{box-sizing:border-box;width:100%;padding:14px 12px;border:1px solid #999;background:transparent;color:inherit;font:inherit;border-radius:0}.wedding-form textarea{resize:vertical}.wedding-form .privacy-check{display:flex;align-items:flex-start;gap:10px}.wedding-form .privacy-check input{margin-top:3px}.wedding-form .privacy-check span{font-size:12px;letter-spacing:0;text-transform:none}.wedding-form .form-submit{background:#242424;color:#fff;border:0;padding:16px 24px;cursor:pointer;font:inherit;letter-spacing:.09em}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:600px){.wedding-form .form-grid{grid-template-columns:1fr;gap:0}}

/* Portada aprobada: imagen apaisada completa sobre marco blanco */
.hero{background:#eae8e2;color:#1c1c1a;display:flex;flex-direction:column;height:auto;min-height:0;padding:28px 5% 68px;overflow:visible}
.hero>img{order:2;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;margin:0!important;border:12px solid #fff;box-shadow:0 8px 25px rgba(0,0,0,.08)}
.hero-shade{display:none}
.hero-copy{order:1;position:static;left:auto;right:auto;bottom:auto;padding:10px 0 28px;background:transparent;color:#1c1c1a}
.hero h1{font-size:clamp(64px,13vw,180px);margin:18px 0 15px}
.scroll,.hero-number{bottom:22px;color:#1c1c1a}
.about-photo{background:#242421;display:flex;align-items:center;justify-content:center}
.about-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.hero{padding:24px 5% 64px}.hero>img{width:100%;height:auto;border:10px solid white;margin:0!important}.hero-copy{padding:6px 0 25px}.hero h1{font-size:clamp(62px,17vw,95px)}.about-photo{height:auto;min-height:0}.about-photo img{height:auto;max-height:none;object-fit:contain}}
