
/* Arcilla Viva — diseño editorial mediterráneo: teja, pino y papel; composición asimétrica, cálida y de revista. */

:root { --ink:#18362e; --clay:#bf4e32; --clay-dark:#9e3823; --paper:#f7f2e9; --cream:#eee6d7; --sun:#e1b65d; --sage:#9faf7e; --line:rgba(24,54,46,.16); --serif:"DM Serif Display",Georgia,serif; --sans:"Manrope",Arial,sans-serif; --background:#f7f2e9; --foreground:#18362e; --primary:#bf4e32; --primary-foreground:#fff; --radius:.65rem; }
* { box-sizing:border-box; border-color:var(--line); }
html { scroll-behavior:smooth; }
body { margin:0; font-family:var(--sans); background:var(--paper); color:var(--ink); }
a { text-decoration:none; } button { font-family:inherit; cursor:pointer; } button:active,.button:active { transform:scale(.97); }
.shell-width { width:min(1180px,calc(100% - 48px)); margin:0 auto; }.eyebrow { display:inline-flex; font-size:10px; line-height:1; text-transform:uppercase; letter-spacing:.16em; font-weight:800; color:var(--clay); }
/* Cabecera fija y tira comercial no fija */
.sale-strip { background:var(--clay); color:#fff5eb; font-size:11px; letter-spacing:.01em; }.sale-strip__inner { min-height:35px; display:flex; align-items:center; justify-content:space-between; gap:20px; }.sale-strip strong { font-weight:800; }.sale-strip__link { color:#fff; display:inline-flex; align-items:center; gap:6px; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; font-weight:700; }
.main-header { position:sticky; top:0; z-index:40; background:rgba(247,242,233,.94); border-bottom:1px solid rgba(24,54,46,.12); backdrop-filter:blur(16px); }.header-inner { height:106px; display:flex; align-items:center; justify-content:space-between; gap:25px; }.brand { display:inline-flex; align-items:center; gap:10px; color:var(--ink); flex-shrink:0; }.brand-mark { width:59px; height:59px; object-fit:contain; }.brand-name { display:grid; font-family:var(--serif); font-size:30px; line-height:.8; letter-spacing:-.03em; }.brand-name em { font-style:normal; }.brand-name b { font-style:italic; font-weight:400; margin-left:18px; }.desktop-nav { display:flex; align-items:center; gap:19px; }.nav-item { color:var(--ink); font-size:11px; font-weight:700; white-space:nowrap; position:relative; }.nav-item:after { position:absolute; bottom:-9px; left:0; content:""; height:2px; width:0; background:var(--clay); transition:width .18s cubic-bezier(.23,1,.32,1); }.nav-item:hover:after,.nav-item.is-active:after { width:100%; }.header-actions { display:flex; gap:9px; align-items:center; }.search-link,.menu-toggle { display:grid; place-items:center; width:36px; height:36px; color:var(--ink); background:transparent; border:0; border-radius:50%; transition:background .18s ease,transform .18s ease; }.search-link:hover,.menu-toggle:hover { background:var(--cream); }.menu-toggle { display:none; }.mobile-menu { background:var(--paper); border-top:1px solid var(--line); }.mobile-menu__inner { display:grid; padding:20px 0; }.mobile-nav-item,.mobile-sale { padding:13px 0; color:var(--ink); font-weight:700; border-bottom:1px solid var(--line); font-size:14px; }.mobile-sale { color:var(--clay); display:flex; align-items:center; gap:7px; }
/* Portada */
.home-hero { min-height:580px; color:white; position:relative; overflow:hidden; }.hero-image { position:absolute; inset:0; background:url('../images/totana-hero-sierra.webp') center/cover no-repeat; }.hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(17,39,33,.79) 0%,rgba(17,39,33,.48) 45%,rgba(17,39,33,.08) 75%),linear-gradient(0deg,rgba(17,39,33,.4),transparent 45%); }.hero-content { position:relative; z-index:1; padding-top:130px; }.hero-kicker { color:#fff6e6; text-transform:uppercase; font-size:11px; font-weight:800; letter-spacing:.15em; display:flex; align-items:center; gap:9px; }.hero-kicker i { width:8px; height:8px; border-radius:50%; background:var(--sun); }.home-hero h1 { max-width:680px; margin:18px 0; font:66px/.93 var(--serif); letter-spacing:-.045em; }.home-hero h1 em { color:#f9dd9b; }.home-hero p { max-width:420px; font-size:16px; line-height:1.65; color:#f9f2e5; }.hero-actions { display:flex; gap:24px; align-items:center; margin-top:30px; }.button { min-height:45px; padding:0 18px; display:inline-flex; align-items:center; justify-content:center; gap:10px; font-size:12px; font-weight:800; transition:transform .18s cubic-bezier(.23,1,.32,1),background .18s ease; }.button:hover { transform:translateY(-2px); }.button--clay { background:var(--clay); color:white; }.button--clay:hover { background:var(--clay-dark); }.button--ink { background:var(--ink); color:white; }.button--full { width:100%; }.text-link { color:var(--ink); font-size:12px; font-weight:800; display:inline-flex; gap:9px; align-items:center; }.text-link--light { color:white; }.hero-note { position:absolute; z-index:1; bottom:20px; right:max(24px,calc((100% - 1180px)/2)); display:flex; gap:18px; color:rgba(255,255,255,.8); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }.hero-note span+span { border-left:1px solid rgba(255,255,255,.6); padding-left:18px; }
.agenda-ribbon { display:grid; grid-template-columns:1.05fr 2fr; background:#fffaf0; margin-top:-48px; z-index:4; position:relative; box-shadow:0 22px 55px rgba(52,43,22,.13); }.ribbon-intro { padding:34px; background:var(--cream); display:flex; flex-direction:column; align-items:flex-start; }.ribbon-intro h2 { font:31px/1.05 var(--serif); letter-spacing:-.035em; margin:10px 0 18px; }.ribbon-intro a { font-size:12px; color:var(--clay); font-weight:800; display:inline-flex; gap:7px; align-items:center; }.ribbon-events { display:grid; grid-template-columns:repeat(3,1fr); }.ribbon-event { padding:28px 18px; border-right:1px solid var(--line); color:var(--ink); display:flex; gap:13px; transition:background .18s ease; }.ribbon-event:hover { background:#fff; }.date-chip { width:40px; min-width:40px; height:44px; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1; border-radius:50% 50% 45% 45%; }.date-chip b { font:22px/.8 var(--serif); }.date-chip span { font-size:8px; font-weight:800; letter-spacing:.1em; margin-top:5px; }.date-chip--clay { background:#f1c3b6; color:#8e301e; }.date-chip--sage { background:#dce4c7; color:#53623a; }.date-chip--sun { background:#f4dc9f; color:#765516; }.ribbon-event small { color:var(--clay); font-size:9px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }.ribbon-event h3 { font-size:12px; line-height:1.25; margin:5px 0 7px; font-weight:800; }.ribbon-event p { display:flex; align-items:center; gap:3px; font-size:9px; color:#53635e; line-height:1.2; }
.editorial-section,.places-section,.plans-collection,.routes-section,.living-guides,.guide-spots { padding:115px 0; }.section-heading { display:flex; justify-content:space-between; gap:40px; align-items:flex-end; margin-bottom:38px; }.section-heading h2 { margin:10px 0 0; font:42px/1 var(--serif); letter-spacing:-.045em; }.section-heading p { color:#50615c; line-height:1.65; font-size:14px; max-width:490px; margin:13px 0 0; }.round-link { border:1px solid var(--ink); color:var(--ink); border-radius:100px; padding:11px 16px; font-size:11px; display:inline-flex; gap:8px; align-items:center; font-weight:800; white-space:nowrap; transition:background .18s ease,color .18s ease; }.round-link:hover { background:var(--ink); color:white; }.story-layout { display:grid; grid-template-columns:1.28fr .72fr; gap:18px; }.story-feature { padding:40px; min-height:410px; background:var(--clay); color:white; display:flex; flex-direction:column; position:relative; overflow:hidden; transition:transform .25s cubic-bezier(.23,1,.32,1); }.story-feature:hover { transform:translateY(-5px); }.story-feature:after { content:""; position:absolute; height:270px; width:270px; right:-75px; bottom:-120px; border:1px solid rgba(255,255,255,.35); border-radius:50% 40% 70% 40%; }.story-feature__number { color:rgba(255,255,255,.55); font:20px var(--serif); }.story-feature .eyebrow { color:#ffdfc4; margin-top:auto; }.story-feature h3 { max-width:500px; font:45px/1.02 var(--serif); letter-spacing:-.04em; margin:13px 0; position:relative; z-index:1; }.story-feature p { max-width:380px; color:#ffece0; line-height:1.6; font-size:13px; position:relative; z-index:1; }.card-arrow { margin-top:20px; display:grid; width:37px; height:37px; place-items:center; background:white; color:var(--clay); border-radius:50%; z-index:1; }.story-stack { display:grid; gap:18px; }.story-small { position:relative; padding:25px 30px 23px 73px; min-height:196px; color:var(--ink); overflow:hidden; transition:transform .25s cubic-bezier(.23,1,.32,1); }.story-small:hover { transform:translateX(5px); }.story-small--pine { background:#b4c7b1; }.story-small--paper { background:#e9dfcb; }.story-small__index { position:absolute; top:27px; left:26px; color:rgba(24,54,46,.55); font:18px var(--serif); }.story-small h3 { font:27px/1.02 var(--serif); letter-spacing:-.035em; margin:10px 0; max-width:310px; }.story-small p { font-size:11px; line-height:1.55; max-width:330px; color:#3f5850; }.story-small__arrow { position:absolute; right:25px; bottom:23px; }
.landscape-callout { color:#fff; background:var(--ink); position:relative; overflow:hidden; }.landscape-callout:after { content:""; position:absolute; width:650px; height:650px; border:1px solid rgba(225,182,93,.27); border-radius:46% 55% 42% 60%; right:-230px; top:-190px; }.landscape-callout__grid { display:grid; grid-template-columns:1.4fr .6fr; min-height:430px; padding:86px 0; align-items:end; position:relative; z-index:1; }.landscape-callout .eyebrow { color:#eacb82; }.landscape-callout h2 { font:50px/1 var(--serif); letter-spacing:-.045em; margin:15px 0; }.landscape-callout p { max-width:540px; line-height:1.65; color:#d4e0d7; font-size:14px; margin-bottom:27px; }.landscape-quote { padding:25px; border-top:1px solid rgba(255,255,255,.35); color:#f2e8d5; }.landscape-quote p { font:25px/1.15 var(--serif); margin:16px 0 15px; }.landscape-quote span { text-transform:uppercase; letter-spacing:.12em; font-size:9px; color:#b7c9bd; }.places-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.place-card { min-height:340px; padding:26px; color:var(--ink); display:flex; flex-direction:column; transition:transform .22s cubic-bezier(.23,1,.32,1); }.place-card:hover { transform:translateY(-5px); }.place-card--stone { background:#e2dbce; }.place-card--forest { background:#a5c0af; }.place-card--clay { background:#e6b1a2; }.place-card__count { font:20px var(--serif); color:rgba(24,54,46,.55); }.place-card .eyebrow { color:var(--ink); opacity:.7; margin-top:auto; }.place-card h3 { font:31px/1.02 var(--serif); letter-spacing:-.04em; margin:10px 0; }.place-card p { font-size:12px; line-height:1.6; color:#3f514b; }.place-card__bottom { display:flex; justify-content:space-between; align-items:center; padding-top:20px; margin-top:auto; border-top:1px solid rgba(24,54,46,.23); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }.city-facts { background:#e8decf; }.city-facts__grid { padding:68px 0; display:grid; grid-template-columns:1fr 1fr .7fr; gap:50px; align-items:center; }.city-facts h2 { font:40px/1.03 var(--serif); letter-spacing:-.04em; margin:12px 0 0; }.facts-list { display:flex; gap:25px; }.facts-list div { display:grid; gap:7px; }.facts-list b { font:30px var(--serif); }.facts-list span { font-size:10px; color:#53625d; }.facts-cta { color:var(--ink); background:#f7f2e9; padding:20px; display:flex; gap:12px; align-items:center; font-size:11px; line-height:1.4; transition:transform .18s ease; }.facts-cta:hover { transform:translateY(-3px); }.facts-cta svg:last-child { margin-left:auto; }.collab-banner { padding:76px 0; display:flex; justify-content:space-between; align-items:center; gap:30px; }.collab-banner h2 { font:40px/1 var(--serif); letter-spacing:-.04em; margin:11px 0; }.collab-banner p { font-size:13px; color:#53625d; }
/* Cabeceras internas y agenda */
.page-intro { padding:90px 0 63px; background:var(--paper); position:relative; overflow:hidden; }.page-intro:after { position:absolute; content:""; width:400px; height:400px; border-radius:45% 60% 42% 65%; right:-150px; top:-200px; border:1px solid rgba(191,78,50,.22); }.page-intro__grid { display:grid; grid-template-columns:1.05fr .95fr; gap:70px; align-items:end; position:relative; z-index:1; }.page-intro h1 { font:67px/.95 var(--serif); letter-spacing:-.055em; margin:16px 0 0; }.page-intro__lead p { max-width:490px; font-size:17px; line-height:1.65; color:#3c544b; margin:0; }.guide-search { height:47px; margin-top:25px; max-width:480px; background:#fffaf2; border:1px solid var(--line); padding:0 14px; display:flex; align-items:center; gap:9px; font-size:11px; color:#66766f; }.guide-search kbd { margin-left:auto; font:10px var(--sans); padding:3px 5px; background:var(--cream); }.agenda-controls { padding:0 0 42px; display:flex; justify-content:space-between; gap:22px; align-items:center; }.date-tabs,.filter-pills { display:flex; gap:8px; flex-wrap:wrap; }.date-tabs button,.filter-pills button { padding:9px 13px; border:1px solid var(--line); background:transparent; color:var(--ink); font-size:10px; font-weight:800; border-radius:100px; }.date-tabs button.is-selected,.filter-pills button.is-active { background:var(--ink); color:#fff; border-color:var(--ink); }.agenda-page-grid { display:grid; grid-template-columns:1.25fr .55fr; gap:58px; padding-bottom:115px; }.agenda-page-grid .section-heading { margin-bottom:23px; }.agenda-list { border-top:1px solid var(--line); }.agenda-row { min-height:116px; border-bottom:1px solid var(--line); display:flex; gap:21px; align-items:center; padding:17px 0; }.agenda-row__main { flex:1; }.agenda-row h3 { font:23px/1.05 var(--serif); letter-spacing:-.03em; margin:7px 0; }.agenda-row p { color:#62716b; font-size:11px; display:flex; gap:5px; align-items:center; }.agenda-row__link { font-size:11px; color:var(--clay); font-weight:800; display:flex; gap:5px; align-items:center; white-space:nowrap; }.agenda-aside { align-self:start; background:var(--clay); color:#fff3e7; padding:31px; margin-top:78px; }.agenda-aside .eyebrow { color:#ffd3bc; }.agenda-aside h2 { font:34px/1.02 var(--serif); letter-spacing:-.04em; margin:12px 0; }.agenda-aside p { font-size:12px; line-height:1.6; }.agenda-aside div { display:flex; gap:9px; margin-top:28px; padding-top:17px; border-top:1px solid rgba(255,255,255,.35); font-size:10px; line-height:1.5; }.empty-agenda { padding:40px; text-align:center; }.empty-agenda button { background:none; border:0; color:var(--clay); font-size:12px; font-weight:800; }.agenda-after { margin-bottom:90px; padding:35px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; }.agenda-after h2 { font:31px var(--serif); letter-spacing:-.04em; margin:10px 0 0; }
/* Planes y guía local */
.plan-feature { background:#eadfce; display:grid; grid-template-columns:1fr .85fr; gap:50px; padding:65px; min-height:450px; }.plan-feature h2 { font:51px/.97 var(--serif); letter-spacing:-.05em; margin:14px 0; }.plan-feature h2 em { color:var(--clay); }.plan-feature p { font-size:13px; line-height:1.65; max-width:460px; color:#445950; }.plan-feature__meta { display:flex; gap:18px; flex-wrap:wrap; margin:26px 0; }.plan-feature__meta span { display:flex; gap:5px; align-items:center; font-size:10px; font-weight:700; }.plan-feature__map { align-self:center; justify-self:center; width:310px; height:310px; border-radius:52% 46% 58% 45%; border:1px dashed rgba(24,54,46,.5); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; position:relative; font-size:10px; font-weight:800; letter-spacing:.1em; }.plan-feature__map:after { content:""; position:absolute; inset:17px; border:1px solid rgba(191,78,50,.38); border-radius:42% 55% 44% 60%; }.plan-feature__map i { width:1px; height:17px; background:var(--clay); }.plan-feature__map small { font:12px var(--serif); letter-spacing:0; color:var(--clay); margin-top:10px; }.plan-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }.plan-card { padding:25px; min-height:315px; display:flex; flex-direction:column; }.plan-card--cream { background:#e8e0d2; }.plan-card--clay { background:#e2ad9e; }.plan-card--forest { background:#b1c6b1; }.plan-card--stone { background:#d3cec3; }.plan-card__no,.tastes-grid__no { font:19px var(--serif); color:rgba(24,54,46,.6); }.plan-card .eyebrow { margin-top:auto; color:var(--ink); opacity:.7; }.plan-card h3 { font:28px/1.05 var(--serif); letter-spacing:-.04em; margin:9px 0; }.plan-card p { font-size:11px; line-height:1.6; color:#43574f; }.plan-card>div { display:flex; justify-content:space-between; gap:7px; margin-top:auto; align-items:center; font-size:9px; color:#53645d; }.plan-card>div a { color:var(--ink); }.plan-cta { background:var(--clay); color:white; padding:92px 0; }.plan-cta .eyebrow { color:#ffd5bc; }.plan-cta h2 { font:54px/1 var(--serif); letter-spacing:-.05em; margin:16px 0; }.plan-cta p { color:#ffe5d3; font-size:14px; margin-bottom:25px; }
.guide-categories { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); margin-bottom:110px; }.guide-category { padding:28px 22px; min-height:190px; color:var(--ink); border-right:1px solid var(--line); position:relative; transition:background .18s ease; }.guide-category:last-child { border-right:0; }.guide-category:hover { background:#fffaf2; }.guide-category h3 { font:26px/1 var(--serif); letter-spacing:-.035em; margin:18px 0 9px; }.guide-category p { color:#576862; font-size:11px; line-height:1.5; }.guide-category>svg:last-child { position:absolute; right:22px; bottom:22px; }.spots-list { border-top:1px solid var(--line); }.spot-row { display:grid; grid-template-columns:70px 1fr .55fr; align-items:center; gap:25px; padding:25px 0; border-bottom:1px solid var(--line); }.spot-row__index { font:23px var(--serif); color:var(--clay); }.spot-row h3 { font:28px/1.05 var(--serif); letter-spacing:-.035em; margin:8px 0; }.spot-row p { font-size:12px; color:#576862; line-height:1.55; max-width:520px; }.spot-row__end { display:flex; justify-content:space-between; align-items:center; gap:15px; font-size:9px; text-transform:uppercase; color:var(--clay); letter-spacing:.07em; font-weight:800; }.spot-row__end a { color:var(--ink); }.directory-business { padding:55px; background:var(--ink); color:#fff9ed; margin-bottom:115px; display:flex; justify-content:space-between; align-items:center; gap:40px; }.directory-business .eyebrow { color:#ecc77d; }.directory-business h2 { font:42px/1 var(--serif); letter-spacing:-.04em; margin:12px 0; }.directory-business p { font-size:13px; color:#d2ded3; max-width:560px; }
/* Patrimonio, sabores, vivir */
.heritage-hero { display:grid; grid-template-columns:1.15fr .85fr; min-height:490px; }.heritage-hero__image { background:url('../images/totana-bastida.webp') center/cover no-repeat; }.heritage-hero__copy { padding:65px 50px; background:#dce4cb; }.heritage-hero__copy h2 { font:47px/1 var(--serif); letter-spacing:-.05em; margin:14px 0; }.heritage-hero__copy h2 em { color:var(--clay); }.heritage-hero__copy p { font-size:13px; line-height:1.7; color:#466054; margin-bottom:25px; }.routes-list { border-top:1px solid var(--line); }.route-row { display:grid; grid-template-columns:90px 1fr .5fr; gap:22px; padding:28px 0; align-items:center; border-bottom:1px solid var(--line); }.route-row>span { font:25px var(--serif); color:var(--clay); }.route-row h3 { font:30px/1.05 var(--serif); letter-spacing:-.04em; margin:0 0 8px; }.route-row p { font-size:12px; color:#50615b; line-height:1.6; max-width:520px; }.route-row>div:last-child { display:flex; gap:13px; align-items:center; justify-content:space-between; }.route-row>div:last-child p { font-size:10px; }.route-row a { color:var(--ink); }.territory-note { background:#a6bda9; }.territory-note__inner { min-height:200px; display:grid; grid-template-columns:auto 1fr .9fr auto; gap:28px; align-items:center; }.territory-note .eyebrow { color:#315a45; }.territory-note h2 { font:34px/1 var(--serif); letter-spacing:-.04em; margin:10px 0; }.territory-note p { font-size:12px; color:#345445; line-height:1.65; }
.crafts-feature { display:grid; grid-template-columns:.93fr 1.07fr; min-height:500px; }.crafts-feature__image { background:url('../images/totana-alfareria.webp') center/cover no-repeat; }.crafts-feature__copy { background:#e2b0a0; padding:70px 60px; }.crafts-feature__copy .eyebrow { color:#7b2d1e; }.crafts-feature__copy h2 { font:46px/1 var(--serif); letter-spacing:-.05em; margin:15px 0; }.crafts-feature__copy h2 em { color:#7b2d1e; }.crafts-feature__copy p { font-size:13px; line-height:1.7; color:#573b33; max-width:490px; margin-bottom:28px; }.tastes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }.tastes-grid article { padding:30px; min-height:260px; background:#efe7d9; }.tastes-grid article:nth-child(2) { background:#d8e0ca; }.tastes-grid article:nth-child(3) { background:#edc5a1; }.tastes-grid h3 { font:32px/1 var(--serif); letter-spacing:-.04em; margin:35px 0 17px; }.tastes-grid ul { list-style:none; padding:0; margin:0; display:grid; gap:10px; }.tastes-grid li { display:flex; align-items:start; gap:9px; font-size:11px; color:#435a50; }.tastes-grid li svg { margin-top:2px; color:var(--clay); flex-shrink:0; }.food-strip { background:var(--ink); color:#fff; }.food-strip__inner { display:grid; grid-template-columns:.82fr 1.18fr; min-height:400px; }.food-strip__copy { padding:64px 0; align-self:center; }.food-strip__copy>svg { color:#ecc777; }.food-strip .eyebrow { color:#ecc777; margin:17px 0 0; }.food-strip h2 { font:44px/1 var(--serif); letter-spacing:-.04em; margin:14px 0 27px; }.food-strip__image { margin-left:40px; background:url('../images/totana-sabores.webp') center/cover no-repeat; }
.living-intro { display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; padding:10px 0 115px; }.living-intro h2 { font:49px/1 var(--serif); letter-spacing:-.05em; margin:15px 0; max-width:600px; }.living-intro>div>p { max-width:530px; font-size:13px; line-height:1.7; color:#50615b; margin-bottom:27px; }.living-intro__card { padding:38px; background:#b6c5b1; min-height:310px; }.living-intro__card h3 { font:38px/.98 var(--serif); letter-spacing:-.04em; margin:27px 0 13px; }.living-intro__card p { font-size:12px!important; margin-bottom:28px!important; }.living-intro__card>div { border-top:1px solid rgba(24,54,46,.3); padding-top:17px; display:flex; gap:9px; font-size:10px; font-weight:800; align-items:center; }.living-guides__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }.living-guides__grid article { display:grid; grid-template-columns:44px 1fr auto; gap:10px; padding:25px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.living-guides__grid article>span { font:19px var(--serif); color:var(--clay); }.living-guides__grid small { font-size:9px; letter-spacing:.1em; text-transform:uppercase; color:var(--clay); font-weight:800; }.living-guides__grid h3 { font:27px/1.05 var(--serif); letter-spacing:-.03em; margin:10px 0; }.living-guides__grid p { font-size:11px; color:#52645d; line-height:1.6; }.living-guides__grid a { color:var(--ink); align-self:end; }.useful-list { margin-bottom:110px; padding:42px 0; display:grid; grid-template-columns:.8fr 1fr auto; gap:45px; align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.useful-list h2 { font:35px/1 var(--serif); letter-spacing:-.04em; margin:12px 0; }.useful-list ul { padding:0; margin:0; list-style:none; display:grid; gap:11px; }.useful-list li { display:flex; gap:9px; align-items:center; font-size:11px; color:#4a5f56; }.useful-list li svg { color:var(--clay); }
/* Página de venta y pie */
.sale-page { background:var(--ink); color:#fff8ed; padding:55px 0 100px; position:relative; overflow:hidden; }.sale-page:after { content:""; position:absolute; width:550px; height:550px; right:-160px; bottom:-270px; border:1px solid rgba(230,197,120,.35); border-radius:51% 42% 60% 45%; }.sale-page__top { display:flex; align-items:center; justify-content:space-between; margin-bottom:75px; position:relative; z-index:1; }.sale-page .eyebrow { color:#ecc777; }.back-link { color:#d6e0d1; font-size:11px; display:flex; gap:7px; align-items:center; }.sale-page__grid { display:grid; grid-template-columns:1.22fr .78fr; gap:90px; position:relative; z-index:1; }.sale-page h1 { font:69px/.93 var(--serif); letter-spacing:-.06em; margin:0 0 26px; max-width:660px; }.sale-page h1 em { color:#ecc777; }.sale-page__copy>p { max-width:620px; font-size:16px; line-height:1.7; color:#dae4d7; }.sale-points { margin:32px 0; display:grid; gap:11px; }.sale-points span { display:flex; gap:9px; align-items:center; color:#f8e9d2; font-size:12px; }.sale-points svg { color:#ecc777; }.sale-page__meta { display:grid; grid-template-columns:90px 1fr; gap:8px 18px; font-size:11px; padding-top:24px; border-top:1px solid rgba(255,255,255,.22); max-width:580px; }.sale-page__meta span { color:#bfcfc1; text-transform:uppercase; font-size:9px; letter-spacing:.09em; }.sale-page__meta a { color:#f6d283; }.contact-card { background:#f7f2e9; color:var(--ink); padding:33px; align-self:start; box-shadow:0 18px 50px rgba(0,0,0,.22); }.contact-card h2 { font:35px/1 var(--serif); letter-spacing:-.04em; margin:12px 0; }.contact-card p { font-size:12px; line-height:1.6; color:#52645d; margin-bottom:25px; }.plain-contact { padding:15px 0; display:flex; gap:8px; align-items:center; color:var(--clay); font-size:11px; font-weight:800; }.contact-card small { font-size:9px; color:#64746c; display:block; border-top:1px solid var(--line); padding-top:16px; }.sale-summary { padding:100px 0; display:grid; grid-template-columns:1fr 1fr; gap:90px; }.sale-summary h2 { font:45px/1 var(--serif); letter-spacing:-.05em; margin:15px 0; }.sale-summary p { font-size:15px; line-height:1.7; color:#52645d; margin:0 0 25px; max-width:470px; }
.site-footer { background:#102b24; color:#e7eee4; padding-top:70px; position:relative; overflow:hidden; }.footer-skyline { height:25px; position:absolute; top:0; left:0; right:0; background:var(--paper); clip-path:polygon(0 55%,5% 32%,11% 65%,18% 23%,25% 50%,32% 9%,39% 55%,48% 22%,56% 65%,65% 28%,73% 55%,82% 14%,91% 55%,100% 22%,100% 0,0 0); }.footer-grid { display:grid; grid-template-columns:1.3fr .7fr .75fr 1fr; gap:35px; padding:45px 0 55px; }.brand--footer { color:#fff9ec; }.footer-brand p { max-width:250px; font:18px/1.25 var(--serif); margin:18px 0; color:#c5d4c7; }.site-footer h3 { color:#ecd38c; font-size:10px; text-transform:uppercase; letter-spacing:.14em; margin:0 0 17px; }.site-footer a:not(.brand) { display:block; color:#d4ded4; font-size:11px; margin:0 0 11px; }.footer-news p { font-size:11px; line-height:1.55; color:#c4d1c6; }.footer-mail { border-bottom:1px solid #ecd38c; padding-bottom:9px; display:inline-flex!important; gap:7px; align-items:center; color:#f3d889!important; font-weight:800; }.footer-bottom { border-top:1px solid rgba(255,255,255,.18); min-height:55px; display:flex; align-items:center; justify-content:space-between; color:#a9bcae; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }.footer-bottom a { color:#efd590; }
.stamp { border:1px solid currentColor; padding:5px 7px 4px; line-height:1; transform:rotate(-1.2deg); box-shadow:2px 2px 0 rgba(191,78,50,.13); letter-spacing:.14em; }.date-chip { outline:1px solid rgba(191,78,50,.36); outline-offset:3px; transform:rotate(-2deg); box-shadow:2px 2px 0 rgba(191,78,50,.12); }.filter-pills button { border-radius:2px; border-style:dashed; color:var(--clay); background:#fff9f0; transform:rotate(-.6deg); }.filter-pills button:nth-child(2n) { transform:rotate(.7deg); }.filter-pills button.is-active { background:var(--clay); border-color:var(--clay); color:white; }.date-tabs button { border-radius:2px; }.plan-workshop-note { min-height:180px; margin:0 0 95px; padding:32px 8%; display:grid; grid-template-columns:.35fr 1.25fr .55fr; align-items:center; gap:30px; background:linear-gradient(100deg,#f2e8d7,#e8dbca); border-top:1px dashed rgba(191,78,50,.5); border-bottom:1px dashed rgba(191,78,50,.5); position:relative; overflow:hidden; }.plan-workshop-note:after { content:""; position:absolute; width:240px; height:240px; right:-80px; top:-75px; border:1px solid rgba(191,78,50,.25); border-radius:55% 45% 50% 48%; }.plan-workshop-note__stamp { color:var(--clay); text-transform:uppercase; font-size:9px; letter-spacing:.12em; border:2px solid var(--clay); padding:12px; transform:rotate(-4deg); max-width:112px; line-height:1.5; }.plan-workshop-note__stamp b { font-size:10px; }.plan-workshop-note p { font:31px/1.05 var(--serif); letter-spacing:-.035em; margin:0; }.plan-workshop-note>span { font-size:10px; text-transform:uppercase; color:#53645e; letter-spacing:.09em; }.guide-workshop-note { background:#e3ab9b; padding:48px; display:grid; grid-template-columns:.62fr 1fr; gap:55px; align-items:center; margin:-20px 0 75px; }.guide-workshop-note__map { height:220px; position:relative; border:1px dashed rgba(91,47,36,.55); overflow:hidden; }.guide-workshop-note__map:before,.guide-workshop-note__map:after { content:""; position:absolute; height:260px; width:260px; border:1px solid rgba(121,47,32,.55); border-radius:55% 38% 46% 60%; }.guide-workshop-note__map:before{left:-130px;top:-58px}.guide-workshop-note__map:after{right:-130px;bottom:-85px}.guide-workshop-note__map i { position:absolute; width:72%; height:1px; background:#9b3924; transform-origin:left; }.guide-workshop-note__map i:nth-child(1){top:40px;left:20px;transform:rotate(32deg)}.guide-workshop-note__map i:nth-child(2){top:112px;left:82px;transform:rotate(-35deg)}.guide-workshop-note__map i:nth-child(3){top:176px;left:27px;transform:rotate(13deg)}.guide-workshop-note__map b { position:absolute; font-size:9px; letter-spacing:.12em; color:#7f2f20; }.guide-workshop-note__map b:nth-of-type(1){top:18px;right:25px}.guide-workshop-note__map b:nth-of-type(2){top:100px;left:20px}.guide-workshop-note__map b:nth-of-type(3){bottom:19px;right:26px}.guide-workshop-note h2 { font:38px/1 var(--serif); letter-spacing:-.04em; margin:16px 0; }.guide-workshop-note p { max-width:500px; font-size:13px; line-height:1.7; color:#5c3730; }.living-paper-band { background:#e7ddcc; min-height:205px; display:flex; align-items:center; position:relative; overflow:hidden; }.living-paper-band:before { content:""; position:absolute; inset:11px 0; border-top:1px solid rgba(191,78,50,.28); border-bottom:1px solid rgba(191,78,50,.28); transform:rotate(-.5deg); }.living-paper-band>div { display:grid; grid-template-columns:.45fr 1.1fr .45fr; gap:40px; align-items:center; position:relative; }.living-paper-band p { font:31px/1.06 var(--serif); letter-spacing:-.035em; margin:0; }.living-paper-band__line { width:100%; height:1px; background:var(--clay); position:relative; }.living-paper-band__line:after { content:""; width:12px; height:12px; border-radius:50%; background:var(--clay); position:absolute; right:0; top:-5px; }
@media (max-width:1080px) { .desktop-nav{gap:12px}.nav-item{font-size:10px}.header-inner{gap:15px}.agenda-ribbon{grid-template-columns:1fr}.ribbon-events{grid-template-columns:repeat(3,1fr)}.agenda-page-grid{gap:35px}.page-intro h1{font-size:58px}.plan-cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1.2fr .8fr .8fr}.footer-news{grid-column:1/-1}.living-intro,.sale-page__grid{gap:45px} }
@media (max-width:760px) { .shell-width{width:min(100% - 32px,1180px)}.sale-strip__inner{justify-content:center;min-height:42px;text-align:center}.sale-strip__inner>span{display:none}.sale-strip__link{font-size:10px}.header-inner{height:88px}.brand-mark{width:51px;height:51px}.brand-name{font-size:27px}.desktop-nav,.search-link{display:none}.menu-toggle{display:grid}.home-hero{min-height:520px}.hero-content{padding-top:105px}.home-hero h1{font-size:48px}.hero-note{left:16px;right:auto}.agenda-ribbon{margin-top:-26px;width:calc(100% - 32px)}.ribbon-intro{padding:26px}.ribbon-events{grid-template-columns:1fr}.ribbon-event{padding:17px 22px;border-right:0;border-top:1px solid var(--line)}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:35px}.section-heading .round-link{margin-top:20px}.editorial-section,.places-section,.plans-collection,.routes-section,.living-guides,.guide-spots{padding:75px 0}.story-layout,.page-intro__grid,.agenda-page-grid,.plan-feature,.heritage-hero,.crafts-feature,.living-intro,.sale-page__grid,.sale-summary{grid-template-columns:1fr;gap:0}.story-feature{min-height:340px;padding:30px}.story-feature h3{font-size:38px}.story-small{min-height:180px}.landscape-callout__grid{grid-template-columns:1fr;gap:45px;padding:65px 0;min-height:0}.landscape-callout h2{font-size:40px}.places-grid,.tastes-grid,.living-guides__grid{grid-template-columns:1fr}.place-card{min-height:270px}.city-facts__grid{grid-template-columns:1fr;padding:55px 0;gap:25px}.facts-list{justify-content:space-between}.collab-banner{padding:55px 0;display:block}.collab-banner .button{margin-top:22px}.page-intro{padding:65px 0 45px}.page-intro h1{font-size:49px}.page-intro__lead{margin-top:23px}.page-intro__lead p{font-size:15px}.agenda-controls{display:block;padding-bottom:26px}.filter-pills{margin-top:15px}.agenda-row{gap:14px}.agenda-row h3{font-size:21px}.agenda-row__link{display:none}.agenda-aside{margin-top:45px}.agenda-after{margin-bottom:60px;display:block}.agenda-after .button{margin-top:20px}.plan-feature{padding:36px 28px}.plan-feature h2{font-size:42px}.plan-feature__map{width:230px;height:230px;margin-top:30px}.plan-cards{grid-template-columns:1fr}.plan-workshop-note{margin:0 0 62px;padding:28px;grid-template-columns:1fr;gap:18px}.plan-workshop-note p{font-size:26px}.guide-categories{grid-template-columns:1fr 1fr;margin-bottom:65px}.guide-category:nth-child(2){border-right:0}.guide-category:nth-child(-n+2){border-bottom:1px solid var(--line)}.spot-row{grid-template-columns:36px 1fr;gap:12px}.spot-row__end{grid-column:2}.guide-workshop-note{grid-template-columns:1fr;padding:28px;gap:28px;margin:-25px 0 60px}.guide-workshop-note h2{font-size:34px}.directory-business{padding:34px;display:block;margin-bottom:75px}.directory-business h2{font-size:36px}.heritage-hero__image,.crafts-feature__image{min-height:330px}.heritage-hero__copy,.crafts-feature__copy{padding:42px 29px}.heritage-hero__copy h2,.crafts-feature__copy h2{font-size:39px}.route-row{grid-template-columns:40px 1fr;gap:10px}.route-row>div:last-child{grid-column:2}.territory-note__inner{grid-template-columns:auto 1fr;gap:16px;padding:42px 0}.territory-note p{grid-column:1/-1}.territory-note__inner>svg:last-child{display:none}.food-strip__inner{grid-template-columns:1fr}.food-strip__copy{padding:58px 0}.food-strip__image{min-height:250px;margin-left:0}.living-intro{padding-bottom:75px}.living-intro h2{font-size:41px}.living-intro__card{margin-top:35px}.living-paper-band>div{grid-template-columns:1fr;gap:18px;padding:39px 0}.living-paper-band p{font-size:27px}.living-paper-band__line{display:none}.useful-list{grid-template-columns:1fr;gap:25px;margin-bottom:75px}.sale-page{padding:40px 0 70px}.sale-page__top{margin-bottom:50px}.sale-page h1{font-size:48px}.contact-card{margin-top:45px}.sale-summary{padding:70px 0}.sale-summary h2{font-size:39px}.footer-grid{grid-template-columns:1fr 1fr;padding-bottom:35px}.footer-brand,.footer-news{grid-column:1/-1}.footer-bottom{display:grid;gap:8px;padding:16px 0;justify-content:start}.hero-actions{gap:17px}.home-hero p{font-size:14px} }
@media (prefers-reduced-motion:no-preference) { .story-feature,.story-small,.place-card,.plan-card,.guide-category{animation:fade-rise .45s cubic-bezier(.23,1,.32,1) both}@keyframes fade-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}} }
