:root{font-family:DM Sans,Arial,sans-serif;color:#201b18;background:#fff;--orange:#b84215;--wash:#fff3ec;--line:#eee5df} @font-face{font-family:DM Sans;src:url(dm-sans.woff2) format("woff2");font-weight:400 700;font-display:swap}
*{box-sizing:border-box}body{margin:0}a{color:inherit}header{position:sticky;top:0;z-index:2;background:#fffffff2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}nav,main,footer{width:min(1060px, calc(100% - 36px));margin:auto}nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700}.brand img{width:36px;border-radius:12px}.button,button{display:inline-block;border:0;border-radius:100px;padding:12px 20px;background:var(--orange);color:#fff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.secondary{background:#f4efeb;color:#241a15}.hero{text-align:center;padding:clamp(56px,10vw,110px) 0 48px}.badge{display:inline-block;border-radius:100px;background:var(--wash);color:#943511;padding:7px 14px;font-size:.86rem;font-weight:700}h1{font-size:clamp(2.7rem,7vw,4.7rem);line-height:1.04;letter-spacing:-.055em;margin:20px 0}h1 span{color:var(--orange)}p{line-height:1.55;color:#5e514a}.hero p{max-width:580px;margin:0 auto 24px}.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.feature{background:radial-gradient(ellipse at 85% 90%,#c54f18,transparent 65%),#20120e;color:#fff;border-radius:30px;padding:clamp(24px,6vw,52px);display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap}.feature p{color:#ffe2d5;margin:4px 0}.price{font-size:clamp(1.9rem,5vw,3rem);font-weight:700}.feature h2{margin:0}.section{padding:45px 0;scroll-margin-top:70px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:12px}.card,form,.request{border:1px solid var(--line);border-radius:24px;padding:22px;background:#fff}.icon{display:grid;place-items:center;width:44px;height:44px;background:var(--wash);color:var(--orange);border-radius:50%;font-weight:700}.card h3{margin-bottom:4px}.card p{margin:0}form{max-width:620px;display:grid;gap:14px}label{display:grid;gap:5px;font-weight:600}input,textarea,select{font:inherit;border:1px solid #a89991;border-radius:12px;padding:10px;background:#fff;width:100%;color:inherit}textarea{min-height:110px}.notice{background:var(--wash);padding:12px 16px;border-radius:12px;max-width:620px}.request{margin-bottom:10px;overflow-wrap:anywhere}.request p{white-space:pre-wrap}.request form{border:0;padding:0;display:block}.topline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.topline form{border:0;padding:0}.stat{font-size:1.6rem;font-weight:700}footer{padding:26px 0;border-top:1px solid var(--line);color:#5e514a}.trap{position:absolute;left:-9999px}.hero{animation:rise .6s both}@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.hero{animation:none}}:focus-visible{outline:3px solid #ed763e;outline-offset:4px}

/* Public website — editorial service gallery */
.public-site{background:radial-gradient(ellipse at 0 10%,#e9edf0,transparent 60%),radial-gradient(ellipse at 100% 45%,#e4e2df,transparent 65%),#f0f1f1;padding:32px 0}
.public-site header{position:relative;background:#fff;border:0;border-radius:30px 30px 0 0;width:min(1180px,calc(100% - 40px));margin:auto;padding:0 42px}
.public-site main{width:min(1180px,calc(100% - 40px));background:#fff;border-radius:0 0 30px 30px;overflow:hidden}
.public-site nav{width:100%;min-height:85px}.public-site .brand{font-size:15px;letter-spacing:-.03em}.public-site .brand img{width:30px;height:30px}
.nav-links{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600}.nav-links>a{text-decoration:none}.nav-links .button{padding:10px 16px}
.hero-fan{padding:54px 22px 58px;background:radial-gradient(ellipse at 50% 60%,#fcfaf8,transparent 65%),#fff}
.hero-eyebrow{font-size:11px;color:#635e59;display:inline-flex;align-items:center;gap:7px}.hero-eyebrow i{width:6px;height:6px;border-radius:50%;background:#de581d}
.hero-fan h1{font-size:clamp(2.2rem,4.8vw,3.6rem);line-height:1.04;font-weight:500;letter-spacing:-.06em;margin:18px 0 6px}.hero-fan h1 span{color:#201b18}
.fan-stage{position:relative;max-width:930px;margin:0 auto;height:300px;display:flex;align-items:center;justify-content:center}
.fan-cards{display:flex;align-items:center;justify-content:center;padding:28px 30px 6px;width:100%}
.service-art{position:relative;flex:0 0 152px;height:202px;margin-left:-40px;border-radius:14px;background-image:url(services-art.png);background-size:700% auto;background-position:calc(var(--index)*100%/6) center;box-shadow:0 22px 23px -15px #30251c70;transform:translateY(var(--offset)) rotate(var(--angle));transition:transform .25s ease,box-shadow .25s ease;text-align:left;color:white;text-decoration:none;isolation:isolate;z-index:1}
.service-art:first-child{margin-left:0}.service-art:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(#0005,transparent 35%,#000b);z-index:-1}
.service-art:hover,.service-art:focus-visible{transform:translateY(-18px) rotate(0);box-shadow:0 25px 30px -12px #30251c80;z-index:10}
.art-number{position:absolute;top:12px;left:12px;font-size:9px;font-weight:600;letter-spacing:.06em}.art-title{position:absolute;bottom:12px;left:12px;right:9px;line-height:1.08;font-weight:700;font-size:18px;text-shadow:0 1px 4px #0007}.art-title span{display:block;font-size:9px;font-weight:400;letter-spacing:.03em;margin-top:6px}
.floating-label{position:absolute;font-size:12px;color:#fff;border-radius:100px;padding:7px 12px;z-index:2;pointer-events:none}.label-left{left:16%;top:18px;transform:rotate(-9deg);background:#e75d20}.label-right{right:11%;top:28px;transform:rotate(9deg);background:#312a25}
.hero-fan p{font-size:13px;line-height:1.5;color:#514b46;max-width:510px;margin:10px auto 20px}.hero-fan .button{background:#201b18;font-size:11px;padding:12px 19px;font-weight:500}.hero-fan .secondary{background:#f3f2f0;color:#201b18}.hero-footnote{display:block;font-size:10px;color:#766e67;margin-top:16px}
.public-site .section{padding:48px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em}.section-heading h2{font-size:30px;letter-spacing:-.045em;font-weight:500;margin:10px 0 0}.section-heading p{font-size:13px;max-width:270px;margin:0}
.service-detail{scroll-margin-top:24px;background:#faf9f7;border:1px solid #eeeae5;transition:background .2s}.service-detail:target{background:#fff0e5;border-color:#df6630}.service-detail h3{font-size:16px}.service-detail p{font-size:13px}.text-link{display:block;font-size:11px;margin-top:24px;text-decoration:none;font-weight:700;color:#a53c10}
.public-site .feature{margin:12px 48px 0;background:#fbede4;color:#201b18;border:1px solid #f5d9c5}.public-site .feature p{color:#685144;font-size:13px}.public-site .feature h2{margin-top:10px;letter-spacing:-.04em}.public-site .feature .button{background:#201b18;color:#fff;margin-top:12px;font-size:12px}.public-site footer{border:0;text-align:center;font-size:11px;padding:25px}.public-site #contacto form{max-width:none;grid-template-columns:1fr 1fr}.public-site #contacto form label:has(textarea),.public-site #contacto form button,.public-site #contacto form .trap{grid-column:1/-1}.public-site #contacto h2{letter-spacing:-.04em;font-size:30px;font-weight:500}
@media(max-width:800px){.public-site{padding:14px 0}.public-site header{padding:0 20px}.public-site nav{min-height:65px}.nav-links{gap:12px}.nav-links>a:not(.button){display:none}.public-site header,.public-site main{width:calc(100% - 24px)}.hero-fan{padding:35px 12px}.fan-stage{height:250px;max-width:650px}.service-art{flex-basis:114px;height:174px;margin-left:-34px;border-radius:11px}.art-title{font-size:14px}.art-number{font-size:7px}.floating-label{font-size:10px}.label-left{left:8%;top:12px}.label-right{right:6%;top:20px}.public-site .section{padding:30px 22px}.public-site .feature{margin:10px 22px}.section-heading{display:block}.section-heading p{margin-top:12px}}
@media(max-width:540px){.hero-fan h1{font-size:clamp(27px,7.3vw,38px)}.fan-stage{height:215px;margin-left:-8px;margin-right:-8px}.fan-cards{padding:30px 8px 10px}.service-art{flex-basis:clamp(60px,18vw,96px);height:146px;margin-left:clamp(-35px,-6vw,-18px);border-radius:8px;--offset:0px!important}.art-number{left:6px;top:8px;font-size:6px}.art-title{left:6px;bottom:9px;right:4px;font-size:11px}.art-title span{font-size:7px}.floating-label{font-size:9px;padding:5px 9px}.hero-fan p br{display:none}.hero-fan .actions{gap:7px}.hero-fan .button{font-size:10px;padding:11px 14px}.public-site #contacto form{grid-template-columns:1fr}.public-site .brand{font-size:13px}.nav-links .button{font-size:10px;padding:9px 12px}}
@media(prefers-reduced-motion:reduce){.service-art{transition:none}}

@media(max-width:540px){
    .fan-stage{overflow-x:auto;overflow-y:hidden;height:235px;margin:0 -12px;scrollbar-width:thin;scrollbar-color:#c2b9b1 transparent;justify-content:flex-start}
    .fan-cards{width:max-content;min-width:100%;justify-content:flex-start;padding:38px 22px 24px}
    .service-art{flex-basis:116px;height:160px;margin-left:-15px;--angle:0deg!important}
    .art-title{font-size:15px;left:10px;right:10px;bottom:12px}
    .art-number{font-size:8px;left:10px}
    .art-title span{font-size:8px}
    .label-left{position:sticky;display:none}
    .label-right{display:none}
}

