:root{--wine:#631a3d;--wine-dark:#43102c;--rose:#f0dfdf;--gold:#d6ac72;--cream:#f8f5ee;--ink:#25212a;--muted:#716d72;--line:#e7e0dc;--white:#fff;--sans:'DM Sans',sans-serif;--display:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans)}a{text-decoration:none;color:inherit}button,input{font:inherit}button,a,input{outline-offset:4px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #c89a55}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:absolute;left:8px;top:-100px;padding:10px;background:white;z-index:20}.skip-link:focus{top:8px}.notice-bar{background:var(--wine-dark);color:#f9e9dc;text-align:center;font-size:12px;letter-spacing:.06em;padding:10px 16px}.notice-dot{display:inline-block;width:7px;height:7px;background:var(--gold);border-radius:50%;margin-right:8px}.site-header{background:#fff;position:relative;z-index:2;border-bottom:1px solid #f0e9e7}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{width:200px;max-height:64px;object-fit:contain}.main-nav{display:flex;align-items:center;gap:34px;font-weight:700;font-size:14px}.main-nav>a:not(.nav-button){color:#585159}.main-nav>a:hover,.text-link:hover{color:var(--wine)}.nav-button,.primary-link{background:var(--wine);color:white!important;padding:16px 23px;border-radius:9px;display:inline-flex;align-items:center;gap:19px;transition:transform .2s,background .2s}.nav-button:hover,.primary-link:hover{transform:translateY(-2px);background:var(--wine-dark)}.mobile-nav-button{display:none}.hero{background:var(--wine);color:#fff;position:relative;overflow:hidden}.hero-arc{position:absolute;width:650px;height:650px;border:1px solid #ffffff12;border-radius:50%;right:-250px;top:-230px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:560px;gap:28px;padding:70px 0 40px}.hero-copy{position:relative;z-index:1}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.22em;font-weight:800;color:#e2c5ad}.eyebrow-line{height:2px;width:29px;background:var(--gold);display:inline-block}.hero h1{font:600 clamp(3.2rem,5.6vw,5.7rem)/1.14 var(--display);letter-spacing:-.045em;margin:21px 0 25px;max-width:660px}.hero h1 em,h2 em{color:var(--gold);font-weight:500}.hero-description{font-size:16px;line-height:1.85;color:#ebdce5;max-width:570px;margin-bottom:31px}.hero-search{background:white;border-radius:13px;padding:8px;display:flex;align-items:center;gap:10px;box-shadow:0 20px 50px #280e2444;max-width:620px}.hero-search svg{width:23px;height:23px;flex:none;color:#8b7681;margin-left:13px}.hero-search input{min-width:0;flex:1;border:0;outline:0;color:#36222f;padding:12px 0;font-size:14px}.hero-search input::placeholder{color:#8c8088}.hero-search button{border:0;border-radius:9px;background:var(--gold);color:#351c28;font-weight:800;cursor:pointer;padding:15px 21px;white-space:nowrap}.hero-search button:hover{background:#ecc48d}.hero-search button span{margin-left:9px}.popular-searches{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:23px;font-size:12px;color:#ddcbd3}.popular-searches a{padding:8px 13px;border:1px solid #ffffff57;border-radius:30px;color:#fff}.popular-searches a:hover{background:#ffffff26}.hero-art{height:470px;position:relative;isolation:isolate}.art-orbit{position:absolute;border:1px solid #ffffff21;border-radius:50%;left:50%;top:49%;transform:translate(-50%,-50%)}.orbit-one{width:365px;height:365px}.orbit-two{width:465px;height:465px;border-style:dashed}.art-center{width:262px;height:262px;position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);background:#fffbf4;border:16px solid #ffffff20;box-shadow:0 32px 90px #16091277;border-radius:50%;display:flex;align-items:center;justify-content:center}.art-center img{width:78%;height:78%;object-fit:contain}.floating-tile{position:absolute;z-index:1;display:flex;align-items:center;gap:12px;background:#fff;color:var(--ink);border-radius:12px;padding:13px 19px;box-shadow:0 15px 40px #1c081a57;font-size:14px;font-weight:800;min-width:207px}.floating-tile small{display:block;color:#928791;font-size:11px;font-weight:500;margin-top:4px}.tile-icon{font-size:27px;background:#f7f2eb;padding:10px;border-radius:9px}.tile-one{left:0;top:60px;transform:rotate(-6deg)}.tile-two{right:-8px;top:170px;transform:rotate(5deg)}.tile-three{left:55px;bottom:26px;transform:rotate(-3deg)}.art-spark{position:absolute;color:var(--gold);font-size:44px}.spark-one{right:39px;top:32px}.spark-two{left:7px;bottom:65px}.hero-bottom{display:flex;justify-content:space-between;padding:23px 0 30px;border-top:1px solid #ffffff38;font-size:11px;letter-spacing:.13em;color:#e9cddf}.hero-bottom a{font-weight:800;color:#f8e9d6}.section-spacing{padding:100px 0}.eyebrow-dark{color:var(--wine)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:38px}.section-heading h2,.how-copy h2,.bottom-cta h2{font:600 clamp(2.4rem,4vw,3.7rem)/1.2 var(--display);letter-spacing:-.035em;margin:17px 0 0}.section-heading h2 em,.how-copy h2 em{color:var(--wine)}.text-link{font-size:14px;font-weight:800;color:var(--wine);white-space:nowrap;padding-bottom:8px}.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.category-card{background:white;border:1px solid var(--line);min-height:208px;border-radius:14px;padding:25px;display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s,border-color .2s}.category-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px #38162315;border-color:#dfc1cf}.category-icon{font-size:32px;width:65px;height:65px;background:#f7ebeb;display:flex;align-items:center;justify-content:center;border-radius:14px;margin-bottom:18px}.category-card strong{font-size:19px;color:var(--wine)}.category-card>span:nth-of-type(2){color:var(--muted);font-size:13px;margin-top:7px}.category-card b{position:absolute;right:23px;top:25px;color:var(--wine);font-size:23px;font-weight:400}.how-section{background:#fff}.how-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:10%;align-items:center}.how-copy p{line-height:1.9;color:var(--muted);max-width:440px;margin:20px 0 29px}.steps{display:grid;gap:21px}.step{display:flex;align-items:start;gap:23px;border:1px solid var(--line);border-radius:13px;padding:25px 27px;background:#fcfaf7}.step-number{font:600 32px var(--display);color:var(--wine);line-height:1}.step h3{margin:0 0 8px;font-size:18px}.step p{color:var(--muted);font-size:13px;line-height:1.8;margin:0}.bottom-cta{background:var(--wine-dark);color:white;padding:75px 0}.bottom-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:28px}.bottom-cta h2{max-width:650px;margin:17px 0}.bottom-cta p{color:#edcedf;margin:0}.cta-white{display:inline-flex;align-items:center;gap:15px;border-radius:9px;padding:19px 26px;background:#fff;color:var(--wine-dark);font-weight:800;white-space:nowrap}.cta-white:hover{background:var(--gold)}.landing-footer{background:#fff;border-top:1px solid var(--line)}.footer-inner{padding:30px 0;display:flex;align-items:center;gap:30px;justify-content:space-between}.footer-inner img{width:120px}.footer-inner p{color:#85818a;font-size:12px}.footer-inner>div{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--wine);font-weight:700}
@media(max-width:950px){.hero-grid{grid-template-columns:1fr;min-height:unset;padding:75px 0 30px}.hero h1{max-width:750px}.hero-art{height:310px;max-width:550px;width:100%;margin:auto}.orbit-one{width:245px;height:245px}.orbit-two{width:320px;height:320px}.art-center{width:185px;height:185px}.tile-one{top:12px}.tile-two{top:105px}.tile-three{bottom:9px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.how-grid{gap:40px}}@media(max-width:670px){.shell{width:min(100% - 32px,1180px)}.header-inner{min-height:77px}.brand img{width:151px}.main-nav{display:none}.mobile-nav-button{display:block;font-weight:800;font-size:12px;background:var(--wine);padding:12px 14px;color:white;border-radius:8px}.notice-bar{font-size:10px}.hero-grid{padding:60px 0 20px}.hero h1{font-size:clamp(2.9rem,12vw,4.4rem)}.hero-description{font-size:14px}.hero-search{flex-wrap:wrap}.hero-search input{font-size:13px;min-width:120px}.hero-search button{width:100%}.hero-art{height:285px}.floating-tile{font-size:11px;padding:9px;min-width:155px}.floating-tile small{font-size:9px}.tile-icon{font-size:20px;padding:7px}.tile-one{left:0;top:5px}.tile-two{right:-5px;top:117px}.tile-three{left:8px;bottom:1px}.hero-bottom{gap:15px;align-items:center;font-size:9px}.section-spacing{padding:66px 0}.section-heading{align-items:start;flex-direction:column}.category-grid{grid-template-columns:1fr 1fr;gap:10px}.category-card{padding:17px;min-height:189px}.category-card strong{font-size:16px}.category-card>span:nth-of-type(2){font-size:11px}.category-icon{font-size:27px;width:53px;height:53px}.how-grid{grid-template-columns:1fr}.bottom-cta-inner{align-items:start;flex-direction:column}.footer-inner{align-items:start;flex-direction:column;gap:13px}.footer-inner p{margin:0}}@media(max-width:390px){.category-grid{grid-template-columns:1fr}.hero-art{height:245px}.orbit-two{width:240px;height:240px}.orbit-one{width:195px;height:195px}.art-center{width:155px;height:155px}.floating-tile{min-width:137px}.tile-three{bottom:-8px}.hero-bottom a{max-width:160px;text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Identidad de SOFyS y registro presencial. */
.values-section{background:linear-gradient(135deg,#f9f4ef 0%,#f8f3ef 63%,#f0e5e4 100%)}
.values-intro{max-width:730px;margin-bottom:37px}.values-intro h2,.register-lead h2{font:600 clamp(2.35rem,4vw,3.65rem)/1.2 var(--display);letter-spacing:-.035em;margin:17px 0}.values-intro h2 em,.register-lead h2 em{color:var(--wine)}.values-intro p,.register-lead>p{font-size:15px;line-height:1.85;color:var(--muted);max-width:650px}
.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.value-card{padding:39px 42px 42px;background:white;border:1px solid var(--line);border-radius:19px;box-shadow:0 15px 46px #42172e09;position:relative;overflow:hidden}.value-card.vision{background:var(--wine);border-color:var(--wine);color:white}.value-icon{height:63px;width:63px;border-radius:18px;display:grid;place-items:center;background:#f4e8ec;color:var(--wine);font-size:35px;margin-bottom:28px}.vision .value-icon{background:#ffffff22;color:#f0d7aa}.value-number{display:block;font-size:10px;font-weight:800;letter-spacing:.17em;color:#916b77}.vision .value-number{color:#f0c5da}.value-card h3{font:600 32px var(--display);margin:12px 0 15px}.value-card p{margin:0;line-height:1.95;color:#66616a;font-size:14px}.vision p{color:#ead9e4}
.register-section{background:#fff}.register-layout{display:grid;grid-template-columns:.87fr 1.13fr;gap:7%;align-items:start}.register-lead{position:sticky;top:30px}.register-place{display:flex;align-items:start;gap:17px;margin:26px 0;background:#faf4f6;border:1px solid #ebd8e0;border-radius:14px;padding:23px}.register-place>span{font-size:29px;color:var(--wine);line-height:1}.register-place strong{font-size:15px;color:var(--wine)}.register-place p{font-size:13px;color:#665863;line-height:1.8;margin:7px 0 0}.register-steps{border-left:2px solid #e4cbd5;padding:4px 0 0 29px}.register-step{display:flex;gap:21px;align-items:start;position:relative;padding:18px 0 26px}.register-step>span{display:grid;place-items:center;flex:none;width:49px;height:49px;border-radius:12px;background:var(--wine);color:white;font-size:15px;font-weight:800;box-shadow:0 9px 20px #631a3d28}.register-step h3{font-size:17px;margin:1px 0 9px;color:var(--wine)}.register-step p{font-size:13px;line-height:1.85;color:var(--muted);margin:0}.register-note{font-size:12px;line-height:1.7;background:#faf6ee;color:#665448;border-left:3px solid var(--gold);padding:14px 17px;border-radius:5px;margin:2px 0 0}
@media(max-width:980px){.register-layout{grid-template-columns:1fr;gap:36px}.register-lead{position:static}.main-nav{gap:17px;font-size:12px}.values-grid{gap:15px}}@media(max-width:670px){.values-grid{grid-template-columns:1fr}.value-card{padding:27px}.register-steps{padding-left:14px}.register-step{gap:13px}.register-step>span{height:43px;width:43px}.register-place{padding:17px}.values-intro h2,.register-lead h2{font-size:2.45rem}}
