:root{--paper:#f8f5ef;--ivory:#eee7dc;--ink:#322d28;--muted:#635b52;--gold:#a47a42;--gold-light:#d3b477;--line:#d5c5a9;--dark:#343831}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}img{max-width:100%;display:block}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}h1,h2,h3,.serif,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.14}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.1rem,6vw,6.8rem);letter-spacing:-.055em}h2{font-size:clamp(2.5rem,4.6vw,5rem);letter-spacing:-.045em}h3{font-size:clamp(1.75rem,2.7vw,2.9rem);letter-spacing:-.025em}.eyebrow{font-size:.78rem;letter-spacing:.17em;text-transform:uppercase;color:#815c30;font-weight:700}.site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;padding:1.1rem clamp(1.3rem,4vw,5rem);border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:3}.mark{text-decoration:none;font:1.4rem Georgia,serif;letter-spacing:.14em;line-height:1.1}.mark small{display:block;font:600 .59rem Arial,sans-serif;letter-spacing:.13em;color:var(--gold);margin-top:.25rem}.site-header nav{display:flex;gap:clamp(.8rem,2vw,2rem)}.site-header nav a,.header-cta{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}.header-cta{justify-self:end;border-bottom:1px solid var(--gold);padding-bottom:.3rem}.hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:680px}.hero-copy{padding:clamp(4rem,8vw,9rem) clamp(2rem,6vw,8rem);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{margin:1.4rem 0 1.8rem;max-width:730px}.hero p{max-width:510px;font-size:1.2rem;line-height:1.65;color:#4e453b}.hero-art{background:radial-gradient(circle at 65% 42%,#fff 0,#f7f0e5 40%,#e8d8be 100%);display:flex;align-items:center;justify-content:center;min-height:620px;position:relative;overflow:hidden}.hero-art:before,.hero-art:after{content:'';position:absolute;border:1px solid rgba(164,122,66,.5);width:78%;aspect-ratio:1;border-radius:50%;transform:rotate(-20deg) scaleX(1.4)}.hero-art:after{transform:rotate(19deg) scaleX(1.4);width:66%;opacity:.55}.hero-art img{width:min(58%,480px);mix-blend-mode:multiply;position:relative;z-index:1;filter:drop-shadow(0 4px 10px rgba(124,91,49,.14))}.hero-art .subtle{position:absolute;bottom:2rem;right:2rem;z-index:2;color:#755832;font:italic 1.1rem Georgia,serif}.link{display:inline-flex;align-items:center;gap:1rem;border-bottom:1px solid var(--gold);padding:.7rem 0 .45rem;text-decoration:none;text-transform:uppercase;font-size:.79rem;letter-spacing:.12em;margin-top:1.1rem}.link:after{content:'↗';font-size:1.2rem;color:var(--gold)}.gold-rule{height:5px;background:linear-gradient(90deg,#806033,#d1ad69,#f4e7c7,#a87936)}.wrap{max-width:1480px;margin:auto;padding:clamp(4.5rem,8vw,9rem) clamp(1.4rem,6vw,7rem)}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;margin-bottom:3rem}.section-intro h2{margin:1rem 0 0}.section-intro p{font-size:1.1rem;color:var(--muted);max-width:520px;margin:0}.events{display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:start}.feature-link{text-decoration:none;display:block}.feature-link img{width:100%;height:400px;object-fit:cover}.feature-link h3{margin:1.1rem 0 .4rem}.feature-link p{color:var(--muted);max-width:570px}.feature-link:hover h3,.service-name:hover{color:#7d5629}.brand-relief{height:440px;display:flex;align-items:center;justify-content:center;position:relative;background:linear-gradient(135deg,#fbf8f2,#eee5d6);border-top:2px solid #c29b5d;border-bottom:2px solid #c29b5d;overflow:hidden}.brand-relief img{height:74%;width:auto;mix-blend-mode:multiply;filter:drop-shadow(2px 4px 2px rgba(101,72,35,.2))}.brand-relief:after{content:'';position:absolute;inset:20px;border:1px solid rgba(164,122,66,.35);pointer-events:none}.event-lines{margin-top:4rem;display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}.event-lines a{padding-top:1rem;border-top:2px solid var(--gold);text-decoration:none}.event-lines h3{margin:.6rem 0;font-size:clamp(1.8rem,2.5vw,2.5rem);text-shadow:1px 2px 1px rgba(164,122,66,.14)}.event-lines p{color:var(--muted)}.dark-section{background:var(--dark);color:var(--paper);padding:clamp(4.5rem,8vw,9rem) 7vw;display:grid;grid-template-columns:.65fr 1.35fr;gap:3rem}.dark-section .eyebrow{color:#d9ba80}.dark-section blockquote{font-size:clamp(2.4rem,4vw,4.7rem);margin:0;letter-spacing:-.035em}.dark-section p{max-width:530px;color:#ddd8cd;margin:2rem 0 0}.story{display:grid;grid-template-columns:1fr 1fr;background:var(--ivory)}.story img{width:100%;height:100%;min-height:570px;object-fit:cover}.story-text{padding:clamp(4rem,7vw,8rem);align-self:center}.story-text h2{margin:1rem 0 1.5rem}.story-text p{color:var(--muted);max-width:510px;font-size:1.1rem}.work-row{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:1rem}.work-row figure{margin:0}.work-row img{width:100%;height:330px;object-fit:cover}.work-row figcaption{margin-top:.7rem;color:var(--muted);font-size:.8rem}.closing{text-align:center;padding:clamp(5rem,9vw,10rem) 1.4rem}.closing h2{max-width:850px;margin:1rem auto}.closing p{max-width:550px;margin:0 auto;color:var(--muted)}.page-head{padding:clamp(5rem,9vw,9rem) clamp(1.4rem,7vw,8rem) clamp(3rem,6vw,6rem);background:linear-gradient(130deg,#f9f6f0,#ebdec8);border-bottom:5px solid transparent;border-image:linear-gradient(90deg,#97703a,#dbc392,#97703a) 1}.page-head h1{max-width:980px;margin:1rem 0 1.5rem}.page-head p{font-size:1.18rem;max-width:720px;color:#554b40}.page-content{max-width:1240px;margin:auto;padding:clamp(4rem,7vw,7rem) clamp(1.4rem,5vw,5rem)}.lede{font:clamp(1.5rem,2.4vw,2.3rem)/1.45 Georgia,serif;max-width:930px;color:#554a3d;margin-bottom:4rem}.service-block{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,7rem);border-top:1px solid var(--line);padding:3rem 0}.service-block h2{font-size:clamp(2rem,3.6vw,3.7rem);margin:.3rem 0 1rem}.service-block p{color:var(--muted);font-size:1.07rem}.service-block ul{padding-left:1.3rem;color:var(--muted)}.service-block li{margin:.35rem 0}.service-block .meta{font-size:.78rem;letter-spacing:.11em;color:var(--gold);text-transform:uppercase}.service-block a{font-weight:600;text-decoration-color:var(--gold);text-underline-offset:.2em}.split-photo{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;margin:2rem 0 5rem}.split-photo img{width:100%;height:450px;object-fit:cover}.split-photo p{font:clamp(1.5rem,2.5vw,2.5rem)/1.35 Georgia,serif;padding:1rem}.band{background:#e8dcc8;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:3rem max(1.4rem,calc((100vw - 1100px)/2));font:clamp(1.4rem,2.4vw,2.4rem)/1.4 Georgia,serif}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,7vw,7rem)}.contact-layout h2{font-size:clamp(2.4rem,4vw,4rem)}.contact-layout p{color:var(--muted)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;padding:clamp(1.5rem,3vw,3rem);background:#f0e8db;border-top:3px solid var(--gold)}.field{display:flex;flex-direction:column;gap:.4rem}.field.full,.form-actions,.form-note{grid-column:1/-1}.field label{font-size:.86rem;font-weight:600}.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);padding:.75rem .8rem;background:#fffdf9;border:1px solid #bbad99;border-radius:0;min-height:48px}.field textarea{min-height:130px;resize:vertical}.check{display:flex;align-items:flex-start;gap:.65rem;font-size:.86rem}.check input{margin-top:.33rem;accent-color:var(--gold)}.form-actions{display:flex;flex-wrap:wrap;gap:.8rem}.btn{font:600 .83rem Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:1rem 1.2rem;border:1px solid var(--gold);background:var(--gold);color:#fff;cursor:pointer}.btn.secondary{background:transparent;color:var(--ink)}.form-note{font-size:.82rem;color:var(--muted);margin:0}.status{grid-column:1/-1;color:#614823;font-weight:600}.footer{border-top:1px solid var(--line);padding:2rem clamp(1.4rem,5vw,6rem);display:flex;justify-content:space-between;gap:2rem;color:var(--muted);font-size:.78rem}.footer strong{font:1.3rem Georgia,serif;color:var(--ink)}@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:center}.hero,.story,.events,.section-intro,.dark-section,.contact-layout,.split-photo{grid-template-columns:1fr}.hero-art{min-height:440px}.hero-copy{padding:5rem 6vw}.event-lines{grid-template-columns:1fr 1fr}.story img{min-height:400px;height:430px}.work-row{grid-template-columns:1fr 1fr}.work-row figure:first-child{grid-column:1/-1}.work-row img{height:280px}}@media(max-width:620px){.site-header{gap:.8rem;padding:1rem 1.2rem}.site-header nav{gap:.85rem;overflow:auto;justify-content:flex-start}.site-header nav a,.header-cta{font-size:.7rem;white-space:nowrap}.hero h1{font-size:3.65rem}.hero-copy{padding:4rem 1.4rem}.hero-art{min-height:380px}.section-intro{gap:1rem}.wrap{padding:4.5rem 1.4rem}.brand-relief,.feature-link img{height:310px}.event-lines{grid-template-columns:1fr;margin-top:3rem;gap:1rem}.dark-section{padding:4rem 1.4rem}.dark-section blockquote{font-size:2.5rem}.story-text{padding:4rem 1.4rem}.work-row img{height:220px}.work-row figure:first-child img{height:290px}.service-block{grid-template-columns:1fr;gap:.5rem}.page-content{padding:4rem 1.4rem}.contact-form{grid-template-columns:1fr}.field.full,.form-actions,.form-note{grid-column:1}.footer{display:block}.footer p{margin:.6rem 0}}

.brand-relief{height:370px;background:transparent;border:0}.brand-relief:after{display:none}.brand-relief img{height:88%;filter:drop-shadow(2px 3px 2px rgba(119,83,35,.2))}
/* Revisión editorial de portada y nuevas páginas */
.hero-art{background:#e9dfcf;min-height:680px}.hero-art:before,.hero-art:after,.hero-art .subtle{display:none}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:48% 48%;mix-blend-mode:normal;filter:none}.hero-copy{background:linear-gradient(135deg,#faf7f1 68%,#f0e5d1)}.section-intro h2{max-width:760px}.feature-link .brand-relief img{height:90%;width:auto;object-fit:contain}.event-lines .link{margin-top:.3rem;font-size:.72rem}.work-row a{text-decoration:none}.work-row figcaption{display:flex;justify-content:space-between;gap:.5rem;font-size:.84rem}.work-row figcaption span{color:#815c30;text-decoration:underline;text-underline-offset:.2em}.story img{object-position:52% 24%}.editorial-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:0 0 3rem}.editorial-pair img{width:100%;height:360px;object-fit:cover}.about-layout{display:grid;grid-template-columns:1fr 1fr;background:#eee7dc}.about-layout img{width:100%;height:100%;min-height:650px;object-fit:cover;object-position:50% 50%}.about-layout>div{padding:clamp(3rem,7vw,8rem);align-self:center}.about-layout p{max-width:540px;color:var(--muted);font-size:1.08rem}.about-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}.about-steps>div{border-top:2px solid var(--gold);padding-top:1.5rem}.about-steps p{color:var(--muted)}.route-note{padding:1rem 5vw;background:#eadbbf;margin:0}.route-note a{color:#68471f}.service-block{scroll-margin-top:2rem}
@media(max-width:900px){.hero-art{min-height:560px;height:70vw}.hero-art img{object-position:50% 45%}.about-layout{grid-template-columns:1fr}.about-layout img{min-height:480px;height:70vw}.about-steps{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.site-header{grid-template-columns:1fr auto}.site-header nav{gap:1.2rem;justify-content:flex-start}.site-header nav a{font-size:.73rem}.header-cta{font-size:.7rem}.hero-art{min-height:430px;height:115vw}.hero-art img{object-position:48% 40%}.feature-link .brand-relief img{height:85%}.editorial-pair{grid-template-columns:1fr}.editorial-pair img{height:290px}.about-layout img{height:105vw;min-height:430px}.about-steps{grid-template-columns:1fr}.work-row figcaption{display:block}.work-row figcaption span{display:block}}
#events-title{font-size:clamp(2.55rem,4vw,4.5rem);max-width:770px}.brand-relief{background:linear-gradient(135deg,#ece2d2,#f8f4ed 55%,#e7d7bf);height:370px}.brand-relief span{font:clamp(5rem,11vw,11rem)/.85 Georgia,serif;letter-spacing:.045em;color:#a27944;text-shadow:1px 1px 0 #eedfc5,2px 3px 1px #6a4a27,5px 7px 9px rgba(73,50,28,.24);text-align:center}.brand-relief small{display:block;font:600 clamp(.68rem,1.3vw,1.1rem)/1.2 Arial,sans-serif;letter-spacing:.38em;margin-top:1.3rem;color:#8a6331;text-shadow:0 1px #f9f0de,1px 2px 2px rgba(69,42,16,.3)}
@media(max-width:620px){.brand-relief{height:310px}.brand-relief span{font-size:clamp(5rem,20vw,7.5rem)}.brand-relief small{font-size:.7rem;letter-spacing:.28em}}
.about-layout img{object-position:55% 34%}
@media(max-width:620px){.about-layout img{object-position:56% 25%}}
.decoration-section{padding:5rem 0 2rem;border-top:1px solid var(--line)}.decoration-section h2{max-width:850px;margin:1rem 0 1.5rem}.decoration-section>p{max-width:780px;color:var(--muted);font-size:1.07rem}.decoration-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0 2rem;margin:3rem 0}.decoration-list span{border-top:1px solid var(--gold);padding:1.1rem 0 1.7rem;font:clamp(1.4rem,2.3vw,2rem)/1.2 Georgia,serif;color:#5c472d}.wedding-only[hidden]{display:none!important}
@media(max-width:620px){.decoration-list{grid-template-columns:1fr 1fr;gap:0 1rem}.decoration-list span{font-size:1.35rem}}
.wedding-opener{margin:0 0 4rem}.wedding-opener img{width:100%;height:clamp(390px,55vw,740px);object-fit:cover;object-position:center 48%}.wedding-opener figcaption{margin:.8rem 0 0;color:#805e34;font:italic 1rem Georgia,serif}.wedding-story{padding:5.5rem 0 4.5rem;border-top:1px solid var(--line)}.wedding-story-intro{display:grid;grid-template-columns:.55fr 1.45fr;gap:1rem 3rem;margin-bottom:2.7rem}.wedding-story-intro h2{grid-column:2;max-width:760px;margin:0}.wedding-story-intro p{grid-column:2;max-width:680px;color:var(--muted);font-size:1.1rem}.wedding-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:1.4rem 1.8rem}.wedding-gallery figure{margin:0}.wedding-gallery img{width:100%;height:360px;object-fit:cover}.wedding-gallery-main{grid-row:span 2}.wedding-gallery-main img{height:calc(720px + 1.4rem)}.wedding-gallery figcaption{padding:.7rem 0;color:#665c50;font-size:.84rem}.wedding-gallery-main img{object-position:50% 50%}
@media(max-width:900px){.wedding-story-intro{grid-template-columns:1fr}.wedding-story-intro h2,.wedding-story-intro p{grid-column:1}.wedding-gallery img{height:260px}.wedding-gallery-main img{height:calc(520px + 1.4rem)}}
@media(max-width:620px){.wedding-opener{margin-bottom:3rem}.wedding-opener img{height:440px;object-position:44% 50%}.wedding-story{padding:4rem 0 3rem}.wedding-gallery{grid-template-columns:1fr 1fr;gap:1rem}.wedding-gallery-main{grid-column:1/-1;grid-row:auto}.wedding-gallery-main img{height:340px}.wedding-gallery img{height:210px}.wedding-gallery figcaption{font-size:.75rem;line-height:1.35}}

/* Logo corporativo en cabecera y portada. */
.site-header .mark{display:block;width:112px;line-height:0}
.site-header .mark img{width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}
.feature-link .brand-relief img{width:min(90%,340px);height:auto;max-height:calc(100% - 1.5rem);object-fit:contain;mix-blend-mode:multiply;filter:none}
@media(max-width:620px){.site-header .mark{width:76px}.feature-link .brand-relief img{width:min(88%,280px);height:auto}}
