:root{color-scheme:light;--paper:#fffaf8;--ink:#253b3a;--muted:#526564;--teal:#108592;--teal-dark:#075c64;--aqua:#41afb0;--mint:#dff2ef;--coral:#ef8983;--coral-soft:#f9c9c1;--pink:#fce4e0;--line:#dbe8e5;--white:#fff;--shadow:0 24px 70px rgba(31,73,72,.14);--font:Poppins,Arial,sans-serif;font-family:var(--font);color:var(--ink);background:var(--paper);scroll-behavior:smooth}
*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;min-width:320px;overflow-x:hidden}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}a{color:inherit}.container{width:min(1200px,calc(100% - 52px));margin-inline:auto}.skip-link{position:fixed;z-index:50;left:12px;top:12px;padding:12px 16px;transform:translateY(-160%);border-radius:8px;background:var(--ink);color:#fff}.skip-link:focus{transform:translateY(0)}.eyebrow{margin:0 0 16px;color:var(--teal);font-size:.7rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.section{padding:clamp(72px,9vw,128px) 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:38px}.section-heading h2,.section-heading h3{max-width:780px;margin:0;font-size:clamp(2.7rem,5.5vw,5.8rem);font-weight:500;line-height:.96;letter-spacing:-.075em}.section-heading>p{max-width:430px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.75}.header{position:sticky;z-index:30;top:0;border-bottom:1px solid rgba(31,73,72,.08);background:rgba(255,250,248,.9);backdrop-filter:blur(16px)}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand img{width:158px;height:auto}.nav-links{display:flex;align-items:center;gap:clamp(16px,2.7vw,34px)}.nav-links a:not(.button){font-size:.8rem;font-weight:600;text-decoration:none}.nav-links a:not(.button):hover{color:var(--teal)}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:0 23px;border:1px solid var(--teal);border-radius:999px;background:var(--teal);color:#fff;text-align:center;text-decoration:none;font-size:.85rem;font-weight:700;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.button:hover{transform:translateY(-3px);background:var(--teal-dark);box-shadow:0 12px 24px rgba(16,133,146,.2)}.button-light{border-color:rgba(16,133,146,.35);background:transparent;color:var(--teal)}.button-light:hover{color:#fff}.button-arrow{font-size:1.1rem;transition:transform .2s}.button:hover .button-arrow{transform:translateX(4px)}.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);font-size:1.2rem;cursor:pointer}
.hero{position:relative;isolation:isolate;min-height:min(760px,calc(100svh - 78px));display:grid;grid-template-columns:1fr .86fr;align-items:center;gap:clamp(24px,5vw,72px);padding-block:55px 64px}.hero:before{content:"";position:absolute;z-index:-1;top:0;right:-10vw;width:59vw;height:100%;border-radius:0 0 0 46%;background:radial-gradient(ellipse at 58% 40%,#c2e7e3 0%,#dff2ef 50%,#f4f7ee 100%)}.hero-copy{max-width:700px}.hero h1{max-width:760px;margin:0;font-size:clamp(3.6rem,7.3vw,7.7rem);font-weight:600;line-height:.88;letter-spacing:-.085em}.hero h1 span{color:var(--teal)}.hero-lede{max-width:555px;margin:25px 0 0;color:#405552;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.75}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.hero-trust{display:flex;align-items:center;gap:10px;margin:22px 0 0;color:#526564;font-size:.73rem}.trust-icon{display:grid;width:23px;height:23px;place-items:center;border-radius:50%;background:#ef898327;color:var(--teal);font-size:.8rem}.hero-art{position:relative;isolation:isolate;min-height:550px;display:grid;place-items:center}.hero-orbit{position:absolute;z-index:-1;width:86%;aspect-ratio:1;border:1px solid rgba(16,133,146,.19);border-radius:50%;box-shadow:0 0 0 34px rgba(16,133,146,.035),0 0 0 80px rgba(239,137,131,.055);animation:orbit 24s linear infinite}.hero-orbit:after{content:"";position:absolute;top:11%;left:13%;width:14px;height:14px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 9px rgba(239,137,131,.16)}.hero-image-wrap{position:relative;width:min(100%,470px);height:550px;display:grid;place-items:center;overflow:hidden;border-radius:45% 55% 53% 47%/42% 42% 58% 58%;background:linear-gradient(150deg,#fbe8e2 0%,#fffaf8 56%,#d5eeeb 100%);box-shadow:var(--shadow);transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0);transition:transform .25s ease-out}.hero-image{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(37,59,58,.14));transition:opacity .28s,transform .6s cubic-bezier(.2,.75,.25,1)}.hero-image.is-changing{opacity:.15;transform:scale(.97)}.hero-sticker{position:absolute;right:14px;bottom:22px;max-width:165px;padding:16px 18px;border:5px solid var(--paper);border-radius:18px 18px 18px 4px;background:var(--coral);box-shadow:var(--shadow);font-size:.73rem;font-weight:700;line-height:1.4;transform:rotate(3deg)}.hero-stage-label{position:absolute;left:14px;top:22px;padding:10px 14px;border:1px solid rgba(16,133,146,.12);border-radius:999px;background:var(--paper);box-shadow:0 8px 24px rgba(37,59,58,.08);font-size:.66rem;font-weight:700;letter-spacing:.04em}.audience-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.audience-picker-label{width:100%;margin:0 0 3px;color:#657674;font-size:.68rem;font-weight:600}.audience-chip{min-height:37px;padding:0 13px;border:1px solid rgba(16,133,146,.24);border-radius:999px;background:#ffffff8c;color:var(--ink);font-size:.72rem;font-weight:600;cursor:pointer;transition:background .18s,color .18s,transform .18s}.audience-chip:hover{transform:translateY(-2px)}.audience-chip[aria-pressed=true]{border-color:var(--teal);background:var(--teal);color:#fff}.image-note-hero{position:absolute;bottom:9px;right:12px;color:#566765;font-size:.61rem;text-align:right}
.trust-band{background:var(--teal-dark);color:#fff}.trust-band-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:16px}.trust-point{display:flex;align-items:center;gap:11px;font-size:.77rem;font-weight:600}.trust-point b{color:var(--coral-soft);font-size:1rem}
.ideas{background:var(--paper)}.idea-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.idea-card{position:relative;overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(37,59,58,.07);transition:transform .26s,box-shadow .26s}.idea-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.idea-art{height:300px;position:relative;overflow:hidden;display:grid;place-items:center;background:var(--mint)}.idea-card:nth-child(2) .idea-art{background:#fce4e0}.idea-card:nth-child(3) .idea-art{background:#e9eff9}.idea-card:nth-child(4) .idea-art{background:#fff1df}.idea-art img{width:100%;height:100%;object-fit:contain;transition:transform .55s cubic-bezier(.2,.75,.25,1)}.idea-card:hover .idea-art img{transform:scale(1.045)}.idea-tag{position:absolute;left:13px;top:13px;padding:8px 10px;border-radius:999px;background:rgba(255,250,248,.94);color:var(--ink);font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.idea-copy{padding:18px 19px 21px}.idea-copy h3{margin:0 0 7px;font-size:1.06rem;font-weight:650;letter-spacing:-.03em}.idea-copy p{margin:0;color:var(--muted);font-size:.76rem;line-height:1.58}
.creations{position:relative;overflow:hidden;background:var(--pink)}.creations:before{content:"";position:absolute;top:-170px;right:-140px;width:450px;height:450px;border:1px solid rgba(239,137,131,.3);border-radius:50%;box-shadow:0 0 0 36px rgba(239,137,131,.05),0 0 0 80px rgba(16,133,146,.035);pointer-events:none}.carousel-heading{position:relative}.carousel-tools{display:flex;align-items:center;gap:12px}.carousel-arrow{width:48px;height:48px;display:grid;place-items:center;border:1px solid rgba(16,133,146,.38);border-radius:50%;background:var(--paper);color:var(--teal);font-size:1.18rem;cursor:pointer;transition:transform .2s,background .2s,color .2s}.carousel-arrow:hover:not(:disabled){transform:translateY(-2px);background:var(--teal);color:#fff}.carousel-arrow:disabled{opacity:.42;cursor:default}.work-carousel{position:relative;display:grid;grid-auto-columns:calc((100% - 40px)/3);grid-auto-flow:column;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 22px}.work-carousel::-webkit-scrollbar{display:none}.work-card{min-width:0;overflow:hidden;scroll-snap-align:start;border:1px solid rgba(37,59,58,.07);border-radius:19px;background:#fff;box-shadow:0 10px 26px rgba(37,59,58,.08);transition:transform .26s,box-shadow .26s}.work-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.work-image-wrap{height:340px;position:relative;overflow:hidden;display:grid;place-items:center;background:#edf7f5}.work-card:nth-child(3n+2) .work-image-wrap{background:#fce9e5}.work-card:nth-child(3n) .work-image-wrap{background:#eef1f8}.work-image{width:100%;height:100%;object-fit:contain;transition:transform .5s}.work-card:hover .work-image{transform:scale(1.045)}.work-label{position:absolute;left:13px;top:13px;padding:8px 10px;border:1px solid #fff9;border-radius:999px;background:#fff;color:var(--teal-dark);font-size:.59rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.work-copy{padding:19px 20px 21px}.work-copy h3{margin:0 0 7px;font-size:1.15rem;font-weight:650;letter-spacing:-.035em}.work-copy p{margin:0;color:var(--muted);font-size:.77rem;line-height:1.6}.carousel-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#657674;font-size:.72rem}.carousel-progress{height:3px;flex:1;max-width:250px;overflow:hidden;border-radius:99px;background:#10859222}.carousel-progress span{display:block;width:var(--progress,14%);height:100%;border-radius:99px;background:var(--teal);transition:width .2s}.disclosure{margin:14px 0 0;color:#586865;font-size:.69rem;line-height:1.55}
.transformation{background:var(--paper)}.transformation-grid{display:grid;grid-template-columns:.84fr 1.16fr;align-items:center;gap:clamp(30px,6vw,82px)}.transformation-copy h2{margin:0;font-size:clamp(2.8rem,5.5vw,5.8rem);font-weight:500;line-height:.96;letter-spacing:-.075em}.transformation-copy>p:not(.eyebrow){max-width:480px;margin:24px 0 0;color:var(--muted);font-size:.96rem;line-height:1.75}.transformation-steps{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:13px}.transformation-card{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 38px rgba(37,59,58,.08)}.transformation-card img{width:100%;height:400px;object-fit:cover;object-position:center 59%}.transformation-card:nth-child(3) img{object-fit:cover;object-position:center 50%}.transformation-caption{padding:15px 16px 17px}.transformation-caption strong{display:block;margin-bottom:5px;font-size:.79rem}.transformation-caption span{display:block;color:#647371;font-size:.66rem;line-height:1.5}.transform-arrow{color:var(--coral);font-size:1.4rem}.transformation-note{margin:17px 0 0;color:#667573;font-size:.68rem;line-height:1.55}
.process{position:relative;overflow:hidden;background:var(--teal-dark);color:#fff}.process:after{content:"";position:absolute;right:-200px;bottom:-250px;width:550px;height:550px;border:1px solid #ffffff24;border-radius:50%;box-shadow:0 0 0 45px #ffffff08,0 0 0 94px #ffffff06;pointer-events:none}.process .eyebrow{color:var(--coral-soft)}.process .section-heading>p{color:#d7e9e7}.process-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.process-card{min-height:260px;padding:26px;border:1px solid #ffffff35;border-radius:17px;background:#ffffff0c;transition:transform .23s,background .23s}.process-card:hover{transform:translateY(-5px);background:#ffffff16}.step-number{width:44px;height:44px;display:grid;place-items:center;margin-bottom:38px;border-radius:50%;background:var(--coral);color:var(--ink);font-size:.74rem;font-weight:800}.process-card h3{margin:0 0 11px;font-size:1.35rem;font-weight:600;line-height:1.2}.process-card p{max-width:300px;margin:0;color:#d6e8e6;font-size:.84rem;line-height:1.68}.process-outcome{position:relative;z-index:1;display:flex;align-items:center;gap:12px;margin:25px 0 0;color:#e7f4f2;font-size:.77rem}.process-outcome span{color:var(--coral-soft);font-size:1.1rem}
.stories{background:#f9eeeb}.review-heading{display:flex;align-items:end;justify-content:space-between;gap:26px;margin-bottom:22px}.review-heading h2{max-width:760px;margin:0;font-size:clamp(2.8rem,5.5vw,5.6rem);font-weight:500;line-height:.96;letter-spacing:-.075em}.review-note{max-width:900px;margin:0 0 22px;padding:13px 17px;border-left:3px solid var(--coral);border-radius:0 10px 10px 0;background:#fff;color:#586563;font-size:.71rem;line-height:1.55}.review-carousel{display:grid;grid-auto-columns:calc((100% - 32px)/3);grid-auto-flow:column;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 2px 17px}.review-carousel::-webkit-scrollbar{display:none}.review-card{min-height:295px;display:flex;flex-direction:column;align-items:flex-start;padding:22px;border:1px solid rgba(16,133,146,.16);border-radius:17px;background:#fff;box-shadow:0 10px 26px rgba(37,59,58,.06);scroll-snap-align:start}.review-name{padding:7px 10px;border-radius:999px;background:var(--mint);color:var(--teal-dark);font-size:.65rem;font-weight:700}.review-mark{margin-top:21px;color:var(--coral);font-size:3rem;line-height:.55}.review-card blockquote{margin:14px 0 19px;color:#465956;font-size:.88rem;line-height:1.7}.review-card h3{margin:auto 0 4px;font-size:.94rem;font-weight:700}.review-card small{color:#687371;font-size:.65rem}.review-count{color:#586563;font-size:.71rem;text-align:right}
.faq{background:#fff}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(34px,6vw,86px)}.faq-title h2{margin:0;font-size:clamp(2.8rem,5.5vw,5.5rem);font-weight:500;line-height:.96;letter-spacing:-.075em}.faq-title p{max-width:370px;color:var(--muted);font-size:.9rem;line-height:1.7}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{position:relative;padding:22px 42px 22px 0;list-style:none;font-size:.96rem;font-weight:650;cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:2px;top:17px;color:var(--teal);font-size:1.3rem;font-weight:500;transition:transform .2s}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-item p{max-width:650px;margin:0;padding:0 36px 22px 0;color:var(--muted);font-size:.84rem;line-height:1.75}
.order{position:relative;overflow:hidden;padding:clamp(68px,9vw,112px) 0;background:var(--coral)}.order:after{content:"";position:absolute;right:-140px;top:-270px;width:550px;height:550px;border:1px solid rgba(37,59,58,.14);border-radius:50%;box-shadow:0 0 0 42px rgba(37,59,58,.04),0 0 0 90px rgba(37,59,58,.025);pointer-events:none}.order-layout{position:relative;z-index:1;display:grid;grid-template-columns:.86fr 1.14fr;gap:50px;align-items:start}.order-copy h2{margin:0;font-size:clamp(3rem,6vw,6.3rem);font-weight:500;line-height:.92;letter-spacing:-.08em}.order-copy>p:not(.eyebrow){max-width:480px;margin:20px 0;color:#364240;line-height:1.7}.order-bullets{display:grid;gap:11px;margin-top:24px;color:#364240;font-size:.77rem}.order-bullets span{display:flex;gap:10px;align-items:center}.order-bullets b{color:var(--teal-dark)}.brief-form{padding:26px;border:1px solid #ffffff85;border-radius:20px;background:#fffaf8;box-shadow:var(--shadow)}.form-title{margin:0 0 5px;font-size:1.12rem;font-weight:700}.form-help{margin:0 0 19px;color:#62706f;font-size:.75rem;line-height:1.55}.field{display:grid;gap:7px;margin-bottom:15px}.field label{font-size:.73rem;font-weight:700}.field select,.field textarea{width:100%;border:1px solid #cbdcda;border-radius:11px;background:#fff;color:var(--ink);font-size:.84rem}.field select{height:46px;padding:0 12px}.field textarea{min-height:100px;padding:12px;resize:vertical;line-height:1.55}.field select:focus,.field textarea:focus{outline:3px solid rgba(16,133,146,.2);border-color:var(--teal)}.brief-form .button{width:100%;cursor:pointer}.form-privacy{margin:12px 0 0;color:#6b7977;font-size:.64rem;line-height:1.5}.form-status{min-height:22px;margin:10px 0 0;color:var(--teal-dark);font-size:.73rem;line-height:1.45}.footer{padding:25px 0;display:flex;align-items:center;justify-content:space-between;gap:22px;color:#60706e;font-size:.69rem}.footer p{margin:0}.footer strong{color:var(--ink)}.footer-links{display:flex;gap:16px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}
.reveal{opacity:1;transform:none}.motion-on .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .72s cubic-bezier(.2,.75,.22,1);transition-delay:var(--delay,0ms)}.motion-on .reveal.is-visible{opacity:1;transform:translateY(0)}.motion-on .work-card.reveal,.motion-on .idea-card.reveal,.motion-on .process-card.reveal,.motion-on .review-card.reveal{transition-delay:var(--delay,0ms)}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes breathe{from{transform:scale(.96) rotate(-2deg)}to{transform:scale(1.035) rotate(3deg)}}@media(max-width:980px){.hero{min-height:600px;grid-template-columns:1fr .82fr;gap:24px}.hero-art{min-height:470px}.hero-image-wrap{height:470px}.idea-grid{grid-template-columns:repeat(2,1fr)}.idea-art{height:360px}.work-carousel{grid-auto-columns:calc((100% - 20px)/2)}.transformation-grid{grid-template-columns:1fr;gap:34px}.transformation-copy{max-width:760px}.transformation-card img{height:460px}.faq-layout{grid-template-columns:.7fr 1.3fr}.order-layout{grid-template-columns:.8fr 1.2fr;gap:30px}}
@media(max-width:700px){.container{width:calc(100% - 36px)}.nav{min-height:68px}.brand img{width:138px}.menu-toggle{display:grid;place-items:center}.nav-links{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;align-items:stretch;gap:0;padding:8px 18px 18px;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 18px 30px rgba(37,59,58,.08)}.nav-links.is-open{display:flex;flex-direction:column}.nav-links a:not(.button){padding:14px 8px;border-bottom:1px solid var(--line)}.nav-links .button{margin-top:13px}.hero{min-height:0;grid-template-columns:1fr;gap:12px;padding:46px 0 47px}.hero:before{right:-20px;top:42%;width:110%;height:58%;border-radius:35% 0 0 0}.hero h1{font-size:clamp(3.5rem,16.5vw,5.5rem)}.hero-lede{margin-top:20px;font-size:.98rem}.hero-actions .button{flex:1}.hero-art{min-height:0;height:min(112vw,470px);margin-top:6px}.hero-image-wrap{width:min(82vw,370px);height:100%;max-height:460px}.hero-orbit{width:min(78vw,350px)}.hero-sticker{right:-8px;bottom:25px;max-width:135px;padding:12px 14px;font-size:.65rem}.hero-stage-label{left:-5px;top:25px}.image-note-hero{right:3px;bottom:-7px;font-size:.56rem}.audience-picker{gap:7px}.audience-chip{min-height:35px;padding-inline:11px;font-size:.67rem}.trust-band-inner{justify-content:flex-start;gap:13px 22px}.trust-point{font-size:.67rem}.section{padding:70px 0}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:16px;font-size:.86rem}.idea-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.idea-art{height:clamp(220px,65vw,330px)}.idea-copy{padding:14px}.idea-copy h3{font-size:.93rem}.idea-copy p{font-size:.68rem}.idea-tag{left:8px;top:8px;padding:7px 8px;font-size:.52rem}.carousel-tools{margin-top:18px}.carousel-arrow{width:42px;height:42px}.work-carousel{grid-auto-columns:86%;gap:13px;margin-right:-18px;padding-right:18px}.work-image-wrap{height:clamp(300px,90vw,430px)}.work-copy{padding:16px}.carousel-foot{font-size:.66rem}.transformation-steps{grid-template-columns:1fr;gap:11px}.transformation-card img{height:clamp(330px,94vw,470px)}.transform-arrow{justify-self:center;transform:rotate(90deg)}.process-grid{grid-template-columns:1fr}.process-card{min-height:0;padding:22px}.step-number{margin-bottom:22px}.process-outcome{align-items:flex-start;line-height:1.55}.review-heading{align-items:end}.review-heading h2{font-size:3.25rem}.review-controls{display:flex;gap:6px}.review-carousel{grid-auto-columns:88%;gap:13px;margin-right:-18px;padding-right:18px}.review-card{min-height:270px;padding:20px}.review-note{font-size:.67rem}.faq-layout{grid-template-columns:1fr;gap:24px}.faq-title p{margin-bottom:0}.faq-item summary{font-size:.87rem}.order-layout{grid-template-columns:1fr;gap:24px}.order-copy h2{font-size:3.5rem}.brief-form{padding:20px}.footer{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}}
@media(max-width:380px){.hero h1{font-size:3.25rem}.idea-grid{grid-template-columns:1fr}.idea-art{height:300px}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.nav{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-on .reveal{opacity:1;transform:none}.hero-image-wrap{transform:none!important}}

/* Ajustes finales de anchura, escala y recorte para pantallas reales. */
.container{width:min(1520px,calc(100% - clamp(40px,8vw,144px)))}
.hero{min-height:min(690px,calc(100svh - 78px));grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(22px,2vw,42px);padding:clamp(38px,4vw,54px) clamp(0px,1vw,18px)}
.hero:before{left:50%;right:auto;width:100vw;transform:translateX(-50%);border-radius:0 0 0 12%}
.hero h1{max-width:960px;font-size:clamp(3.2rem,4.4vw,5.5rem);line-height:.96;letter-spacing:-.075em;text-wrap:balance}
.hero-lede{max-width:700px}
.hero-image-wrap{width:min(100%,480px);height:clamp(390px,34vw,560px);aspect-ratio:auto;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
.hero-image{object-fit:contain}
.hero-stage-label{left:18px;top:-18px;z-index:2}
.image-note-hero{right:10px;bottom:-23px;padding:4px 7px;border-radius:6px;background:rgba(255,250,248,.86)}
.trust-band-inner{flex-wrap:wrap}
.trust-point{flex:1 1 230px}
.transformation-card img{object-fit:contain;background:#eef7f5}

@media(max-width:980px){
  .container{width:calc(100% - 56px)}
  .hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:20px;min-height:0;padding-block:42px 50px}
  .hero h1{font-size:clamp(3rem,5vw,4rem)}
  .hero-lede{max-width:560px}
  .hero-art{min-height:0}
  .hero-image-wrap{width:min(100%,420px);height:clamp(380px,50vw,500px)}
  .hero-orbit{width:82%}
  .trust-band-inner{justify-content:center}
}

@media(max-width:820px){
  .container{width:calc(100% - 40px)}
  .nav{min-height:70px}
  .brand img{width:138px}
  .menu-toggle{display:grid;place-items:center}
  .nav-links{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;align-items:stretch;gap:0;padding:8px 20px 18px;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 18px 30px rgba(37,59,58,.08)}
  .nav-links.is-open{display:flex;flex-direction:column}
  .nav-links a:not(.button){padding:14px 8px;border-bottom:1px solid var(--line)}
  .nav-links .button{margin-top:13px}
  .hero{grid-template-columns:minmax(0,1fr);gap:28px;padding:44px 0 58px}
  .hero:before{top:43%;height:57%;border-radius:28% 0 0 0}
  .hero-copy{max-width:760px}
  .hero h1{max-width:780px;font-size:clamp(3.4rem,9vw,5.8rem)}
  .hero-lede{max-width:650px;margin-top:20px;font-size:1rem}
  .hero-art{width:min(100%,560px);height:auto;min-height:0;margin:0 auto;padding-bottom:24px}
  .hero-image-wrap{width:min(100%,560px);height:clamp(360px,70vw,500px)}
  .hero-orbit{width:min(88%,450px)}
  .hero-stage-label{left:14px;top:-14px;z-index:2}
  .image-note-hero{right:2px;bottom:0}
  .trust-band-inner{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:13px 22px}
  .trust-point{flex:auto}
}

@media(max-width:700px){
  .container{width:calc(100% - 36px)}
  .hero{gap:24px;padding-block:38px 48px}
  .hero h1{font-size:clamp(3.15rem,12vw,5.1rem);line-height:.98;letter-spacing:-.07em}
  .hero-art{width:100%;max-width:450px}
  .hero-image-wrap{width:min(100%,450px);height:clamp(350px,100vw,480px)}
  .hero-orbit{width:86%}
  .hero-stage-label{max-width:calc(100% - 28px);font-size:.6rem}
  .image-note-hero{font-size:.56rem}
  .trust-band-inner{grid-template-columns:1fr;gap:11px;padding-block:18px}
  .trust-point{font-size:.72rem}
  .carousel-foot{flex-wrap:wrap}
  .carousel-progress{min-width:70px}
}

@media(max-width:380px){
  .hero h1{font-size:3rem}
  .hero-actions{flex-direction:column}
  .hero-actions .button{width:100%}
  .audience-chip{font-size:.63rem;padding-inline:9px}
}

@media(prefers-reduced-motion:reduce){.hero:before{transform:translateX(-50%)}}

/* La comparativa usa la proporción vertical original y da más aire al texto. */
.color-highlight{color:var(--teal);text-decoration-line:underline;text-decoration-color:var(--coral);text-decoration-thickness:.07em;text-underline-offset:.12em;white-space:nowrap}
.transformation-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.14fr);gap:clamp(32px,4vw,64px)}
.transformation-copy{max-width:740px}
.transformation-copy h2{max-width:900px;font-size:clamp(2.9rem,4vw,5.1rem);line-height:.99;text-wrap:balance}
.transformation-copy>p:not(.eyebrow){max-width:680px;font-size:1rem;line-height:1.75}
.transformation-copy .button{margin-top:28px}
.transformation-card img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center;background:transparent}

@media(max-width:980px){
  .transformation-grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .transformation-copy h2{max-width:780px;font-size:clamp(2.8rem,6vw,4.8rem)}
  .transformation-copy>p:not(.eyebrow){max-width:760px}
}

@media(max-width:700px){
  .transformation-grid{gap:28px}
  .transformation-copy h2{font-size:clamp(2.8rem,10vw,3.8rem)}
  .transformation-copy .button{margin-top:22px}
  .transformation-card img{aspect-ratio:1/1}
}

.hero h1 .hero-title-line,.hero h1 .hero-title-accent{display:block;white-space:nowrap}
.hero h1 .hero-title-line{color:var(--ink);font-size:.9em}
.hero h1 .hero-title-accent{color:var(--teal)}

@media(max-width:700px){
  .hero h1{font-size:clamp(2.35rem,10.3vw,4.6rem)}
}

@media(max-width:380px){
  .hero h1{font-size:clamp(2.35rem,10.3vw,2.9rem)}
}

/* Títulos equilibrados y el titular de ideas fijado en dos líneas. */
.section-heading h2,.review-heading h2,.transformation-copy h2,.faq-title h2,.order-copy h2,h3{text-wrap:balance}
.ideas .section-heading h2{max-width:none;font-size:clamp(2.9rem,4.2vw,5rem);line-height:.98}
.ideas .section-heading h2 .idea-title-line{display:block;white-space:nowrap}
.ideas .section-heading h2 .idea-title-line:nth-child(2){font-size:.92em}
.ideas .section-heading h2 .idea-title-accent{color:var(--teal)}

@media(max-width:1400px){
  .ideas .section-heading{display:block}
  .ideas .section-heading>p{max-width:740px;margin-top:18px}
}

@media(max-width:700px){
  .section-heading h2,.review-heading h2,.transformation-copy h2,.faq-title h2,.order-copy h2{font-size:clamp(2rem,7vw,3rem);line-height:1.04}
  .ideas .section-heading h2{font-size:clamp(2rem,7vw,3rem)}
  .ideas .section-heading h2 .idea-title-line:first-child,.ideas .section-heading h2 .idea-title-line:nth-child(2){font-size:clamp(1.35rem,6.2vw,3.15rem)}
}

.process #process-title{max-width:none;font-size:clamp(2.8rem,4.6vw,5.1rem);white-space:nowrap}

@media(max-width:1400px){
  .process .section-heading{display:block}
  .process .section-heading>p{max-width:760px;margin-top:18px}
}

@media(max-width:700px){
  .process #process-title{font-size:clamp(1.45rem,7.8vw,3rem)}
}

/* Carrusel: encuadre común de retrato, con la cabeza protegida en el borde superior. */
.work-image-wrap{height:auto;aspect-ratio:1/1}
.work-image{object-fit:cover;object-position:center 8%}
.work-card:hover .work-image{transform:none}

/* Titular del carrusel: dos líneas equilibradas, también en móvil. */
.carousel-heading h2{max-width:none;font-size:clamp(2.6rem,4.8vw,5.1rem);line-height:.98}
.carousel-title-line{display:block;white-space:nowrap}
@media(max-width:700px){
  .carousel-heading h2{font-size:clamp(1.45rem,5.4vw,3rem)}
}

/* Segunda frase de cada titular en el color principal de la marca. */
.idea-title-line:nth-child(2),
.carousel-title-line:nth-child(2),
.transformation-title-line:nth-child(2),
.review-title-line:nth-child(2){color:var(--teal)}
.idea-title-accent{color:inherit}
.review-heading h2{font-size:clamp(1.6rem,5.6vw,5.3rem)}
.review-title-line{display:block;white-space:nowrap}
.review-controls{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}
.review-controls .carousel-arrow{flex:0 0 auto}
@media(max-width:700px){
  .review-heading{flex-wrap:wrap}
  .review-heading h2{font-size:clamp(1.6rem,5.6vw,3rem)}
  .review-controls{gap:8px}
}
.transformation-copy h2{font-size:clamp(1.65rem,3.7vw,3.3rem);line-height:1.04}
.transformation-title-line{display:block;white-space:nowrap}

/* Ejemplos foto → propuesta, en un bloque propio antes de enseñar la impresión. */
.photo-design{background:var(--pink)}
.photo-design-heading{margin-bottom:30px}
.photo-design-heading h2{max-width:none;margin:0;font-size:clamp(2.2rem,4.6vw,4.2rem);font-weight:500;line-height:.98;letter-spacing:-.075em}
.photo-design-title-line{display:block;white-space:nowrap}
.photo-design-title-line:nth-child(2){color:var(--teal)}
.photo-design-description-row{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-top:18px}
.photo-design-description-row>p{flex:1;max-width:820px;margin:0;color:var(--muted);font-size:.92rem;line-height:1.7}
.photo-design-description-row>.button{flex:0 0 auto;margin:0;white-space:nowrap}
.photo-design-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.photo-design-card{margin:0;overflow:hidden;border:1px solid rgba(37,59,58,.08);border-radius:19px;background:#fff;box-shadow:0 12px 30px rgba(37,59,58,.08)}
.photo-design-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.photo-design-card figcaption{padding:16px 19px 18px}
.photo-design-card figcaption strong{display:block;margin-bottom:5px;color:var(--ink);font-size:.9rem}
.photo-design-card figcaption span{display:block;color:var(--muted);font-size:.75rem;line-height:1.55}
.transformation-copy h2{font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.04}
.transformation-title-line{display:block;white-space:nowrap}
.transformation-card img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:center}
.handpaint-callout{display:flex;align-items:flex-start;gap:12px;max-width:480px;margin-top:17px;padding:13px 15px;border-left:3px solid var(--coral);border-radius:0 12px 12px 0;background:var(--mint)}
.handpaint-mark{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#fff;color:var(--teal);font-size:.85rem}
.handpaint-callout p{margin:0}
.handpaint-callout strong{display:block;margin-bottom:3px;color:var(--ink);font-size:.78rem}
.handpaint-callout p span{display:block;color:var(--muted);font-size:.72rem;line-height:1.5}
@media(max-width:1200px){.transformation-grid{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:700px){
  .photo-design-heading h2{font-size:clamp(1.25rem,6.2vw,3rem)}
  .photo-design-description-row{flex-direction:column;align-items:flex-end;gap:14px}
  .photo-design-description-row>p{align-self:stretch}
  .photo-design-gallery{grid-template-columns:1fr;gap:15px}
  .photo-design-card img{aspect-ratio:3/2}
  .transformation-copy h2{font-size:clamp(1.55rem,6.4vw,3rem)}
}



/* Catálogo unificado: mismo fondo y encuadre en todas las tarjetas. */
.work-card .work-image-wrap{height:auto;aspect-ratio:1/1;background:#f5f1ed}
.work-card .work-image{object-fit:cover;object-position:center;transform:none}
.work-card:hover .work-image{transform:none}

/* Una sola sección reúne la promesa emocional y las creaciones. */
.combined-showcase{background:var(--white)}
.combined-showcase .section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,370px);align-items:end;gap:28px;margin-bottom:32px}
.combined-showcase .ideas-intro-aside{display:flex;flex-direction:column;align-items:flex-end;gap:22px}
.combined-showcase .ideas-intro-aside>p{max-width:370px;margin:0;color:var(--muted);font-size:.94rem;line-height:1.75}
.combined-showcase .carousel-tools{justify-content:flex-end}
.combined-showcase .work-carousel{margin-top:0}
@media(max-width:980px){
  .combined-showcase .section-heading{grid-template-columns:minmax(0,1fr);gap:20px}
  .combined-showcase .ideas-intro-aside{flex-direction:row;align-items:center;justify-content:space-between;gap:20px}
  .combined-showcase .ideas-intro-aside>p{max-width:620px}
}
@media(max-width:700px){
  .combined-showcase .section-heading{display:block;margin-bottom:26px}
  .combined-showcase .ideas-intro-aside{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin-top:16px}
  .combined-showcase .ideas-intro-aside>p{max-width:none;font-size:.86rem}
  .combined-showcase .carousel-tools{justify-content:flex-end;margin-top:0}
}
/* Descripción bajo el titular; controles del carrusel en el extremo derecho. */
.combined-showcase .section-heading{grid-template-columns:minmax(0,1fr) auto}
.combined-showcase .ideas-heading-copy>p{max-width:760px;margin:18px 0 0;color:var(--muted);font-size:.94rem;line-height:1.75}
.combined-showcase .ideas-intro-aside{align-self:end}
@media(max-width:980px){.combined-showcase .section-heading{grid-template-columns:minmax(0,1fr)}.combined-showcase .ideas-intro-aside{justify-content:flex-end}}
@media(max-width:700px){.combined-showcase .ideas-heading-copy>p{font-size:.86rem}.combined-showcase .ideas-intro-aside{margin-top:18px}}

/* Ritmo de color: propuesta digital en coral y trabajo manual en turquesa claro. */
.transformation{background:var(--mint)}

/* Sección de acabado: muestra primero las piezas y da más peso al mensaje. */
.transformation .transformation-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:clamp(34px,4vw,56px)}
.transformation .transformation-steps{grid-column:1;grid-row:1;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(8px,1.2vw,16px)}
.transformation .transformation-copy{grid-column:2;grid-row:1;max-width:none}
.transformation .transformation-copy h2{max-width:600px;font-size:clamp(2.8rem,4.2vw,4rem);line-height:.98;letter-spacing:-.075em;text-wrap:balance}
.transformation .transformation-copy>p:not(.eyebrow){max-width:560px;margin-top:22px;font-size:1rem;line-height:1.75}
.transformation .handpaint-callout{max-width:540px;margin-top:22px}
.transformation .transformation-copy .button{margin-top:26px}
.transformation .transformation-card img{aspect-ratio:1/1;object-fit:cover}
@media(max-width:1100px){
  .transformation .transformation-grid{grid-template-columns:minmax(0,1fr);gap:30px}
  .transformation .transformation-copy{grid-column:1;grid-row:1;max-width:780px}
  .transformation .transformation-steps{grid-column:1;grid-row:2}
  .transformation .transformation-copy h2{font-size:clamp(3rem,6.4vw,4.2rem)}
}
@media(max-width:700px){
  .transformation .transformation-grid{gap:25px}
  .transformation .transformation-copy h2{font-size:clamp(2rem,7.2vw,3rem)}
  .transformation .transformation-copy>p:not(.eyebrow){margin-top:18px;font-size:.92rem}
  .transformation .handpaint-callout{margin-top:18px}
  .transformation .transformation-copy .button{margin-top:22px}
  .transformation .transformation-steps{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px}
  .transformation .transform-arrow{font-size:1.1rem}
}
@media(max-width:420px){
  .transformation .transformation-steps{grid-template-columns:1fr;gap:10px}
  .transformation .transform-arrow{justify-self:center;transform:rotate(90deg)}
}
/* Paleta y ritmo de color de las secciones finales. */
:root{--coral-dark:#98484a}
/* La sección de acabado gana presencia sobre turquesa oscuro. */
.transformation{position:relative;isolation:isolate;overflow:hidden;padding-block:clamp(120px,14vw,184px);background:var(--teal-dark);color:#fff}
.transformation:before{content:"";position:absolute;z-index:-1;right:-150px;top:50%;width:520px;aspect-ratio:1;transform:translateY(-50%);border:1px solid rgba(223,242,239,.16);border-radius:50%;box-shadow:0 0 0 38px rgba(223,242,239,.035),0 0 0 82px rgba(249,201,193,.04);pointer-events:none}
.transformation .eyebrow{color:var(--coral-soft)}
.transformation .transformation-copy h2{color:#fff}
.transformation .transformation-title-line:nth-child(2){color:var(--coral-soft)}
.transformation .transformation-copy>p:not(.eyebrow){color:#e2f0ee}
.transformation .handpaint-callout{border-left-color:var(--coral-soft);background:rgba(255,255,255,.09)}
.transformation .handpaint-mark{background:var(--coral-soft);color:var(--teal-dark)}
.transformation .handpaint-callout strong{color:#fff}
.transformation .handpaint-callout p span{color:#e2f0ee}
.transformation .button-light{border-color:rgba(255,255,255,.62);color:#fff}
.transformation .button-light:hover{border-color:var(--teal);background:var(--teal);color:#fff}
@media(max-width:700px){.transformation{padding-block:90px}.transformation:before{right:-260px;width:410px}}
/* Proceso en blanco para separar visualmente la sección oscura. */
.process{background:var(--white);color:var(--ink)}
.process:after{border-color:rgba(16,133,146,.14);box-shadow:0 0 0 45px rgba(16,133,146,.035),0 0 0 94px rgba(239,137,131,.035)}
.process .eyebrow{color:var(--teal)}
.process .section-heading>p{color:var(--muted)}
.process-card{border-color:var(--line);background:var(--paper)}
.process-card:hover{background:var(--mint)}
.process-card h3{color:var(--ink)}
.process-card p{color:var(--muted)}
.process-outcome{color:var(--muted)}
.process-outcome span{color:var(--coral)}
/* Reseñas sobre coral claro, conservando tarjetas blancas y controles limpios. */
.stories{background:var(--pink)}
/* Preguntas en coral profundo; respuestas y navegación con contraste claro. */
.faq{background:var(--coral-dark);color:#fff}
.faq-layout{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)}
.faq-list{grid-column:1;grid-row:1;border-color:rgba(255,255,255,.34)}
.faq-title{grid-column:2;grid-row:1;align-self:start}
.faq .eyebrow{color:var(--coral-soft)}
.faq-title h2{color:#fff}
.faq-title>p{color:#f8e6e4}
.faq-item{border-color:rgba(255,255,255,.3)}
.faq-item summary{color:#fff}
.faq-item summary:after{color:var(--coral-soft)}
.faq-item p{color:#f8e6e4}
.faq-item summary:focus-visible{outline:2px solid var(--coral-soft);outline-offset:4px}
@media(max-width:980px){
  .faq-layout{grid-template-columns:minmax(0,1fr)}
  .faq-title{grid-column:1;grid-row:1}
  .faq-list{grid-column:1;grid-row:2}
}
/* Formulario con fondo turquesa claro; el pie oscuro cierra la página. */
.order{background:var(--mint)}
.order:after{border-color:rgba(16,133,146,.16);box-shadow:0 0 0 42px rgba(16,133,146,.035),0 0 0 90px rgba(239,137,131,.03)}
.footer{padding:0;background:var(--teal-dark);color:#dceeed}
.footer-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding-block:18px}
.footer strong{color:#fff}
.footer a{color:#dceeed}
.footer a:hover{color:#fff}
@media(max-width:700px){.footer-inner{align-items:flex-start;flex-direction:column;gap:12px}}
.photo-design{background:var(--mint)}

/* Contraste de los pies de foto y jerarquía del titular de cierre. */
.transformation-caption strong{color:var(--ink)}
.transformation-caption span{color:#647371}
.order-copy h2{font-size:clamp(2.6rem,4.5vw,4.2rem);line-height:.98}
.order-title-line{display:block}
.order-title-line:first-child{white-space:nowrap}
.order-title-highlight{color:var(--teal)}
.color-highlight,.order-title-highlight{position:relative;display:inline-block;padding-bottom:.12em;text-decoration:none;z-index:0}
.color-highlight::after,.order-title-highlight::after{content:"";position:absolute;z-index:-1;left:-.015em;right:-.015em;bottom:.025em;height:.15em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8 C18 5 29 10 45 7 S73 5 88 7 S106 8 118 5' fill='none' stroke='%23ef8983' stroke-width='5' stroke-linecap='round'/%3E%3Cpath d='M9 10 C31 8 46 11 67 9 S99 10 116 8' fill='none' stroke='%23ef8983' stroke-opacity='.38' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;pointer-events:none}
@media(max-width:700px){
  .order-copy h2{font-size:clamp(2.15rem,7.5vw,2.85rem)}
}

/* Movimiento refinado: entradas suaves, profundidad en tarjetas y un acento vivo en el hero. */
.motion-on .reveal{filter:blur(4px);transform:translate3d(0,30px,0) scale(.99);transition:opacity .72s ease,transform .82s cubic-bezier(.2,.75,.22,1),filter .72s ease}
.motion-on .reveal.is-visible{filter:blur(0);transform:translate3d(0,0,0) scale(1)}
.hero-sticker{animation:hero-sticker-float 5.5s ease-in-out infinite}
.color-highlight::after,.order-title-highlight::after{transform:scaleX(.82);transform-origin:left center;transition:transform .55s cubic-bezier(.2,.75,.22,1)}
@keyframes hero-sticker-float{0%,100%{transform:translateY(0) rotate(3deg)}50%{transform:translateY(-7px) rotate(1.5deg)}}
@media(hover:hover) and (pointer:fine){
  .work-card,.review-card,.process-card,.transformation-card{transition:transform .42s cubic-bezier(.2,.75,.22,1),box-shadow .42s ease}
  .work-card .work-image{transition:transform .8s cubic-bezier(.2,.75,.22,1)}
  .work-card:hover .work-image{transform:scale(1.035)}
  .work-card:hover,.review-card:hover,.process-card:hover,.transformation-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(31,73,72,.14)}
  .photo-design-card{transition:transform .42s cubic-bezier(.2,.75,.22,1),box-shadow .42s ease}
  .photo-design-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(31,73,72,.14)}
  .color-highlight:hover::after,.order-title-highlight:hover::after{transform:scaleX(1)}
}
@media(max-width:700px){.motion-on .reveal{filter:none;transform:translate3d(0,20px,0) scale(.995)}}
