
:root{color-scheme:dark;--bg:#101010;--ink:#f4f2ed;--muted:#aaa9a4;--line:#363636}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #fff;outline-offset:6px}::selection{background:#ddd;color:#111}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.top{position:sticky;top:0;z-index:10;background:#101010f5;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px}.brand{font-size:25px;font-weight:900;letter-spacing:-1.5px;white-space:nowrap}.brand span{color:#8b8b8b}.brand small{display:block;font-size:9px;line-height:1.5;letter-spacing:1px;font-weight:400;text-transform:uppercase}.links{display:flex;gap:26px;font-size:13px}.links a:hover{color:#aaa}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;border:1px solid var(--ink);padding:13px 21px;font-size:13px;font-weight:700;line-height:1.4;border-radius:3px;transition:background .2s,color .2s}.button.white{background:var(--ink);color:#111}.button:hover{background:#ccc;color:#111;border-color:#ccc}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:11px;font-weight:700;color:#bbb}.hero{display:grid;grid-template-columns:1.2fr 1fr;min-height:650px;border-bottom:1px solid var(--line)}.hero-copy{padding:76px 45px 60px 0;align-self:center}.hero h1{font-size:clamp(56px,6.5vw,94px);line-height:.98;letter-spacing:-5px;margin:28px 0}.hero h1 em{font-style:normal;color:#a7a7a2}.hero p{max-width:430px;color:#bbb;margin:26px 0 32px;font-size:17px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-photo{position:relative;overflow:hidden;min-height:550px;background:#292929}.hero-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 63%;filter:contrast(1.2);opacity:.88}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000c,transparent 70%)}.photo-caption{position:absolute;z-index:1;bottom:30px;left:30px;right:30px;display:flex;justify-content:space-between;border-top:1px solid #ffffff66;padding-top:16px;font-size:11px;letter-spacing:2px}.ticker{border-bottom:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#aaa;text-transform:uppercase;letter-spacing:2px;font-size:11px}.section{padding:88px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:end;margin-bottom:40px}.section h2{font-size:clamp(32px,4vw,54px);line-height:1.08;letter-spacing:-2px;font-weight:600;margin:17px 0 0}.section-head p{color:var(--muted);max-width:490px;margin:0}.goals{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.goal{padding:36px}.goal+.goal{border-left:1px solid var(--line)}.number{font-size:12px;color:#aaa;letter-spacing:2px}.goal h3{font-size:27px;letter-spacing:-.8px;margin:38px 0 12px}.goal p{color:#aaa;max-width:400px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.tags span{font-size:11px;border:1px solid #4c4c4c;padding:6px 10px}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.step{border-top:1px solid #777;padding-top:19px}.step h3{font-size:23px;margin:24px 0 12px}.step p{color:#aaa;font-size:14px}.tools{margin-top:40px;padding:26px 30px;background:#1b1b1b;display:grid;grid-template-columns:1fr 1.6fr;gap:35px;border-left:2px solid #ddd}.tools h3{font-size:20px;margin:8px 0}.tools p{margin:6px 0;font-size:14px;color:#aaa}.tools strong{color:#eee}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{padding:30px;border:1px solid #444;display:flex;flex-direction:column}.plan.featured{background:#e8e7e2;color:#111;border-color:#e8e7e2}.plan .eyebrow{color:#aaa}.plan.featured .eyebrow{color:#555}.plan h3{font-size:32px;letter-spacing:-1px;margin:14px 0}.plan>p{color:#aaa;font-size:14px;min-height:48px}.plan.featured>p{color:#555}.plan ul{list-style:none;padding:12px 0 20px;margin:0;flex:1}.plan li{padding:10px 0;border-top:1px solid #444;font-size:13px;line-height:1.5}.plan.featured li{border-color:#b8b8b2}.plan.featured .button{border-color:#111;background:#111;color:#fff}.plan small{font-size:11px;display:block;margin-top:14px}.about{display:grid;grid-template-columns:.9fr 1.2fr;gap:70px}.about-name{font-size:clamp(48px,5vw,70px);font-weight:700;line-height:1;letter-spacing:-3px;margin:25px 0}.about p{color:#aaa}.about-intro{font-size:20px!important;color:#eee!important;max-width:480px}.experience{padding:25px 0;margin-top:32px;border-top:1px solid var(--line)}.experience p{margin:10px 0;font-size:14px}.courses{padding:0;list-style:none}.courses li{border-bottom:1px solid var(--line);padding:16px 0;font-size:14px}.courses small{display:block;color:#aaa;margin-top:4px}.values{margin-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.values strong{font-size:12px;letter-spacing:1px;text-transform:uppercase}.contact{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;align-items:center;padding:80px 0}.contact h2{font-size:clamp(40px,5vw,68px);line-height:1.04;letter-spacing:-3px;margin:16px 0 24px}.contact p{color:#aaa;max-width:490px}.contact-links{display:flex;flex-direction:column;gap:14px;align-items:stretch}.contact-links>a{padding:24px;border:1px solid #555;display:flex;justify-content:space-between;gap:16px}.contact-links a strong{font-size:20px;letter-spacing:-.5px}.contact-links a small{display:block;color:#aaa;font-size:11px}.contact-links>a:hover{background:#222}.copy{background:transparent;color:#aaa;border:0;padding:5px;text-align:left;font-size:12px}.footer{padding:25px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;color:#aaa;font-size:11px}.mobile-nav{display:none}.skip{position:absolute;top:-100px;left:10px;padding:10px;background:white;color:black;z-index:20}.skip:focus{top:10px}
@media(max-width:950px){.links{gap:16px}.hero{min-height:570px;grid-template-columns:1.2fr 1fr}.hero-copy{padding-right:25px}.hero h1{letter-spacing:-3px}.hero-photo{min-height:500px}.plans{gap:10px}.plan{padding:23px}.about{gap:40px}.plan>p{min-height:70px}}
@media(max-width:730px){.wrap{width:calc(100% - 36px)}.nav{min-height:72px;gap:12px;flex-wrap:wrap;padding:14px 0}.nav>.links{display:none}.nav>.button{margin-left:auto;font-size:11px;padding:10px 12px}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;font-size:12px}.mobile-nav .links{position:absolute;left:0;right:0;top:72px;display:flex;flex-direction:column;padding:20px;background:#171717;border-bottom:1px solid #444}.hero{grid-template-columns:1fr}.hero-copy{padding:46px 0 42px}.hero h1{font-size:62px;max-width:450px;letter-spacing:-3px}.hero p{font-size:16px}.hero-photo{min-height:330px}.hero-photo img{object-position:center 65%}.ticker{font-size:9px;letter-spacing:1px;gap:15px}.section{padding:56px 0}.section-head{grid-template-columns:1fr;gap:22px}.section h2{font-size:38px;letter-spacing:-1.5px}.goals,.plans,.about,.contact{grid-template-columns:1fr}.goal{padding:25px}.goal+.goal{border-left:0;border-top:1px solid #444}.goal h3{margin-top:20px}.process{grid-template-columns:1fr;gap:24px}.step h3{margin-top:14px}.tools{grid-template-columns:1fr;gap:10px;padding:23px}.plans{gap:18px}.plan{padding:27px}.plan>p{min-height:0}.about{gap:20px}.contact{padding:55px 0;gap:25px}.contact h2{font-size:49px}.footer{align-items:flex-start;flex-direction:column;gap:8px}.about-name{font-size:55px}.photo-caption{left:20px;right:20px;bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Identidad PF Benja · Negro, carbón cristal, blanco y rojo */
:root{--bg:#101113;--ink:#fff;--muted:#d2d3d7;--line:#ffffff24;--accent:#B83D45;--glass:linear-gradient(135deg,#33363be0,#202226cc)}
body{font-size:18px;line-height:1.75;background:radial-gradient(ellipse at 8% 20%,#B83D450a,transparent 42%),#101113}
.top{background:#101113df;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.brand span,.hero h1 em{color:var(--accent)}
.brand small{color:#d2d3d7;font-size:10px;letter-spacing:1.4px}
.links{font-size:14px;gap:24px}.links a:hover{color:white;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:8px}
.button{font-size:14px;min-height:48px;border-radius:7px;border-color:#ffffff66;padding:14px 22px;transition:background .2s,transform .2s}
.button.white,.plan.featured .button{background:var(--accent);color:white;border-color:var(--accent)}
.button:hover,.plan.featured .button:hover{background:#943039;border-color:#943039;color:white;transform:translateY(-2px)}
.hero{gap:32px;padding:32px 0 0;min-height:690px}.hero-copy{padding-top:55px}.hero h1{font-size:clamp(62px,6.5vw,94px);line-height:1.04}
.hero p{color:var(--muted);font-size:19px;line-height:1.8;max-width:465px}.hero-photo{border-radius:14px 14px 0 0;border:1px solid var(--line)}
.hero-photo img{filter:contrast(1.08);opacity:.92}.photo-caption{font-size:11px;line-height:1.7}
.eyebrow,.number{color:#e5a1a6;font-size:12px;line-height:1.8}.ticker{color:#d2d3d7;padding:26px 0;letter-spacing:1.8px}
.section{padding:96px 0}.section-head{margin-bottom:44px}.section-head p,.goal p,.step p,.tools p,.plan>p,.about p,.contact p{color:var(--muted);font-size:17px;line-height:1.85}
.section h2{line-height:1.16}.goals{border:0;gap:20px}.goal,.plan,.tools{background:var(--glass);backdrop-filter:blur(16px);border:1px solid #ffffff2b;border-radius:12px;box-shadow:inset 0 1px 0 #ffffff12,0 14px 40px #0000001a}
.goal+.goal{border-left:1px solid #ffffff2b}.goal{padding:36px}.goal h3{font-size:29px}.tags span{font-size:12px;color:#f2f2f4;border-color:#ffffff35;border-radius:5px}
.step{border-color:var(--accent)}.step h3{font-size:26px}.tools{border-left:3px solid var(--accent);padding:30px}.tools strong{color:white}
.plans{gap:20px}.plan{padding:30px}.plan h3{font-size:36px;line-height:1.3}.plan>p{min-height:96px}.plan .eyebrow,.plan.featured .eyebrow{color:#e5a1a6}.plan li{font-size:16px;line-height:1.75;padding:13px 0;border-color:#ffffff24}
.plan.featured{color:white;background:linear-gradient(145deg,#42292ee0,#26262bdd);border-color:var(--accent);box-shadow:inset 0 2px 0 var(--accent),0 16px 50px #0003}.plan.featured>p{color:var(--muted)}.plan.featured li{border-color:#ffffff24}
.plan .button{font-size:13px;padding:14px 12px}.about-intro{font-size:22px!important;color:white!important}.about{gap:64px}.about-name{line-height:1.08!important}.values strong{color:#e5a1a6;font-size:13px}.experience p,.courses li{font-size:17px;line-height:1.8}.courses small{font-size:14px;color:#d2d3d7}
.contact-links>a{background:var(--glass);border:1px solid #ffffff35;border-radius:10px;transition:border-color .2s}.contact-links>a:hover{background:#303237;border-color:var(--accent)}.contact-links a small{color:#d2d3d7;font-size:12px}.contact-links a>span{color:#e5a1a6}.copy{color:#e5a1a6;font-size:14px;min-height:44px}.footer{color:#d2d3d7;font-size:12px}.contact h2{line-height:1.13}::selection{background:var(--accent);color:white}
@media(max-width:950px){.plans{gap:12px}.plan{padding:23px}.plan>p{min-height:126px}.hero{gap:20px}.hero-copy{padding-right:10px}.links{gap:14px}}
@media(max-width:730px){.wrap{width:calc(100% - 36px)}.hero{gap:0;padding-top:0;min-height:0}.hero-copy{padding:44px 0}.hero h1{font-size:clamp(48px,12vw,66px);letter-spacing:-2.7px}.hero p{font-size:18px}.hero-photo{min-height:360px;border-radius:12px}.nav>.button{font-size:12px}.mobile-nav .links{background:#202226f5;top:100%;border-bottom:1px solid var(--line);font-size:16px;padding:24px}.section{padding:64px 0}.section h2{font-size:36px;line-height:1.2}.goals{gap:16px}.goal+.goal{border:1px solid #ffffff2b}.plan>p{min-height:0}.plans{gap:20px}.plan{padding:28px}.about{gap:32px}.photo-caption{font-size:10px;letter-spacing:1px}.ticker{font-size:10px;letter-spacing:1px}.contact h2{font-size:46px}.contact-links a strong{font-size:19px}.footer{padding-bottom:32px}}
@media(max-width:730px){html{scroll-padding-top:165px}}

/* Contacto en portada */
.hero{grid-template-columns:1.15fr 1fr;gap:48px;align-items:center;padding:48px 0;min-height:660px}.hero-copy{padding:32px 0}.hero h1{font-size:clamp(54px,5.6vw,82px);letter-spacing:-3.5px;line-height:1.08}.hero-contact{display:block;padding:36px;background:var(--glass);border:1px solid #ffffff2b;border-top:3px solid var(--accent);border-radius:14px;box-shadow:inset 0 1px 0 #ffffff12,0 20px 60px #0003;scroll-margin-top:20px}.hero-contact h2{font-size:42px;letter-spacing:-1.8px;margin:14px 0 20px}.hero-contact p{font-size:17px;margin:0 0 24px;line-height:1.8}.hero-contact .contact-links{gap:12px}.hero-contact .contact-links>a{padding:18px;background:#10111355}.hero-contact .contact-links a strong{font-size:21px}.hero-contact .contact-links>a:first-child{border-color:var(--accent)}.hero-contact .copy{padding:6px 0}.hero-contact #mensaje{color:#d2d3d7!important}
@media(max-width:950px){.hero{gap:28px}.hero-contact{padding:26px}.hero-contact h2{font-size:36px}.hero h1{font-size:58px}}
@media(max-width:730px){.hero{grid-template-columns:1fr;gap:6px;padding:12px 0 32px;min-height:0}.hero-copy{padding:32px 0}.hero h1{font-size:clamp(44px,11.6vw,66px);letter-spacing:-2.5px}.hero-contact{padding:26px 22px;margin:0 0 8px}.hero-contact h2{font-size:36px}.hero-contact .contact-links a strong{font-size:19px}.hero-contact{scroll-margin-top:10px}}
