:root{--green:#17372d;--cream:#f7f4ec;--gold:#b99a60;--ink:#273b31;--muted:#677066}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-1.5px}h1{font-size:clamp(42px,4.7vw,76px)}h2{font-size:clamp(34px,3.5vw,56px)}h3{font-size:27px;letter-spacing:-.6px}em{font-weight:400;color:#8a7044}p{color:var(--muted)}.announcement{background:var(--green);color:#dbd1b7;text-align:center;font-size:9px;letter-spacing:2.8px;padding:9px}header{height:99px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #d8d6cb;gap:30px}.brand{background:var(--green);padding:8px 15px}.brand img{width:185px;height:auto}nav{display:flex;gap:32px;font-size:12px}nav a:hover{color:#92713c}.header-cta{font-size:12px;border-bottom:1px solid var(--green);padding-bottom:7px}.header-cta span{margin-left:25px}.menu{display:none}.hero{display:grid;grid-template-columns:1.02fr 1fr;min-height:710px}.hero-copy{padding:76px 8% 30px 10%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:2.1px;color:#7e704f;margin-bottom:26px;font-weight:500}.eyebrow span{display:inline-block;width:22px;height:1px;background:var(--gold);vertical-align:middle;margin-right:9px}.intro{max-width:360px;margin:28px 0 32px;font-size:15px;line-height:1.85}.button{background:var(--green);color:var(--cream);border:1px solid var(--green);padding:16px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;font-size:12px;transition:background .2s}.button:hover{background:#305246}.text-link{font-size:12px;border-bottom:1px solid #bbb7a6;padding:7px 0;display:inline-flex;gap:38px;margin-top:16px}.hero-bottom{margin-top:auto;padding-top:40px;display:flex;justify-content:space-between;width:100%;font-size:8px;letter-spacing:1.1px;color:#848477;gap:15px}.hero-photo{position:relative;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:center 53%}.photo-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;color:white;padding:25px 28px;background:linear-gradient(transparent,#13221a80);font-size:8px;letter-spacing:1.4px}.ribbon{display:flex;justify-content:space-evenly;align-items:center;gap:20px;padding:25px 4%;border-block:1px solid #d8d6cb;font-size:11px;letter-spacing:1px}.ribbon i{color:var(--gold);font-size:20px;font-style:normal}.section{padding:100px 7%}.section-heading{text-align:center}.ingredients{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;gap:55px}.ingredients article{border-top:1px solid #c9c5b8;padding-top:20px}.number{color:#a58b5a;font:italic 21px Georgia}.ingredients h3{margin:25px 0 20px}.ingredients p{font-size:14px;max-width:330px}.story{display:grid;grid-template-columns:1fr 1fr;background:var(--green);color:var(--cream)}.landscape{position:relative;min-height:580px}.landscape img{position:absolute;height:100%;width:100%;object-fit:cover;object-position:45% center}.landscape span{position:absolute;bottom:32px;left:40px;font-size:10px;letter-spacing:2px;color:white}.story-copy{padding:75px 12%}.story-copy h2{font-size:45px;margin-bottom:28px}.story-copy p:not(.eyebrow){color:#c3cdc3;font-size:14px;margin-bottom:20px}.story-copy .eyebrow,.story-copy em{color:#c3ad7d}.light{border-color:#667363;color:#efecdf}.product{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.product-gallery>img{width:100%;height:630px;object-fit:cover;object-position:center;background:#ebe7dc}.gallery-controls{display:flex;gap:12px;margin-top:14px}.gallery-controls button{background:none;padding:10px 15px;border:1px solid #c7c5b8;color:var(--green);font-size:11px}.gallery-controls button.selected{border-color:var(--green);background:var(--green);color:var(--cream)}.product-copy>p:not(.eyebrow){margin-top:25px}.product-copy h2{font-size:49px}.product-meta{display:flex;flex-wrap:wrap;gap:8px 25px;border-block:1px solid #d9d6c9;padding:16px 0;margin-top:25px;font-size:11px}.price{font-size:22px;color:var(--green)}.price small{font-size:10px;margin-left:12px;color:#74786c}.product-copy label{font-size:11px;display:block;margin-top:25px}.order-line{display:flex;gap:12px;margin-top:8px}.quantity{display:flex;border:1px solid #c8c9bc;align-items:center}.quantity button{border:0;background:none;padding:10px;color:var(--green)}.quantity input{width:38px;appearance:textfield;-moz-appearance:textfield;border:0;background:none;text-align:center;color:var(--green)}input::-webkit-inner-spin-button{appearance:none}.order-line>.button{flex:1}.product-copy p.order-note{font-size:11px;line-height:1.6;margin:12px 0 27px}.product-copy details{border-top:1px solid #d5d3c6;padding:14px 0;font-size:12px}.product-copy details p{margin:12px 0}.product-copy details a{text-decoration:underline}summary{cursor:pointer}.invitation{text-align:center;background:#eae5d8;padding:80px 20px}.invitation h2{font-size:64px}.invitation p:not(.eyebrow){margin:25px 0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact>div>p{max-width:420px}.email{display:flex;justify-content:space-between;font-family:Georgia,serif;font-size:28px;letter-spacing:-.5px;border-bottom:1px solid #a9af9d;padding:20px 0;margin-bottom:14px}.small{font-size:11px}footer{background:var(--green);color:#e9e4d5;padding:45px 6% 20px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:40px}.footer-top p{color:#c4c9b9;font-family:Georgia,serif;font-size:21px;line-height:1.4}.footer-top>a:last-child{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #536052;padding-top:22px;font-size:9px;color:#b9c3b3}.footer-bottom>span:last-child{letter-spacing:1.5px}.skip{position:absolute;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:0}dialog{max-width:520px;width:calc(100% - 32px);border:1px solid #c4b28a;padding:45px;background:var(--cream);color:var(--green)}dialog::backdrop{background:#081e16b3}dialog h2{font-size:39px}dialog p{margin:20px 0}dialog .eyebrow{margin-top:0}dialog .button{width:100%;margin:6px 0}.close{position:absolute;right:15px;top:10px;font-size:28px;background:none;border:0;color:var(--green)}@media(min-width:1600px){.hero{min-height:850px}.hero-copy{padding-top:110px}}@media(max-width:1050px){nav{gap:18px}.header-cta{display:none}.hero-copy{padding:50px 8% 25px}.hero{min-height:660px}.hero h1{font-size:49px}.ingredients{gap:30px}.story-copy{padding:55px 10%}.story-copy h2{font-size:36px}.product{gap:5%}.product-copy h2{font-size:39px}.product-gallery>img{height:600px}.email{font-size:23px}}@media(max-width:700px){.announcement{font-size:8px;letter-spacing:1.7px}header{height:80px;padding:0 6%}.brand img{width:150px}.menu{display:block;border:0;background:none;font-size:23px;color:var(--green)}nav{display:none;position:absolute;top:113px;left:0;right:0;z-index:5;background:var(--cream);padding:25px;box-shadow:0 10px 15px #0001}nav.open{display:flex;flex-direction:column}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:44px 7% 27px}.hero h1{font-size:46px;line-height:1.08}.intro{font-size:14px;margin:22px 0}.eyebrow{font-size:9px;margin-bottom:22px}.hero-photo{height:480px}.hero-bottom{padding-top:30px}.hero-photo>img{object-position:center 56%}.photo-caption{padding:20px;font-size:7px}.ribbon{flex-wrap:wrap;gap:12px;font-size:9px;padding:22px 6%}.ribbon i{font-size:12px}.ribbon i:nth-of-type(2){display:none}.section{padding:65px 7%}.section-heading{text-align:left}h2{font-size:35px}.ingredients{grid-template-columns:1fr;gap:25px;margin-top:35px}.ingredients article{display:grid;grid-template-columns:35px 1fr;column-gap:12px}.ingredients h3{font-size:25px;margin:0 0 12px}.ingredients p{grid-column:2;max-width:none}.story{grid-template-columns:1fr}.landscape{min-height:330px}.story-copy{padding:50px 7%}.story-copy h2{font-size:36px}.product{grid-template-columns:1fr;gap:35px}.product-gallery>img{height:480px}.product-copy h2{font-size:39px}.invitation{padding:60px 7%}.invitation h2{font-size:49px}.contact{grid-template-columns:1fr;gap:32px}.email{font-size:24px}.footer-top{align-items:flex-start;flex-direction:column;gap:22px}.footer-top img{width:195px}.footer-bottom{flex-direction:column;gap:12px}.order-line>.button{padding:14px;gap:10px}dialog{padding:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Identidad de Leonoras: tipografías y composición de la web original. */
@font-face{font-family:Forum;src:url('assets/forum.woff2') format('woff2');font-display:swap}@font-face{font-family:Parisienne;src:url('assets/parisienne.woff2') format('woff2');font-display:swap}
:root{--green:#243d2b;--cream:#fffef9;--gold:#ae963f;--ink:#243d2b;--muted:#697164}h1,h2,h3{font-family:Forum,Georgia,serif;letter-spacing:-.6px}em{font-style:normal;color:#91802f}.announcement{display:flex;justify-content:space-between;padding:9px 6%;font-size:8px;background:#243d2b;letter-spacing:1.7px}.announcement a{font-size:10px;letter-spacing:1px;color:#e6d896}header{height:116px;padding:0 6%;border-bottom:1px solid #eeeade;background:#fffef9}.brand{background:none;padding:0}.brand img{width:270px;height:auto}nav{gap:35px;font-size:13px}nav a{padding:6px 0}nav a.active{border-bottom:1px solid var(--gold)}.header-cta{display:flex;align-items:center;gap:13px;border:0;padding:0;font-size:12px}.hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:640px;color:white;isolation:isolate;text-align:center;background:#304e3a}.hero-background{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 54%;z-index:-3}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#12271965,#162d2855),linear-gradient(0deg,#12241dc9,transparent 65%);z-index:-2}.hero-copy{padding:65px 20px 100px;align-items:center;width:100%;display:flex;flex-direction:column}.hero .eyebrow{color:#ece2bf;letter-spacing:4px;font-size:10px;margin:0 0 22px}.hero h1{font-size:clamp(80px,9vw,138px);line-height:.95;letter-spacing:1px}.hero-subtitle{font-family:Parisienne,Georgia,serif;font-size:clamp(32px,3.5vw,49px);color:#f1df9d;margin-top:12px;line-height:1.4}.hero .intro{color:#f1f1e9;font-size:14px;max-width:440px;line-height:1.85;margin:22px 0 30px}.hero-actions{display:flex;gap:30px;align-items:center}.hero .button{background:#f4ecd7;color:#263b2a;border-color:#f4ecd7;min-width:157px;font-size:13px}.hero .button:hover{background:white}.hero-foot{position:absolute;bottom:26px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.8px;color:#e8e7d6}.hero-foot a{font-size:10px;letter-spacing:.6px}.welcome{padding:70px 20px 15px;text-align:center;background:#fffef9}.ornament{font-size:33px;color:#a5944c;display:block;margin-bottom:16px}.welcome-quote{font-family:Forum,Georgia,serif;color:#33452c;font-size:38px;line-height:1.2}.welcome-quote em{font-family:Parisienne,Georgia,serif;font-size:47px;line-height:1.6;color:#99862f}.welcome>p:not(.welcome-quote){font-size:13px;line-height:1.9;margin:22px auto 30px;color:#757864}.gold-rule{width:65px;height:1px;background:#c8b56a;margin:0 auto}.section{padding:85px 8%}.essence{background:#fffef9}.ingredients{gap:55px;margin-top:45px}.ingredients h3{font-size:29px}.ingredients p{font-size:13px}.ingredients article{border-top-color:#e1dcc8}.number{font-family:Forum,Georgia,serif;font-style:normal;color:#9d8b46;font-size:21px}.story{background:#f2f1e8;color:#283d27}.story-copy{padding:70px 11%}.story-copy h2{font-size:45px}.story-copy p:not(.eyebrow){color:#69715f;line-height:1.9}.story-copy .eyebrow,.story-copy em{color:#96812e}.story-copy .light{color:#384b30;border-color:#b6b99f}.product-gallery>img{background:#f3f0e6;height:640px}.product-copy h2{font-size:53px}.button{font-size:12px;letter-spacing:.4px;padding:16px 27px}.product-copy>p:not(.eyebrow){font-size:14px}.product-copy p.price{font-size:18px}.price small{font-size:10px}.invitation{background:#f3f0e5;border-block:1px solid #e4dfce;padding:75px 20px}.invitation h2{font-family:Forum,Georgia,serif;font-size:58px}.invitation h2 em{font-family:Parisienne,Georgia,serif;font-size:64px}.invitation p{font-size:14px}.website-address{display:inline-block;font-family:Forum,Georgia,serif;color:#8d792e;font-size:25px;margin-top:17px}.footer-links{display:flex;flex-direction:column;gap:8px;font-size:12px}.footer-links a:first-child{font-family:Forum,Georgia,serif;font-size:23px;color:#ddcc92}.footer-top p{font-family:Forum,Georgia,serif}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:1600px){.hero{min-height:720px}.hero-copy{padding-top:80px}}
@media(max-width:1050px){header{gap:20px}.brand img{width:230px}nav{gap:22px}.header-cta{font-size:11px}.story-copy{padding:50px 9%}.story-copy h2{font-size:37px}.product-copy h2{font-size:44px}}
@media(max-width:700px){.announcement{justify-content:center;padding:9px 10px}.announcement>span{display:none}.announcement a{font-size:10px;letter-spacing:2px}header{height:90px;padding:0 6%;gap:18px}.brand img{width:205px}.header-cta{display:none}nav{top:125px;background:var(--cream)}.menu{font-size:24px}.hero{min-height:565px}.hero-copy{padding:55px 6% 90px}.hero h1{font-size:88px}.hero .eyebrow{font-size:9px;letter-spacing:2.5px}.hero-subtitle{font-size:37px}.hero .intro{font-size:13px;margin:23px 0 27px}.hero-actions{gap:20px}.hero .button{padding:14px 20px;min-width:132px}.hero-foot{justify-content:center;bottom:23px}.hero-foot>span{display:none}.hero-background{object-position:44% center}.welcome{padding:48px 7% 5px}.welcome-quote{font-size:30px}.welcome-quote em{font-size:39px}.welcome>p:not(.welcome-quote){font-size:12px}.section{padding:60px 7%}.ingredients{gap:28px}.ingredients h3{font-size:26px}.story-copy{padding:47px 7%}.story-copy h2{font-size:37px}.product-copy h2{font-size:43px}.product-gallery>img{height:470px}.invitation h2{font-size:45px}.invitation h2 em{font-size:50px}.contact .email{font-size:23px}.footer-links{gap:12px}}

.gift-section{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;padding:0;text-align:left;gap:0}.gift-photo img{width:100%;height:auto;display:block}.gift-copy{padding:45px 13%}.gift-copy h2{font-size:48px}.gift-copy h2 em{font-size:53px}.gift-copy p{font-size:13px}.gift-copy .eyebrow{font-size:9px;line-height:1.8}@media(max-width:1050px){.gift-copy{padding:35px 9%}.gift-copy h2{font-size:38px}.gift-copy h2 em{font-size:43px}}@media(max-width:700px){.gift-section{grid-template-columns:1fr}.gift-copy{padding:45px 7%;text-align:center}.gift-copy h2{font-size:43px}.gift-copy h2 em{font-size:48px}}

.hero-background{object-position:center 85%}.landscape img{object-position:90% center}@media(max-width:700px){.hero-background{object-position:90% center}.landscape img{object-position:90% center}}

/* Nuestro origen: fotografía original del Teatro Campoamor, sin recorte. */
.landscape-origin{background:#f0f2ef;display:flex;align-items:center;min-height:0;padding-bottom:65px}.landscape-origin img{position:static;width:100%;height:auto;object-fit:contain;object-position:center}.landscape-origin span{color:#384b30;left:7%;bottom:25px}@media(max-width:700px){.landscape-origin{min-height:0;padding-bottom:60px}}

/* Menú superior con mayor legibilidad en escritorio y móvil. */
header nav{font-size:15px;gap:30px}
@media(max-width:1050px){header nav{font-size:14px;gap:18px}}
@media(max-width:700px){header nav{font-size:15px;gap:18px}}

/* Indicación alimentaria destacada y legible. */
.gluten-badge{display:inline-flex;align-items:center;gap:8px;width:max-content;border:1px solid #ae963f;border-radius:999px;padding:7px 13px;color:#243d2b;font-size:11px;font-weight:700;letter-spacing:1.5px;line-height:1.2;background:#fffef9}.gluten-badge>span{color:#9b8435;font-size:16px}.gluten-badge-hero{margin:17px 0 0;background:#fffef9ee;box-shadow:0 2px 10px #12271924}.product-meta .gluten-badge{margin-left:auto}@media(max-width:700px){.gluten-badge{font-size:10px;padding:7px 11px}.gluten-badge-hero{margin-top:15px}.product-meta .gluten-badge{margin-left:0}}

/* Sello original sin gluten en la ficha del producto. */
.gluten-badge,.gluten-badge-hero{display:none!important}.gluten-mark{display:flex;align-items:center;justify-content:flex-start;margin:17px 0 4px}.gluten-mark img{width:112px;height:112px;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 2px 10px #243d2b12}
@media(max-width:700px){.gluten-mark{margin:15px 0 2px}.gluten-mark img{width:100px;height:100px}}

.phone{display:flex;justify-content:space-between;align-items:center;max-width:440px;font-family:Forum,Georgia,serif;font-size:25px;letter-spacing:-.4px;border-bottom:1px solid #a9af9d;padding:13px 0;margin-bottom:14px;color:#243d2b}.phone span{font-family:Arial,sans-serif;font-size:18px;color:#91802f}
@media(max-width:700px){.phone{font-size:23px}}

.phone-main{display:inline-flex;align-items:center;gap:10px}.phone-main svg{width:18px;height:18px;fill:currentColor;flex:none}.phone-arrow{font-family:Arial,sans-serif;font-size:18px;color:#91802f}
