:root{--navy:#272d5d;--navy2:#17233f;--copper:#c4875f;--rust:#b9643e;--sand:#f2c55c;--cream:#f7f1e9;--paper:#fffdf9;--ink:#182238;--muted:#64676e;--line:rgba(24,34,56,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.55 "DM Sans",Arial,sans-serif;background:var(--paper);overflow-x:hidden}img,video{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{font:inherit}.logo{display:block;width:190px;height:auto;object-fit:contain}.nav{display:flex;align-items:center;gap:30px;font:600 12px/1 "Manrope",sans-serif;letter-spacing:.08em;text-transform:uppercase}.nav a:last-child{padding:13px 20px;border-radius:999px;background:var(--copper);color:white}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 23px;border-radius:999px;background:var(--copper);color:white;font:700 13px/1 "Manrope",sans-serif;letter-spacing:.05em;text-transform:uppercase}.btn.alt{color:var(--navy);background:transparent;border:1px solid currentColor}.tag{font:700 11px/1.2 "Manrope",sans-serif;letter-spacing:.15em;text-transform:uppercase}.portrait{border-radius:28px}.demo-note{position:fixed;z-index:50;right:16px;bottom:16px;padding:9px 13px;border-radius:999px;color:white;background:rgba(15,20,35,.82);font:600 10px/1 "Manrope",sans-serif;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(10px)}

/* 01 · Editorial humano */
.d01{background:var(--cream)}.d01 header{display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;border-bottom:1px solid var(--line)}.d01 main{display:grid;grid-template-columns:.88fr 1.12fr;min-height:calc(100vh - 91px)}.d01 .copy{display:flex;padding:7vw 5vw 4vw;flex-direction:column;justify-content:center}.d01 .tag{color:var(--rust)}.d01 h1{margin:22px 0;font:600 clamp(66px,8vw,130px)/.78 "Zilla Slab",serif;letter-spacing:-.06em}.d01 h1 em{display:block;margin-left:8%;color:var(--rust);font-weight:500}.d01 .lead{max-width:510px;margin:0 0 30px;color:#50545b;font-size:20px}.d01 .actions{display:flex;gap:12px}.d01 .visual{position:relative;margin:34px 34px 34px 0;overflow:hidden;border-radius:47% 47% 32% 48%/36% 45% 40% 52%;box-shadow:0 30px 80px rgba(38,39,51,.18)}.d01 .seal{position:absolute;right:18px;bottom:18px;display:grid;width:125px;height:125px;border-radius:50%;background:var(--sand);text-align:center;place-content:center;transform:rotate(-8deg)}.d01 .seal strong{font:600 23px "Zilla Slab",serif}.d01 .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-top:35px;margin-top:38px;border-top:1px solid var(--line);font-size:12px;font-weight:700}.d01 .steps b{display:block;color:var(--rust);font-size:10px}

/* 02 · Cine documental */
.d02{min-height:100vh;color:white;background:#111}.d02 .film{position:fixed;inset:0}.d02 .film:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,14,27,.82),rgba(10,14,27,.24) 65%,rgba(10,14,27,.1)),linear-gradient(0deg,rgba(10,14,27,.58),transparent 45%)}.d02 header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:28px 5vw}.d02 .logo{padding:7px 12px;border-radius:10px;background:white}.d02 .nav a:last-child{background:white;color:var(--navy)}.d02 .hero{position:relative;z-index:2;display:flex;min-height:calc(100vh - 100px);padding:7vh 6vw 5vh;flex-direction:column;justify-content:flex-end}.d02 .tag{color:var(--sand)}.d02 h1{max-width:920px;margin:15px 0 22px;font:600 clamp(66px,9vw,142px)/.82 "Zilla Slab",serif;letter-spacing:-.06em}.d02 h1 span{color:var(--sand);font-style:italic}.d02 .bottom{display:flex;align-items:end;justify-content:space-between;gap:40px}.d02 .bottom p{max-width:540px;margin:0;color:rgba(255,255,255,.82);font-size:19px}.d02 .play{display:grid;width:88px;height:88px;border:1px solid rgba(255,255,255,.6);border-radius:50%;place-items:center;font-size:23px}.d02 .rail{position:absolute;right:5vw;bottom:48%;display:flex;gap:7px;align-items:center;writing-mode:vertical-rl;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.d02 .rail:before{content:"";width:1px;height:85px;background:rgba(255,255,255,.55)}

/* 03 · Precisión suiza */
.d03{background:#fff}.d03 header{display:grid;grid-template-columns:220px 1fr 180px;align-items:center;padding:20px 4vw;border-bottom:1px solid #101010}.d03 .nav{justify-self:center}.d03 .city{justify-self:end;font:700 11px "Manrope";letter-spacing:.12em;text-transform:uppercase}.d03 .hero{display:grid;grid-template-columns:54% 46%;min-height:650px;border-bottom:1px solid #111}.d03 .type{position:relative;padding:5vw 4vw}.d03 .index{position:absolute;top:4vw;right:4vw;font:500 14px "Manrope"}.d03 h1{margin:80px 0 24px;font:800 clamp(64px,7.6vw,118px)/.83 "Manrope",sans-serif;letter-spacing:-.075em;text-transform:uppercase}.d03 h1 span{display:block;color:var(--copper)}.d03 .manifesto{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:650px;padding-top:25px;border-top:1px solid #111}.d03 .manifesto p{margin:0;font-size:14px}.d03 .image{position:relative;overflow:hidden}.d03 .image:after{content:"DOGGY / 01";position:absolute;left:0;bottom:0;padding:12px 20px;color:white;background:#111;font:700 11px "Manrope";letter-spacing:.12em}.d03 .services{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:white}.d03 .service{min-height:210px;padding:34px;border-right:1px solid rgba(255,255,255,.28)}.d03 .service b{color:var(--sand);font-size:12px}.d03 .service h2{margin:55px 0 0;font:600 25px "Manrope"}

/* 04 · Territorio orgánico */
.d04{background:#f4efe5}.d04 header{display:flex;align-items:center;justify-content:space-between;padding:24px 5vw}.d04 .hero{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:690px;padding:3vw 5vw 7vw}.d04 .copy{position:relative;z-index:2}.d04 .tag{color:#926047}.d04 h1{max-width:680px;margin:16px 0 25px;font:600 clamp(66px,8vw,124px)/.82 "Playfair Display",serif;letter-spacing:-.055em}.d04 h1 em{color:#9c5b3e}.d04 .copy p{max-width:500px;color:#535b55;font-size:19px}.d04 .visual{position:relative;height:580px}.d04 .blob{position:absolute;inset:0;overflow:hidden;border-radius:56% 44% 60% 40%/45% 53% 47% 55%;box-shadow:inset 0 0 0 12px rgba(255,255,255,.35)}.d04 .orb{position:absolute;border-radius:50%}.d04 .orb.one{width:180px;height:180px;right:-40px;top:20px;background:#d9aa53}.d04 .orb.two{width:110px;height:110px;left:-35px;bottom:15px;background:#b85e3d}.d04 .promise{position:absolute;left:50%;bottom:0;display:flex;width:88%;padding:22px 26px;border-radius:24px;background:white;box-shadow:0 22px 55px rgba(62,55,43,.15);transform:translate(-50%,50%);gap:20px}.d04 .promise b{font:600 24px "Playfair Display"}.d04 .promise span{color:#69706a;font-size:13px}.d04 .waves{position:absolute;left:-8%;right:-8%;bottom:-20px;height:100px;border-radius:50% 50% 0 0;background:#d8c9b4;opacity:.42}

/* 05 · Impacto cobre */
.d05{color:white;background:var(--navy2)}.d05 header{display:flex;align-items:center;justify-content:space-between;padding:22px 4vw;border-bottom:1px solid rgba(255,255,255,.15)}.d05 .logo{padding:6px 10px;border-radius:8px;background:white}.d05 .nav a:last-child{background:var(--sand);color:var(--navy2)}.d05 .hero{display:grid;grid-template-columns:58% 42%;min-height:690px}.d05 .copy{position:relative;padding:6vw 4vw;overflow:hidden}.d05 .copy:after{content:"";position:absolute;width:360px;height:360px;right:-180px;bottom:-190px;border:65px solid var(--copper);border-radius:50%}.d05 .tag{color:var(--sand)}.d05 h1{position:relative;z-index:1;margin:30px 0 25px;font:800 clamp(66px,8.8vw,140px)/.78 "Manrope",sans-serif;letter-spacing:-.08em;text-transform:uppercase}.d05 h1 span{color:var(--copper)}.d05 .copy p{max-width:560px;color:rgba(255,255,255,.72);font-size:18px}.d05 .visual{position:relative;overflow:hidden}.d05 .visual:before{content:"";position:absolute;z-index:1;inset:0;border:35px solid var(--copper);border-left:0;mix-blend-mode:multiply}.d05 .visual:after{content:"OBSERVAR / ENTENDER / ACTUAR";position:absolute;z-index:2;right:24px;bottom:25px;padding:12px 17px;color:var(--navy2);background:var(--sand);font:800 10px "Manrope";letter-spacing:.11em}.d05 .ticker{display:flex;padding:17px 0;overflow:hidden;color:var(--navy2);background:var(--copper);font:800 13px "Manrope";letter-spacing:.1em;white-space:nowrap;text-transform:uppercase}.d05 .ticker span{padding-right:55px}

/* 06 · Lujo sereno */
.d06{background:#fbfaf7}.d06 header{display:flex;align-items:center;justify-content:space-between;padding:28px 6vw}.d06 .nav a:last-child{color:var(--copper);background:transparent;border:1px solid var(--copper)}.d06 .hero{padding:2vw 6vw 5vw}.d06 .intro{display:grid;grid-template-columns:1fr .55fr;align-items:end;gap:60px;margin-bottom:45px}.d06 .tag{color:var(--copper)}.d06 h1{max-width:920px;margin:15px 0 0;font:600 clamp(62px,7vw,108px)/.9 "Playfair Display",serif;letter-spacing:-.05em}.d06 h1 em{color:var(--copper)}.d06 .intro p{max-width:450px;margin:0 0 10px;color:#6b6966;font-size:17px}.d06 .panorama{position:relative;height:430px;overflow:hidden;border-radius:3px}.d06 .panorama:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,29,47,.34),transparent 60%)}.d06 .caption{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;padding-top:26px;border-top:1px solid var(--line);margin-top:30px}.d06 .caption div{display:grid;grid-template-columns:38px 1fr;gap:10px;font-size:13px}.d06 .caption b{color:var(--copper)}

/* 07 · Geometría amable */
.d07{background:#f8f4ec}.d07 header{display:flex;align-items:center;justify-content:space-between;padding:20px 4vw}.d07 .hero{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;padding:10px 4vw 4vw}.d07 .copy{position:relative;min-height:620px;padding:55px;border-radius:36px;background:var(--navy);color:white;overflow:hidden}.d07 .copy:before{content:"";position:absolute;width:240px;height:240px;right:-70px;top:-80px;border-radius:50%;background:var(--sand)}.d07 .tag{position:relative;color:var(--sand)}.d07 h1{position:relative;max-width:650px;margin:45px 0 30px;font:600 clamp(60px,7vw,108px)/.84 "Zilla Slab",serif;letter-spacing:-.055em}.d07 .copy p{position:relative;max-width:450px;color:rgba(255,255,255,.76);font-size:18px}.d07 .copy .btn{position:absolute;left:55px;bottom:50px;background:var(--copper)}.d07 .mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr .75fr;gap:16px}.d07 .tile{position:relative;overflow:hidden;border-radius:36px}.d07 .tile.photo{grid-column:1/3}.d07 .tile.copper{display:grid;padding:30px;color:white;background:var(--copper);place-content:end start}.d07 .tile.sand{display:grid;padding:30px;background:var(--sand);place-content:center}.d07 .tile.sand strong{font:600 28px "Zilla Slab"}.d07 .tile.copper strong{font-size:13px;text-transform:uppercase;letter-spacing:.1em}

/* 08 · Cuaderno de campo */
.d08{background:#eee8dc;background-image:linear-gradient(rgba(69,60,47,.045) 1px,transparent 1px);background-size:100% 28px}.d08 header{display:flex;align-items:center;justify-content:space-between;padding:22px 5vw;border-bottom:1px solid rgba(64,55,42,.28)}.d08 .hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;padding:5vw}.d08 .notes{padding-top:20px}.d08 .kicker{font:700 12px "Manrope";letter-spacing:.14em;text-transform:uppercase}.d08 h1{margin:30px 0 25px;font:600 clamp(62px,7vw,105px)/.88 "Zilla Slab",serif;letter-spacing:-.045em}.d08 h1 u{text-decoration-color:var(--copper);text-decoration-thickness:7px;text-underline-offset:6px}.d08 .notes p{max-width:520px;font-size:18px}.d08 .checklist{padding:0;margin:35px 0;list-style:none}.d08 .checklist li{padding:12px 0;border-bottom:1px solid rgba(64,55,42,.2);font-weight:600}.d08 .checklist li:before{content:"✓";display:inline-grid;width:24px;height:24px;margin-right:12px;border-radius:50%;color:white;background:var(--copper);place-items:center;font-size:12px}.d08 .board{position:relative;min-height:620px;padding:18px;background:#d1c2aa;box-shadow:0 20px 50px rgba(57,48,34,.16);transform:rotate(1.5deg)}.d08 .board img{filter:saturate(.8)}.d08 .tape{position:absolute;z-index:2;top:1px;left:50%;width:120px;height:30px;background:rgba(242,197,92,.72);transform:translateX(-50%) rotate(-3deg)}.d08 .scribble{position:absolute;right:-25px;bottom:25px;padding:16px 19px;color:white;background:var(--navy);font:600 17px "Zilla Slab";transform:rotate(-4deg)}

/* 09 · Cartel tipográfico */
.d09{background:#f6d066}.d09 header{display:flex;align-items:center;justify-content:space-between;padding:20px 4vw;border-bottom:2px solid var(--navy)}.d09 .nav a:last-child{background:var(--navy)}.d09 .poster{position:relative;min-height:680px;padding:3vw 4vw;overflow:hidden}.d09 h1{position:relative;z-index:2;margin:0;color:var(--navy);font:800 clamp(84px,13.2vw,215px)/.7 "Manrope",sans-serif;letter-spacing:-.09em;text-transform:uppercase}.d09 h1 span{display:block;color:var(--rust);text-align:right}.d09 .cutout{position:absolute;z-index:1;left:37%;top:19%;width:31vw;height:31vw;max-width:480px;max-height:480px;overflow:hidden;border:10px solid var(--paper);border-radius:50%;box-shadow:0 25px 60px rgba(38,45,93,.23)}.d09 .sidecopy{position:absolute;z-index:3;left:4vw;bottom:50px;max-width:310px;font-weight:600}.d09 .stamp{position:absolute;z-index:4;right:5vw;bottom:45px;display:grid;width:150px;height:150px;border:2px solid var(--navy);border-radius:50%;place-content:center;text-align:center;font:800 12px "Manrope";letter-spacing:.1em;transform:rotate(8deg)}

/* 10 · Camino de convivencia */
.d10{background:white}.d10 header{display:flex;align-items:center;justify-content:space-between;padding:22px 5vw;border-bottom:1px solid var(--line)}.d10 .hero{display:grid;grid-template-columns:.9fr 1.1fr;min-height:650px}.d10 .copy{padding:5vw}.d10 .tag{color:var(--copper)}.d10 h1{max-width:680px;margin:24px 0;font:600 clamp(64px,7.2vw,112px)/.86 "Zilla Slab",serif;letter-spacing:-.055em}.d10 h1 span{color:var(--copper)}.d10 .copy>p{max-width:520px;color:#5f6469;font-size:18px}.d10 .path{position:relative;display:grid;margin-top:42px;gap:0}.d10 .step{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:16px 0;border-top:1px solid var(--line)}.d10 .step b{display:grid;width:36px;height:36px;border-radius:50%;color:white;background:var(--navy);place-items:center;font-size:12px}.d10 .step strong{display:block;font:600 20px "Zilla Slab"}.d10 .step span{color:#74767a;font-size:13px}.d10 .visual{position:relative;margin:30px 30px 30px 0;overflow:hidden;border-radius:220px 24px 24px 220px}.d10 .visual:after{content:"Tu casa. Vuestro ritmo. Un plan real.";position:absolute;left:40px;right:40px;bottom:35px;padding:20px 25px;border-radius:18px;color:var(--navy);background:rgba(255,255,255,.9);font:600 24px "Zilla Slab";backdrop-filter:blur(8px)}

@media(max-width:900px){.nav a:not(:last-child){display:none}.logo{width:160px}.d01 main,.d04 .hero,.d05 .hero,.d07 .hero,.d08 .hero,.d10 .hero{grid-template-columns:1fr}.d01 .visual{min-height:520px;margin:0 24px 24px}.d03 .hero{grid-template-columns:1fr}.d03 .image{min-height:480px}.d03 .services{grid-template-columns:1fr}.d04 .visual{height:500px}.d05 .visual{min-height:500px}.d06 .intro{grid-template-columns:1fr}.d07 .mosaic{min-height:520px}.d08 .board{min-height:540px}.d10 .visual{min-height:520px;margin:0 20px 20px;border-radius:160px 24px 24px 160px}}
@media(max-width:560px){.nav a:last-child{padding:11px 14px}.d01 header,.d02 header,.d03 header,.d04 header,.d05 header,.d06 header,.d07 header,.d08 header,.d09 header,.d10 header{padding:16px}.d01 .copy,.d03 .type,.d04 .hero,.d05 .copy,.d06 .hero,.d07 .hero,.d08 .hero,.d10 .copy{padding:45px 16px}.d01 h1,.d02 h1,.d03 h1,.d04 h1,.d05 h1,.d06 h1,.d07 h1,.d08 h1,.d10 h1{font-size:54px}.d01 .actions{align-items:stretch;flex-direction:column}.d01 .steps{grid-template-columns:1fr}.d02 .hero{padding:40px 20px}.d02 .bottom{align-items:start;flex-direction:column}.d03 header{grid-template-columns:1fr auto}.d03 .nav{display:none}.d03 .manifesto,.d06 .caption{grid-template-columns:1fr}.d04 .visual{height:410px}.d04 .promise{width:94%}.d05 .visual{min-height:410px}.d06 .panorama{height:330px}.d07 .copy{min-height:560px;padding:38px 28px}.d07 .copy .btn{left:28px;bottom:35px}.d07 .mosaic{grid-template-columns:1fr;grid-template-rows:300px 180px 180px}.d07 .tile.photo{grid-column:auto}.d08 .board{min-height:400px}.d09 .poster{min-height:620px;padding:35px 16px}.d09 h1{font-size:74px;line-height:.78}.d09 .cutout{left:28%;top:28%;width:280px;height:280px}.d09 .stamp{width:105px;height:105px}.d10 .visual{min-height:420px}.demo-note{display:none}}

/* Propuesta combinada · 01 + 04 + 07 */
.df{background:#f3ece2}.df header{display:flex;align-items:center;justify-content:space-between;padding:20px max(28px,5vw);border-bottom:1px solid rgba(39,45,93,.13);background:rgba(255,253,249,.7)}.df .nav a:last-child{background:var(--navy)}.df .hero{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(35px,6vw,95px);align-items:center;min-height:690px;padding:clamp(50px,6vw,92px) max(28px,5vw);overflow:hidden}.df .hero:after{content:"";position:absolute;width:310px;height:310px;right:-155px;bottom:-165px;border:55px solid rgba(242,197,92,.48);border-radius:50%;animation:hero-ring-drift 13s ease-in-out infinite alternate;will-change:transform}.df .hero-copy{position:relative;z-index:2}.df .tag{color:var(--rust)}.df h1{max-width:700px;margin:22px 0 25px;font:600 clamp(70px,8vw,126px)/.79 "Zilla Slab",serif;letter-spacing:-.065em}.df h1 em{display:block;margin-left:8%;color:var(--rust);font-weight:500}.df .lead{max-width:520px;margin:0 0 30px;color:#52575d;font-size:20px}.df .actions{display:flex;gap:12px}.df .hero-visual{position:relative;height:570px}.df .organic-photo{position:absolute;inset:0;overflow:hidden;border-radius:52% 48% 34% 54%/39% 49% 42% 58%;box-shadow:0 28px 75px rgba(37,39,58,.17)}.df .dot{position:absolute;z-index:-1;border-radius:50%;will-change:transform}.df .dot.a{width:170px;height:170px;right:-38px;top:-20px;background:var(--sand);animation:hero-dot-a 8.5s ease-in-out infinite alternate}.df .dot.b{width:100px;height:100px;left:-32px;bottom:28px;background:var(--rust);animation:hero-dot-b 10.5s ease-in-out -2.4s infinite alternate}.df .hero-card{position:absolute;z-index:3;left:-35px;bottom:24px;display:grid;min-width:270px;padding:20px 24px;border-radius:20px;color:white;background:var(--navy);box-shadow:0 18px 45px rgba(39,45,93,.24)}.df .hero-card strong{font:600 24px "Zilla Slab"}.df .hero-card span{font-size:12px;opacity:.78}.df .method{padding:85px max(28px,5vw) 105px;background:#fffdf9}.df .method-head{display:grid;grid-template-columns:1fr .55fr;align-items:end;gap:60px;margin-bottom:40px}.df .method h2{max-width:760px;margin:10px 0 0;font:600 clamp(48px,5.6vw,82px)/.93 "Zilla Slab",serif;letter-spacing:-.05em}.df .method-head p{max-width:460px;margin:0;color:#656970}.df .method-grid{display:grid;grid-template-columns:1.05fr 1.25fr 1fr;grid-template-rows:230px 210px;gap:14px}.df .method-card{position:relative;display:flex;padding:30px;border-radius:28px;flex-direction:column;justify-content:flex-end;overflow:hidden}.df .method-card b{position:absolute;top:24px;left:28px;font:700 11px "Manrope";letter-spacing:.12em}.df .method-card h3{margin:0 0 8px;font:600 30px/1 "Zilla Slab"}.df .method-card p{margin:0;font-size:13px;line-height:1.5}.df .method-card.one{grid-row:1/3;color:white;background:var(--navy)}.df .method-card.photo{grid-row:1/3;padding:0}.df .method-card.two{color:white;background:var(--rust)}.df .method-card.three{background:#f1e8da}.df .method-card.three a{margin-top:15px;font-size:12px;font-weight:700}.df .signature{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:27px max(28px,5vw);color:white;background:var(--copper)}.df .signature strong{font:600 25px "Zilla Slab"}.df .signature span{font-size:13px}.df .signature .btn{color:var(--navy);background:var(--sand)}
@keyframes hero-dot-a{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-18px,22px,0) scale(1.045)}}
@keyframes hero-dot-b{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(20px,-16px,0) scale(.96)}}
@keyframes hero-ring-drift{0%{transform:translate3d(0,0,0) rotate(0)}100%{transform:translate3d(-20px,-14px,0) rotate(7deg)}}
@media(max-width:900px){.df .hero{grid-template-columns:1fr}.df .hero-visual{height:520px}.df .method-head{grid-template-columns:1fr}.df .method-grid{grid-template-columns:1fr 1fr;grid-template-rows:280px 230px}.df .method-card.one{grid-row:auto}.df .method-card.photo{grid-column:2;grid-row:1/3}.df .method-card.two,.df .method-card.three{grid-column:1}.df .signature{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.df header{padding:16px}.df .hero{padding:45px 16px}.df h1{font-size:55px}.df .actions{align-items:stretch;flex-direction:column}.df .hero-visual{height:430px}.df .hero-card{left:5px;min-width:230px}.df .method{padding:65px 16px}.df .method h2{font-size:46px}.df .method-grid{grid-template-columns:1fr;grid-template-rows:none}.df .method-card,.df .method-card.one,.df .method-card.photo,.df .method-card.two,.df .method-card.three{grid-column:auto;grid-row:auto;min-height:240px}.df .method-card.photo{min-height:360px}}

.df-about{display:grid;grid-template-columns:1fr .82fr;gap:clamp(55px,8vw,120px);align-items:center;padding:clamp(85px,10vw,145px) max(28px,7vw);background:#eee3d5}.df-about__copy h2,.df-section-head h2,.df-dogs__title h2,.df-contact h2{margin:14px 0 25px;font:600 clamp(48px,5.6vw,82px)/.94 "Zilla Slab",serif;letter-spacing:-.05em}.df-about__copy p{max-width:700px;color:#555a5d;font-size:17px}.df-textlink{display:inline-block;margin-top:15px;color:var(--navy);font-weight:700;border-bottom:2px solid var(--copper)}.df-about__photo{position:relative;margin:0}.df-about__photo:before{content:"";position:absolute;inset:8% -7% -7% 12%;border-radius:44% 44% 27% 48%/35% 48% 34% 53%;background:var(--rust);transform:rotate(4deg)}.df-about__photo img{position:relative;min-height:560px;border-radius:44% 44% 27% 48%/35% 48% 34% 53%}.df-about__photo figcaption{position:absolute;right:-18px;bottom:22px;display:grid;padding:16px 22px;border-radius:15px;background:var(--sand);box-shadow:0 15px 40px rgba(38,45,93,.15)}.df-about__photo figcaption strong{font:600 23px "Zilla Slab"}.df-about__photo figcaption span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.df-reviews,.df-team,.df-blog{padding:clamp(80px,9vw,130px) max(28px,5vw)}.df-section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:45px}.df-section-head>p{max-width:440px;margin:0;color:#666a70}.df-section-head h2{max-width:820px;margin-bottom:0}.df-rating{display:flex;align-items:center;gap:14px}.df-rating strong{font:600 56px/1 "Zilla Slab"}.df-rating span{color:var(--rust);font-size:12px;font-weight:700;letter-spacing:.04em}.df-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.df-review-grid blockquote{position:relative;min-height:275px;padding:38px;margin:0;border:1px solid rgba(39,45,93,.11);border-radius:24px;background:white;box-shadow:0 15px 42px rgba(39,45,93,.07)}.df-review-grid blockquote>span{color:var(--copper);font:600 58px/1 "Zilla Slab"}.df-review-grid blockquote p{font:500 20px/1.45 "Zilla Slab"}.df-review-grid blockquote footer{position:absolute;left:38px;bottom:30px;color:#6d7075;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.df-team{color:white;background:var(--navy)}.df-team .tag{color:var(--sand)}.df-team h2{color:white}.df-team .df-section-head>p{color:rgba(255,255,255,.7)}.df-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.df-team-card{position:relative;display:flex;min-height:520px;padding:40px;overflow:hidden;border-radius:30px;background-position:center;background-size:cover;align-items:flex-end}.df-team-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,54,.94),rgba(15,23,54,.05) 72%)}.df-team-card.bruno{background-image:url("../../archivos/wp-content/uploads/2021/08/flibox_doggy_bruno.jpg")}.df-team-card.kyra{background-image:url("../../archivos/wp-content/uploads/2021/08/flibox_doggy_kyra.jpg")}.df-team-card>div{position:relative;z-index:1;text-align: center;}.df-team-card h3{margin:7px 0 4px;font:600 52px/1 "Zilla Slab"}.df-team-card p{max-width:440px;margin:0;color:rgba(255,255,255,.76)}
.df-blog{background:#f3ece2}.df-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.df-post-grid article{padding-bottom:24px;border-bottom:1px solid rgba(39,45,93,.22)}.df-post-img{display:block;height:310px;margin-bottom:22px;overflow:hidden;border-radius:24px}.df-post-img img{transition:.35s}.df-post-grid article:hover img{transform:scale(1.035)}.df-post-grid article>span{color:var(--rust);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.df-post-grid h3{margin:10px 0 20px;font:600 29px/1.08 "Zilla Slab"}.df-post-grid article>a:last-child{font-size:12px;font-weight:700}
.df-dogs{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center;padding:90px 0 90px max(28px,5vw);overflow:hidden;background:#fffdf9}.df-dogs__title h2{max-width:590px;font-size:clamp(43px,4.5vw,66px)}.df-dogs__rail{display:flex;gap:14px;overflow:hidden}.df-dogs__rail figure{position:relative;flex:0 0 190px;height:290px;margin:0;overflow:hidden;border-radius:95px}.df-dogs__rail figure:nth-child(even){margin-top:45px}.df-dogs__rail figcaption{position:absolute;left:50%;bottom:16px;padding:7px 12px;border-radius:999px;color:white;background:rgba(39,45,93,.85);font-size:11px;font-weight:700;transform:translateX(-50%)}
.df-contact{display:grid;grid-template-columns:1fr .65fr;gap:70px;align-items:center;padding:clamp(80px,9vw,125px) max(28px,7vw);color:white;background:var(--copper)}.df-contact .tag{color:var(--navy)}.df-contact h2{max-width:760px;color:white}.df-contact p{max-width:620px;color:rgba(255,255,255,.82);font-size:18px}.df-contact__actions{display:grid;justify-items:start;gap:14px}.df-contact__actions .btn{color:var(--navy);background:var(--sand)}.df-contact__actions>a:not(.btn){font-size:18px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.5)}.df-footer{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:45px;padding:45px max(28px,5vw);color:white;background:#171d3d}.df-footer .logo{padding:7px 10px;border-radius:9px;background:white}.df-footer p{margin:0;color:rgba(255,255,255,.7)}.df-footer nav{display:flex;gap:25px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:900px){.df-about,.df-dogs,.df-contact{grid-template-columns:1fr}.df-about__photo img{min-height:480px}.df-review-grid,.df-post-grid{grid-template-columns:1fr 1fr}.df-team-grid{grid-template-columns:1fr}.df-dogs{padding-right:28px}.df-dogs__rail{overflow-x:auto}.df-footer{grid-template-columns:1fr}.df-footer nav{flex-wrap:wrap}}
@media(max-width:560px){.df-about,.df-reviews,.df-team,.df-blog,.df-contact{padding:65px 16px}.df-about__copy h2,.df-section-head h2,.df-dogs__title h2,.df-contact h2{font-size:44px}.df-about__photo img{min-height:410px}.df-section-head{align-items:flex-start;flex-direction:column;gap:25px}.df-review-grid,.df-post-grid{grid-template-columns:1fr}.df-team-card{min-height:400px}.df-post-img{height:260px}.df-dogs{padding:65px 0 65px 16px}.df-dogs__rail figure{flex-basis:155px;height:240px}.df-contact{gap:35px}.df-footer{padding:40px 16px}}
@media(prefers-reduced-motion:reduce){.df .dot,.df .hero:after{animation:none}}

/* Demo final v3 · portada de un sitio multipágina */
.df-header{position:relative;z-index:20}.df-header .nav a[aria-current="page"]{color:var(--rust)}
.method--compact{padding-top:72px;padding-bottom:82px}.method-intro{display:grid;grid-template-columns:1.15fr .65fr;align-items:end;gap:70px;margin-bottom:34px}.method-intro h2{margin-top:10px}.method-intro>div:last-child{padding-bottom:8px}.method-intro p{margin:0 0 12px;color:#656970}.method-experience{position:relative;display:grid;grid-template-columns:1.12fr .88fr;min-height:430px;border-radius:32px;overflow:hidden;background:var(--navy);box-shadow:0 26px 65px rgba(39,45,93,.13)}.method-experience__photo{position:relative;margin:0;min-height:430px}.method-experience__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(39,45,93,.48))}.method-experience__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.method-experience__photo figcaption{position:absolute;z-index:2;left:24px;bottom:22px;padding:10px 15px;border-radius:999px;color:var(--navy);background:rgba(255,255,255,.88);font-size:11px;font-weight:800;letter-spacing:.04em}.method-experience__steps{display:grid;padding:24px;gap:10px;align-content:center}.method-experience__steps article{display:grid;grid-template-columns:46px 1fr;gap:16px;align-items:center;padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:20px;color:#fff;background:rgba(255,255,255,.065);transition:transform .25s ease,background .25s ease}.method-experience__steps article:hover{background:rgba(255,255,255,.12);transform:translateX(-7px)}.method-experience__steps b{display:grid;width:42px;height:42px;border-radius:50%;color:var(--navy);background:var(--sand);place-items:center;font-size:11px}.method-experience__steps h3{margin:0 0 4px;font:600 25px/1 "Zilla Slab"}.method-experience__steps p{margin:0;color:rgba(255,255,255,.66);font-size:12px}.method-experience__note{position:absolute;left:47%;top:22px;z-index:3;display:grid;padding:13px 17px;border-radius:14px;color:#fff;background:var(--rust);box-shadow:0 12px 30px rgba(39,45,93,.22);transform:rotate(-2deg)}.method-experience__note strong{font:600 18px "Zilla Slab"}.method-experience__note span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}

.df-reviews--widget{overflow:hidden}.reviews-widget{display:grid;grid-template-columns:210px minmax(0,1fr);gap:22px;align-items:stretch}.reviews-summary{display:flex;padding:28px;border-radius:24px;background:#fff;box-shadow:0 15px 42px rgba(39,45,93,.07);flex-direction:column;align-items:flex-start;justify-content:center}.reviews-google{display:grid;width:40px;height:40px;margin-bottom:18px;border:1px solid #e8e8e8;border-radius:50%;place-items:center;color:#4285f4;font:800 21px Arial,sans-serif}.reviews-summary>strong{font:600 27px "Zilla Slab"}.reviews-summary>b{margin-top:4px;font-size:13px}.reviews-summary small{color:#777;font-size:10px}.reviews-stars{color:#f7ad20;font-size:15px;letter-spacing:2px}.reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(270px,1fr);gap:14px;overflow-x:auto;padding:2px 2px 14px;scroll-snap-type:x mandatory;scrollbar-color:var(--copper) transparent}.review-card{display:flex;min-height:250px;padding:25px;border:1px solid rgba(39,45,93,.1);border-radius:22px;background:#fff;scroll-snap-align:start;flex-direction:column;box-shadow:0 14px 35px rgba(39,45,93,.055)}.review-card header{display:grid;grid-template-columns:42px 1fr 20px;align-items:center;gap:10px;margin-bottom:14px}.review-card header i{color:#4285f4;font:800 17px Arial,sans-serif}.review-card header strong,.review-card header small{display:block}.review-card header strong{font-size:12px}.review-card header small{color:#8a8d91;font-size:9px}.review-avatar{display:grid;width:40px;height:40px;border-radius:50%;color:#fff;background:var(--navy);place-items:center;font:600 18px "Zilla Slab"}.review-avatar--rust{background:var(--rust)}.review-avatar--sand{color:var(--navy);background:var(--sand)}.review-avatar--coral{background:#df8067}.review-card p{margin:13px 0 15px;color:#555a5d;font-size:13px;line-height:1.6}.review-card>a{margin-top:auto;color:var(--rust);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}

.df-dogs.df-dogs--all{grid-template-columns:.62fr 1.38fr;gap:45px;padding-top:72px;padding-bottom:72px}.df-dogs--all .df-dogs__title p{max-width:430px;color:#666a70}.df-dogs__gallery{display:grid;grid-template-columns:repeat(4,minmax(105px,1fr));gap:13px}.df-dogs__gallery>a:nth-child(even){transform:translateY(24px)}.df-dogs__gallery figure{position:relative;height:225px;margin:0;overflow:hidden;border-radius:26px;background:var(--navy);box-shadow:0 14px 35px rgba(39,45,93,.1);transition:transform .35s ease,box-shadow .35s ease}.df-dogs__gallery a:hover figure,.df-dogs__gallery a:focus-visible figure{z-index:2;transform:translateY(-9px) rotate(-1deg);box-shadow:0 24px 50px rgba(39,45,93,.2)}.df-dogs__gallery img{transition:transform .45s ease,filter .35s ease}.df-dogs__gallery a:hover img,.df-dogs__gallery a:focus-visible img{transform:scale(1.07);filter:saturate(1.08)}.df-dogs__gallery figcaption{position:absolute;inset:auto 9px 9px;display:grid;padding:10px 12px;border-radius:14px;color:#fff;background:rgba(39,45,93,.88);backdrop-filter:blur(7px)}.df-dogs__gallery figcaption strong{font:600 17px "Zilla Slab"}.df-dogs__gallery figcaption span{max-height:0;overflow:hidden;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:0;transition:max-height .3s ease,opacity .3s ease}.df-dogs__gallery a:hover figcaption span,.df-dogs__gallery a:focus-visible figcaption span{max-height:18px;opacity:.72}

@media(max-width:1100px){.df-dogs.df-dogs--all{grid-template-columns:1fr}.df-dogs__gallery{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.method-intro{grid-template-columns:1fr;gap:18px}.method-experience{grid-template-columns:1fr}.method-experience__photo{min-height:360px}.method-experience__photo:after{background:linear-gradient(0deg,rgba(39,45,93,.35),transparent 65%)}.method-experience__note{left:auto;right:18px;top:18px}.reviews-widget{grid-template-columns:1fr}.reviews-summary{align-items:center;text-align:center}.df-dogs__gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.method--compact{padding-top:55px;padding-bottom:60px}.method-experience__steps{padding:14px}.method-experience__steps article:hover{transform:none}.reviews-track{grid-auto-columns:84%}.df-dogs.df-dogs--all{padding:60px 16px}.df-dogs__gallery{display:flex;gap:12px;overflow-x:auto;padding:0 0 28px;scroll-snap-type:x mandatory}.df-dogs__gallery>a{flex:0 0 45%;scroll-snap-align:start}.df-dogs__gallery>a:nth-child(even){transform:none}.df-dogs__gallery figure{height:230px}}

/* Páginas interiores de la demo multipágina */
.df-subpage{min-height:100vh;background:#f3ece2}.df-subpage .df-header{background:#fffdf9}.page-hero{display:grid;grid-template-columns:1fr .58fr;gap:70px;align-items:end;padding:clamp(75px,9vw,135px) max(28px,7vw) clamp(65px,8vw,110px);background:#eee3d5}.page-hero h1{max-width:900px;margin:14px 0 0;font-size:clamp(66px,8vw,122px)}.page-hero p{max-width:500px;margin:0;color:#5d6266;font-size:18px}.page-section{padding:clamp(70px,8vw,110px) max(28px,7vw)}.page-section--light{background:#fffdf9}.page-section--navy{color:#fff;background:var(--navy)}.page-section h2{max-width:850px;margin:10px 0 30px;font:600 clamp(43px,5vw,72px)/.95 "Zilla Slab";letter-spacing:-.045em}.page-prose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px;max-width:1050px}.page-prose p{margin-top:0;color:#555a5d;font-size:17px}.page-section--navy .page-prose p{color:rgba(255,255,255,.7)}.page-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.page-card{padding:30px;border-radius:24px;background:#fff;box-shadow:0 14px 40px rgba(39,45,93,.07)}.page-card>span{color:var(--rust);font-size:11px;font-weight:800}.page-card h3{margin:20px 0 10px;font:600 29px/1 "Zilla Slab"}.page-card p{color:#666a70;font-size:14px}.page-dog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.page-dog{position:relative;min-height:390px;margin:0;overflow:hidden;border-radius:30px;background:#ddd}.page-dog img{position:absolute;inset:0}.page-dog figcaption{position:absolute;inset:auto 18px 18px;padding:17px 19px;border-radius:17px;color:#fff;background:rgba(39,45,93,.88);backdrop-filter:blur(8px)}.page-dog figcaption strong{display:block;font:600 28px "Zilla Slab"}.page-dog figcaption span{font-size:11px;opacity:.72}.page-review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.page-review-grid .review-card{min-height:280px}.contact-panel{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.contact-details{display:grid;align-content:start;gap:14px}.contact-details a{font:600 27px "Zilla Slab"}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{display:grid;gap:6px;color:#6d7075;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.contact-form label:last-of-type{grid-column:1/3}.contact-form input,.contact-form textarea{width:100%;padding:15px;border:1px solid rgba(39,45,93,.16);border-radius:12px;background:#fff;font:inherit}.contact-form textarea{min-height:150px;resize:vertical}.contact-form .btn{grid-column:1/3;justify-self:start;border:0;cursor:pointer}.inner-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:45px max(28px,7vw);color:#fff;background:var(--copper)}.inner-cta strong{font:600 clamp(30px,3.2vw,48px) "Zilla Slab"}.inner-cta .btn{color:var(--navy);background:var(--sand)}
@media(max-width:900px){.page-hero,.contact-panel{grid-template-columns:1fr}.page-prose,.page-review-grid{grid-template-columns:1fr}.page-cards,.page-dog-grid{grid-template-columns:1fr 1fr}.inner-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.page-hero,.page-section{padding-left:16px;padding-right:16px}.page-hero h1{font-size:58px}.page-cards,.page-dog-grid{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr}.contact-form label:last-of-type,.contact-form .btn{grid-column:auto}.inner-cta{padding:35px 16px}}
.df .review-card header{padding:0;border:0;background:transparent}

/* Servicios: contenido aprobado, recorrido más visual y dinámico */
.plugin-label{padding:9px 13px;border:1px solid rgba(39,45,93,.15);border-radius:999px;color:#6c6f76;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.service-hero{position:relative;display:grid;grid-template-columns:1.02fr .78fr;gap:clamp(45px,7vw,110px);align-items:center;min-height:760px;padding:clamp(70px,8vw,120px) max(28px,7vw);overflow:hidden;background:#eee3d5}.service-hero:before{content:"";position:absolute;width:390px;height:390px;left:-220px;bottom:-210px;border:64px solid rgba(242,197,92,.4);border-radius:50%}.service-hero__copy{position:relative;z-index:2}.service-hero h1{margin:18px 0 34px;font:600 clamp(66px,7.4vw,116px)/.82 "Zilla Slab";letter-spacing:-.057em}.service-hero h1 em{color:var(--rust);font-weight:500}.service-hero__intro{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:780px}.service-hero__intro p{margin:0;color:#555b61;font-size:15px}.service-signals{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.service-signals span,.service-keywords span{padding:9px 13px;border:1px solid rgba(39,45,93,.16);border-radius:999px;color:var(--navy);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.service-hero__visual{position:relative;height:620px}.service-hero__visual figure{position:absolute;inset:0;margin:0;overflow:hidden;border-radius:48% 48% 30% 48%/39% 48% 35% 53%;box-shadow:0 30px 70px rgba(38,45,93,.16);transform:rotate(1.5deg)}.service-hero__visual img{transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.service-hero__visual:hover img{transform:scale(1.045)}.service-hero__stamp{position:absolute;right:-24px;bottom:35px;display:grid;width:122px;height:122px;border-radius:50%;color:var(--navy);background:var(--sand);place-content:center;text-align:center;font:600 21px/1.05 "Zilla Slab";box-shadow:0 18px 45px rgba(39,45,93,.18);transform:rotate(-8deg);transition:transform .35s ease}.service-hero__visual:hover .service-hero__stamp{transform:rotate(0) scale(1.06)}.service-hero__line{position:absolute;width:105px;height:105px;left:-34px;top:50px;border:18px solid rgba(185,100,62,.2);border-radius:50%}.service-index{position:sticky;top:0;z-index:10;display:flex;gap:26px;align-items:center;padding:17px max(28px,7vw);overflow-x:auto;color:#fff;background:var(--navy);white-space:nowrap;box-shadow:0 9px 28px rgba(23,29,61,.12)}.service-index span{margin-right:auto;color:var(--sand);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.service-index a{position:relative;font-size:11px;font-weight:700}.service-index a:after{content:"";position:absolute;right:0;bottom:-5px;left:0;height:2px;background:var(--sand);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.service-index a:hover:after,.service-index a:focus-visible:after{transform:scaleX(1)}
.service-story{display:grid;grid-template-columns:minmax(330px,.8fr) minmax(0,1.05fr);gap:clamp(55px,8vw,125px);align-items:center;padding:clamp(90px,10vw,145px) max(28px,7vw);background:#fffdf9}.service-story--reverse{grid-template-columns:minmax(0,1.05fr) minmax(330px,.8fr);background:#f3ece2}.service-story--reverse .service-story__media{grid-column:2;grid-row:1}.service-story--reverse .service-story__content{grid-column:1;grid-row:1}.service-story__media{position:relative;height:610px;margin:0;overflow:hidden;border-radius:30px}.service-story__media:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.3);border-radius:inherit}.service-story__media img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.service-story__media:hover img{transform:scale(1.055)}.service-story__media>span{position:absolute;z-index:1;top:18px;left:18px;display:grid;width:65px;height:65px;border-radius:50%;color:var(--navy);background:var(--sand);place-items:center;font:600 19px "Zilla Slab"}.service-story__content{max-width:760px}.service-story__content>.tag{color:var(--rust)}.service-story h2,.service-panel h2,.service-exclusion h2,.service-about h2{margin:15px 0 28px;font:600 clamp(42px,5vw,70px)/.94 "Zilla Slab";letter-spacing:-.045em}.service-story p,.service-panel p{color:#555b61;font-size:17px}.service-keywords{display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}.service-story blockquote{position:relative;margin:38px 0 0;padding:24px 28px 24px 55px;border-radius:18px;color:var(--navy);background:#fffdf9;font:600 25px/1.15 "Zilla Slab"}.service-story blockquote:before{content:"“";position:absolute;left:21px;top:9px;color:var(--rust);font:600 48px "Zilla Slab"}
.chapter-number{display:grid;width:70px;height:70px;border:1px solid rgba(39,45,93,.2);border-radius:50%;place-items:center;color:var(--rust);font:600 20px "Zilla Slab"}.service-exclusion{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(55px,8vw,120px);padding:clamp(90px,10vw,135px) max(28px,7vw);overflow:hidden;color:#fff;background:var(--rust)}.service-exclusion:before{content:"NO";position:absolute;left:-25px;bottom:-100px;color:rgba(255,255,255,.055);font:800 320px/1 "Manrope"}.service-exclusion>div{position:relative;z-index:1}.service-exclusion .tag{color:var(--sand)}.service-exclusion h2{color:#fff}.service-exclusion p{color:rgba(255,255,255,.82)}.service-exclusion ul{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;list-style:none}.service-exclusion li{position:relative;min-height:104px;padding:22px 20px 20px 58px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.08);font-weight:600;transition:transform .28s ease,background .28s ease}.service-exclusion li:before{content:"×";position:absolute;left:19px;top:18px;display:grid;width:27px;height:27px;border-radius:50%;color:var(--rust);background:var(--sand);place-items:center;font-size:18px}.service-exclusion li:hover{background:rgba(255,255,255,.15);transform:translateY(-5px)}
.service-combined{position:relative;padding:clamp(80px,8vw,120px) max(28px,7vw);overflow:hidden;background:#f3ece2;scroll-margin-top:62px}.service-combined:before{content:"";position:absolute;right:-115px;top:55px;width:280px;height:280px;border:42px solid rgba(196,135,95,.12);border-radius:50%}.service-combined__header{position:relative;max-width:980px;margin:0 auto clamp(42px,5vw,72px);text-align:center}.service-combined__header .chapter-number{margin:0 auto 24px}.service-combined__header .tag{display:block;color:var(--rust)}.service-combined__header h2{margin:14px 0 0;font:600 clamp(46px,5.6vw,78px)/.92 "Zilla Slab";letter-spacing:-.05em}.service-combined__content{position:relative;display:grid;grid-template-columns:1fr 1fr;max-width:1500px;margin:auto;border:1px solid rgba(39,45,93,.13);border-radius:32px;overflow:hidden;background:#fffdf9;box-shadow:0 28px 70px rgba(39,45,93,.1)}.service-combined__content article{min-width:0;padding:clamp(32px,4vw,62px)}.service-combined__process{color:#fff;background:var(--navy)}.service-combined__process p{color:rgba(255,255,255,.74)}.service-combined__label{display:inline-flex;margin-bottom:25px;padding:8px 12px;border:1px solid rgba(39,45,93,.15);border-radius:999px;color:var(--rust);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.service-combined__process .service-combined__label{color:var(--sand);border-color:rgba(255,255,255,.22)}.service-combined h3{max-width:600px;margin:0 0 25px;color:var(--navy);font:600 clamp(34px,3.3vw,52px)/.98 "Zilla Slab";letter-spacing:-.035em}.service-combined__process h3{color:#fff}.service-anchor{position:absolute;top:-62px}.service-process{display:grid;gap:8px;margin-top:30px;counter-reset:step}.service-process span{position:relative;padding:14px 15px 14px 48px;border-radius:13px;background:rgba(255,255,255,.08);font-size:12px;font-weight:700;counter-increment:step;transition:padding-left .25s ease,background .25s ease}.service-process span:before{content:counter(step,decimal-leading-zero);position:absolute;left:16px;color:var(--sand);font-size:9px}.service-process span:hover{padding-left:55px;background:rgba(255,255,255,.14)}
.service-about{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:clamp(80px,9vw,125px) max(28px,7vw);background:#eee3d5}.service-about figure{height:610px;margin:0;overflow:hidden;border-radius:45% 45% 28% 48%/38% 50% 34% 52%}.service-about figure img{transition:transform .8s ease}.service-about figure:hover img{transform:scale(1.045)}.service-about p{color:#555b61;font-size:17px}.service-about .btn{margin-top:16px}.contact-details code{display:block;padding:12px 14px;border-radius:10px;color:var(--navy);background:#eee3d5;font-size:12px;white-space:normal}.contact-form label:nth-last-of-type(2){grid-column:auto}.contact-form label:last-of-type{grid-column:1/3}.contact-form input[type=number]{appearance:textfield}
.service-story,.service-exclusion,.service-about{scroll-margin-top:62px}.service-story:target .service-story__media,.service-combined:target .service-combined__content{box-shadow:0 0 0 5px var(--sand),0 28px 65px rgba(39,45,93,.16)}
@keyframes serviceReveal{from{opacity:0;transform:translateY(42px)}to{opacity:1;transform:none}}
@supports (animation-timeline:view()){.service-story__media,.service-story__content,.service-exclusion>div,.service-combined__header,.service-combined__content,.service-about>figure,.service-about>div{animation:serviceReveal both linear;animation-timeline:view();animation-range:entry 8% cover 30%}.service-story__content,.service-exclusion>div:nth-child(2),.service-combined__content,.service-about>div{animation-range:entry 14% cover 34%}}
.service-combined__meta{display:flex;align-items:center;justify-content:center;gap:15px;margin-bottom:24px}.service-combined__meta .chapter-number{display:grid;margin:0}.service-combined__meta .tag{margin:0}
.dogy-v2 .service-combined__header{display:block;padding:0;border:0;background:transparent}
.service-combined__content h2{max-width:600px;margin:0 0 25px;color:var(--navy);font:600 clamp(34px,3.3vw,52px)/.98 "Zilla Slab";letter-spacing:-.035em}.service-combined__process h2{color:#fff}
.service-combined{padding-top:clamp(36px,4vw,64px);padding-bottom:clamp(60px,6vw,92px)}
@media(prefers-reduced-motion:reduce){.service-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:1000px){.service-hero{grid-template-columns:1fr .75fr}.service-hero__intro{grid-template-columns:1fr}.service-story,.service-story--reverse{gap:45px}.service-combined__content{grid-template-columns:1fr}.service-combined__process{border-top:1px solid rgba(255,255,255,.14)}}
@media(max-width:800px){.service-hero,.service-story,.service-story--reverse,.service-exclusion,.service-about{grid-template-columns:1fr}.service-hero{gap:45px}.service-hero__visual{height:520px}.service-index span{display:none}.service-story--reverse .service-story__media,.service-story--reverse .service-story__content{grid-column:auto;grid-row:auto}.service-story__media{height:500px}.service-exclusion ul{grid-template-columns:1fr 1fr}.service-about figure{height:500px}}
@media(max-width:560px){.service-hero,.service-story,.service-exclusion,.service-combined,.service-about{padding-left:16px;padding-right:16px}.service-hero{min-height:0}.service-hero h1{font-size:57px}.service-hero__visual{height:430px}.service-hero__stamp{right:-5px;width:98px;height:98px;font-size:18px}.service-index{padding-left:16px;padding-right:16px}.service-story__media{height:430px}.service-story h2,.service-exclusion h2,.service-about h2{font-size:43px}.service-combined__header h2{font-size:42px}.service-combined__content article{padding:28px 24px}.service-combined h3{font-size:35px}.service-exclusion ul{grid-template-columns:1fr}.service-about figure{height:420px}.contact-form label:last-of-type{grid-column:auto}}
@media(max-width:560px){.service-combined__content h2{font-size:35px}}
.contact-portrait{min-height:620px;margin:0;overflow:hidden;border-radius:30px}
@media(max-width:900px){.contact-portrait{min-height:480px}}
.df-about--story{grid-template-columns:.7fr 1.3fr;gap:28px 65px;align-items:start;padding-top:90px;padding-bottom:90px}.df-about--story .df-about__animation{grid-column:1;grid-row:1/3;min-height:500px;align-self:center}.df-about--story .df-about__copy{grid-column:2;grid-row:1;padding:0}.df-about--story .df-about__copy h2{margin-bottom:18px}.df-about--story .df-about__copy p{margin-bottom:0}.df-about--story .df-about__story{grid-column:2;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.df-about--story .df-about__story p{margin:0;padding:19px 20px;border:1px solid rgba(39,45,93,.11);border-radius:17px;color:#555a5d;background:rgba(255,253,249,.52);font-size:14px;line-height:1.6}.df-about--story .df-about__story strong{color:var(--navy)}

.df-team--compact{display:grid;grid-template-columns:.55fr 1.45fr;gap:55px;align-items:center;padding-top:85px;padding-bottom:85px}.df-team--compact .df-section-head{display:block;margin:0}.df-team--compact .df-section-head>p{margin-top:20px}.df-team--compact .df-team-grid{display:flex;min-width:0;gap:14px}.df-team--compact .df-team-card{min-height:250px;flex:1;padding:28px;border-radius:24px;cursor:pointer;transition:flex .45s ease,transform .35s ease,box-shadow .35s ease}.df-team--compact .df-team-card:hover,.df-team--compact .df-team-card:focus-visible{flex:1.32;transform:translateY(-8px);box-shadow:0 24px 55px rgba(9,14,39,.32);outline:none}.df-team--compact .df-team-card:after{background:linear-gradient(0deg,rgba(15,23,54,.96),rgba(15,23,54,.06) 78%)}.df-team--compact .df-team-card h3{font-size:43px}.df-team--compact .df-team-card p{max-height:0;margin:0;overflow:hidden;opacity:0;transform:translateY(8px);transition:max-height .4s ease,opacity .35s ease,transform .35s ease}.df-team--compact .df-team-card:hover p,.df-team--compact .df-team-card:focus-visible p{max-height:90px;margin-top:8px;opacity:1;transform:none}.df-team--compact .df-team-card small{display:block;margin-top:8px;color:rgba(255,255,255,.58);font-size:9px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.df-team--compact .df-team-card:hover small,.df-team--compact .df-team-card:focus-visible small{display:none}

.contact-page{background:#eee3d5}.contact-stage{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center;min-height:calc(100vh - 94px);padding:70px max(28px,7vw) 85px;overflow:hidden}.contact-stage:before{content:"";position:absolute;width:410px;height:410px;left:-210px;bottom:-210px;border:62px solid rgba(242,197,92,.38);border-radius:50%}.contact-copy{position:relative;z-index:1}.contact-copy h1{max-width:620px;margin:18px 0 25px;font:600 clamp(58px,6vw,92px)/.86 "Zilla Slab";letter-spacing:-.055em}.contact-copy>p{max-width:490px;color:#5b6065;font-size:18px}.contact-lines{display:grid;gap:12px;margin-top:38px}.contact-lines a{display:grid;grid-template-columns:85px 1fr;align-items:center;max-width:390px;padding:13px 0;border-bottom:1px solid rgba(39,45,93,.17)}.contact-lines small{color:var(--rust);font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.contact-lines strong{font:600 21px "Zilla Slab"}.contact-orbit{position:absolute;width:95px;height:95px;right:8%;bottom:-25px;border:20px solid rgba(185,100,62,.17);border-radius:50%}.contact-form-card{position:relative;z-index:1;padding:34px;border-radius:30px;background:#fffdf9;box-shadow:0 25px 70px rgba(39,45,93,.13)}.contact-form-card__head{display:flex;align-items:start;justify-content:space-between;gap:30px;margin-bottom:25px}.contact-form-card__head h2{margin:8px 0 0;font:600 clamp(34px,3.6vw,52px)/.95 "Zilla Slab";letter-spacing:-.04em}.contact-form-card__head>b{display:grid;width:46px;height:46px;border-radius:50%;color:var(--navy);background:var(--sand);place-items:center;font-size:11px}.contact-form-card .contact-form{padding:0;background:transparent;box-shadow:none}.contact-form-card .contact-form input,.contact-form-card .contact-form textarea{border-color:transparent;background:#f3ece2;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.contact-form-card .contact-form input:focus,.contact-form-card .contact-form textarea:focus{outline:none;border-color:var(--copper);background:#fff;box-shadow:0 0 0 4px rgba(196,135,95,.11)}.contact-form-card .contact-form textarea{min-height:115px}.contact-form-card .contact-form .btn{width:100%;justify-self:stretch}.contact-privacy{margin:14px 0 0;color:#777b80;font-size:10px}

@media(max-width:1000px){.df-about--story{grid-template-columns:.82fr 1.18fr;gap:25px 35px}.df-about--story .df-about__story{grid-template-columns:1fr}.df-team--compact{grid-template-columns:1fr}.contact-stage{grid-template-columns:1fr;gap:40px}.contact-copy h1{max-width:760px}.contact-copy>p{max-width:650px}}
@media(max-width:700px){.df-about--story{display:grid;grid-template-columns:1fr;padding:65px 16px}.df-about--story .df-about__copy{grid-column:1;grid-row:1}.df-about--story .df-about__animation{grid-column:1;grid-row:2;min-height:360px}.df-about--story .df-about__story{grid-column:1;grid-row:3}.df-team--compact{padding:65px 16px}.df-team--compact .df-team-grid{display:grid}.df-team--compact .df-team-card{min-height:320px}.df-team--compact .df-team-card p{max-height:none;margin-top:8px;opacity:1;transform:none}.df-team--compact .df-team-card small{display:none}.contact-stage{width:100%;padding:55px 16px}.contact-copy,.contact-form-card,.contact-form-card .contact-form,.contact-form-card label,.contact-form-card input,.contact-form-card textarea{min-width:0}.contact-copy h1{font-size:clamp(48px,14vw,58px);overflow-wrap:anywhere}.contact-form-card{width:100%;padding:22px}.contact-form-card__head>b{display:none}}

/* Integración WordPress del diseño aprobado. */
.dogy-v2{--navy:#272d5d;--navy2:#17233f;--copper:#c4875f;--rust:#b9643e;--sand:#f2c55c;--cream:#f7f1e9;--paper:#fffdf9;--ink:#182238;--muted:#64676e;--line:rgba(24,34,56,.16);background:#f3ece2}.dogy-v2 .site-main{min-height:65vh}.dogy-v2 .df-header{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:20px max(28px,5vw);border-bottom:1px solid rgba(39,45,93,.13);background:#fffdf9}.dogy-v2 .brand{display:block;line-height:0}.dogy-v2 .brand .logo{width:190px}.dogy-v2 .primary-navigation .menu{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}.dogy-v2 .primary-navigation .menu>li>a{min-height:auto;padding:0;border-radius:0;color:var(--ink);background:transparent}.dogy-v2 .primary-navigation .menu>li:last-child>a{padding:13px 20px;border-radius:999px;color:#fff;background:var(--navy)}.dogy-v2 .primary-navigation a:before,.dogy-v2 .primary-navigation .current-menu-item>a:after,.dogy-v2 .primary-navigation .current_page_item>a:after{content:none}.dogy-v2 .primary-navigation .sub-menu{position:absolute;min-width:210px;padding:12px;border-radius:14px;background:#fff;box-shadow:0 18px 45px rgba(39,45,93,.14);list-style:none}.dogy-v2 .primary-navigation .current-menu-item>a,.dogy-v2 .primary-navigation .current_page_item>a{color:var(--rust)}.dogy-v2 .primary-navigation .current-menu-item:last-child>a,.dogy-v2 .primary-navigation .current_page_item:last-child>a{color:#fff}.dogy-v2 .menu-toggle{display:none}.dogy-v2 .skip-link{position:fixed;z-index:1000;left:12px;top:-80px;padding:10px 14px;color:#fff;background:var(--navy)}.dogy-v2 .skip-link:focus{top:12px}.dogy-v2 .hero .organic-photo{margin:0}.dogy-v2 .hero .organic-photo img{object-position:center 42%}.dogy-v2 .method-experience__steps h3{color:#fff}.dogy-v2 .reviews-widget--plugin{display:block}.dogy-v2 .reviews-widget--plugin>div{max-width:none}.dogy-v2 .plugin-placeholder{padding:35px;border:1px dashed rgba(39,45,93,.25);border-radius:22px;background:#fff}.dogy-v2 .plugin-placeholder strong{font:600 28px "Zilla Slab"}.dogy-v2 .df-team-card{background-position:center;background-size:cover}.dogy-v2 .df-post-card>p{color:#666a70;font-size:14px}.dogy-v2 .df-post-card .post-card__placeholder{display:grid;height:100%;background:#eee3d5;place-items:center;font-size:58px}.dogy-v2 .posts-pagination{margin-top:45px}.dogy-v2 .contact-form-card .contact-form{display:block;border:0}.dogy-v2 .contact-form-card .contact-form .button{width:100%;margin-top:8px;padding:15px 23px;border:0;border-radius:999px;color:#fff;background:var(--copper);font:700 13px/1 "Manrope",sans-serif;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.dogy-v2 .contact-form-card .form-grid{gap:14px}.dogy-v2 .contact-form-card .checkbox{display:flex;align-items:flex-start;color:#777b80;font-size:10px;text-transform:none;letter-spacing:0}.dogy-v2 .contact-form-card .checkbox input{width:auto;margin-top:3px}.dogy-v2 .contact-form-card .notice{margin:0 0 18px;padding:14px;border-radius:12px}.dogy-v2 .contact-form-card .notice--success{color:#215b39;background:#e4f4e9}.dogy-v2 .contact-form-card .notice--error{color:#842b2b;background:#f9e3e3}.dogy-v2 .contact-form__trap{position:absolute;left:-9999px}.dogy-v2 .service-richtext p{margin-top:0}.dogy-v2.admin-bar .service-index{top:32px}.dogy-v2 .article-hero{display:block;padding:clamp(3.8rem,7vw,6.5rem) 0;background:#eee3d5}.dogy-v2 .article-hero__inner{padding:0}.dogy-v2 .site-footer{margin:0}.dogy-v2 .df-footer small{display:block;margin-top:7px;color:rgba(255,255,255,.5)}.dogy-v2 .df-footer nav{justify-content:flex-end}
@media(max-width:900px){.dogy-v2 .menu-toggle{position:relative;z-index:4;display:flex;width:68px;height:48px;padding:4px 7px 4px 8px;border:1px solid rgba(39,45,93,.16);border-radius:999px;color:var(--navy);background:#f3ece2;box-shadow:0 7px 20px rgba(39,45,93,.1);align-items:center;justify-content:space-between;gap:3px;cursor:pointer;transition:background .25s ease,box-shadow .25s ease,transform .25s ease}.dogy-v2 .menu-toggle:hover,.dogy-v2 .menu-toggle:focus-visible{background:#eee3d5;box-shadow:0 10px 26px rgba(39,45,93,.16);outline:none}.dogy-v2 .menu-toggle:active{transform:scale(.96)}.dogy-v2 .menu-toggle__dog{display:block;width:38px;height:38px}.dogy-v2 .menu-toggle__dog svg{display:block;width:100%;height:100%}.dogy-v2 .menu-toggle__dog .dog-ear{fill:var(--copper)}.dogy-v2 .menu-toggle__dog .dog-face{fill:#fffdf9;stroke:var(--navy);stroke-width:1.6}.dogy-v2 .menu-toggle__dog .dog-eye,.dogy-v2 .menu-toggle__dog .dog-nose{fill:var(--navy)}.dogy-v2 .menu-toggle__dog .dog-muzzle{fill:#eee3d5}.dogy-v2 .menu-toggle__chevron{display:block;width:14px;height:9px;margin-right:2px;transition:transform .28s ease}.dogy-v2 .menu-toggle__chevron svg{display:block;width:100%;height:100%}.dogy-v2 .menu-toggle__chevron path{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.dogy-v2 .menu-toggle[aria-expanded=true] .menu-toggle__chevron{transform:rotate(180deg)}.dogy-v2 .primary-navigation{position:absolute;z-index:3;top:calc(100% + 9px);right:12px;left:12px;display:block;max-height:none;padding:12px;border:1px solid rgba(39,45,93,.12);border-radius:24px;overflow:visible;background:#fffdf9;box-shadow:0 24px 65px rgba(26,31,65,.22);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px) scale(.98);transform-origin:top right;transition:opacity .22s ease,transform .22s ease,visibility .22s}.dogy-v2 .primary-navigation:before{display:block;padding:8px 13px 11px;color:var(--rust);content:"Explora Doggy";font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.dogy-v2 .primary-navigation:after{position:absolute;z-index:-1;right:18px;top:14px;width:76px;height:76px;border:13px solid rgba(196,135,95,.08);border-radius:50%;content:""}.dogy-v2 .primary-navigation.is-open{max-height:none;opacity:1;visibility:visible;pointer-events:auto;transform:none}.dogy-v2 .primary-navigation .menu{display:flex;padding:0;align-items:stretch;flex-direction:column;gap:5px}.dogy-v2 .primary-navigation .menu>li>a{position:relative;display:flex;min-height:50px;padding:13px 48px 13px 15px;border-radius:14px;color:var(--navy);background:#f7f1e9;align-items:center;font-size:12px;font-weight:800;letter-spacing:.06em}.dogy-v2 .primary-navigation .menu>li>a:after{position:absolute;right:16px;color:var(--copper);content:"→";font-size:17px;transition:transform .2s ease}.dogy-v2 .primary-navigation .menu>li>a:hover:after,.dogy-v2 .primary-navigation .menu>li>a:focus-visible:after{transform:translateX(4px)}.dogy-v2 .primary-navigation .menu>li.current-menu-item>a,.dogy-v2 .primary-navigation .menu>li.current_page_item>a{color:var(--navy);background:#eee3d5}.dogy-v2 .primary-navigation .menu>li:last-child>a{color:#fff;background:var(--navy)}.dogy-v2 .primary-navigation .menu>li:last-child>a:after{color:var(--sand)}.dogy-v2 .primary-navigation .sub-menu{position:static;margin:4px 0;padding:4px 0 4px 14px;background:transparent;box-shadow:none}.dogy-v2 .df-footer nav{justify-content:flex-start}}
.dogy-v2 .menu-toggle>.menu-toggle__dog{display:block;width:38px;height:38px;margin:0;background:transparent}.dogy-v2 .menu-toggle>.menu-toggle__chevron{display:block;width:14px;height:9px;margin:0 2px 0 0;background:transparent}
@media(max-width:900px){.dogy-v2 .menu-toggle__dog .dog-ear{fill:var(--rust);stroke:var(--navy);stroke-width:1.1}.dogy-v2 .primary-navigation .menu>li:last-child>a{color:var(--navy);background:#f7f1e9}.dogy-v2 .primary-navigation .menu>li:last-child>a:after{color:var(--copper)}.dogy-v2 .primary-navigation .menu>li>a[href*="/contacto/"]{color:#fff;background:var(--navy)}.dogy-v2 .primary-navigation .menu>li>a[href*="/contacto/"]:after{color:var(--sand);content:"→"}}
@media(max-width:782px){.dogy-v2.admin-bar .service-index{top:46px}}
@media(max-width:560px){.dogy-v2 .df-header{padding:16px}.dogy-v2 .brand .logo{width:155px}.dogy-v2 .contact-form-card .form-grid{grid-template-columns:1fr}.dogy-v2 .contact-form-card .form-grid__wide{grid-column:auto}.dogy-v2 .df-footer{grid-template-columns:1fr}.dogy-v2 .df-footer nav{gap:14px}}

/* Integración visual: el contenido del blog pertenece al fondo de la sección. */
.dogy-v2 .df-post-grid .df-post-card{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
.dogy-v2 .df-post-grid .df-post-card:hover{transform:none;box-shadow:none}

/* El aro continúa el beige de la página a través de la tarjeta blanca. */
.dogy-v2 .contact-form-card__orbit{position:absolute;z-index:2;top:28px;right:-35px;width:78px;height:78px;border:13px solid rgba(185,100,62,.22);border-radius:50%;background:#eee3d5;pointer-events:none}
@media(max-width:700px){.dogy-v2 .contact-form-card__orbit{display:none}}
.blog-mobile-cta{display:none}
@media(max-width:700px){body.blog,body.single-post,body.category,body.tag{padding-bottom:86px}.blog-mobile-cta{position:fixed;z-index:45;right:12px;bottom:max(10px,env(safe-area-inset-bottom));left:12px;display:flex;min-height:64px;padding:11px 17px;border:1px solid rgba(255,255,255,.16);border-radius:18px;color:#fff;background:rgba(39,45,93,.96);box-shadow:0 14px 38px rgba(23,29,61,.3);align-items:center;justify-content:space-between;gap:15px;backdrop-filter:blur(12px)}.blog-mobile-cta>span{max-width:145px;color:rgba(255,255,255,.72);font-size:11px;line-height:1.25}.blog-mobile-cta strong{color:var(--sand);font-size:13px;white-space:nowrap}.blog-mobile-cta:focus-visible{outline:3px solid var(--sand);outline-offset:3px}body.blog .to-top,body.single-post .to-top,body.category .to-top,body.tag .to-top{bottom:94px}}

/* El pie mantiene siempre contraste sobre el fondo oscuro. */
.dogy-v2 .df-footer a{color:#fff;text-decoration-color:rgba(255,255,255,.35)}
.dogy-v2 .df-footer a:hover,.dogy-v2 .df-footer a:focus-visible{color:var(--sand);text-decoration-color:var(--sand)}

/* Correcciones de encuadre, contraste y ritmo del formulario. */
.dogy-v2 .service-hero__visual img{object-position:78% center}
.dogy-v2 .df-contact__actions>a:not(.btn){color:#fff;transition:color .2s ease,border-color .2s ease}
.dogy-v2 .df-contact__actions>a:not(.btn):hover,.dogy-v2 .df-contact__actions>a:not(.btn):focus-visible{color:var(--navy);border-color:var(--navy)}
.dogy-v2 .contact-form-card .form-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:15px 14px}
.dogy-v2 .contact-form-card .form-grid>label{grid-column:span 2;align-content:start;min-width:0}
.dogy-v2 .contact-form-card .form-field__marker{display:block;height:8px;color:var(--copper);font-size:11px;line-height:8px}
.dogy-v2 .contact-form-card .form-grid>.form-field--raza,.dogy-v2 .contact-form-card .form-grid>.form-field--edad{grid-column:span 1}
.dogy-v2 .contact-form-card .form-grid>.form-field--nombre_mascota{grid-column:span 2}
.dogy-v2 .contact-form-card .form-grid>.form-field--mensaje,.dogy-v2 .contact-form-card .form-grid>.checkbox{grid-column:1/-1}
.dogy-v2 .contact-form-card .contact-form input:not([type=checkbox]){height:52px;min-height:52px;padding:0 15px}
.dogy-v2 .contact-form-card .contact-form textarea{height:132px;min-height:132px;padding:15px;resize:vertical}
@media(max-width:900px){.dogy-v2 .contact-form-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dogy-v2 .contact-form-card .form-grid>label{grid-column:span 1}.dogy-v2 .contact-form-card .form-grid>.form-field--nombre_mascota,.dogy-v2 .contact-form-card .form-grid>.form-field--mensaje,.dogy-v2 .contact-form-card .form-grid>.checkbox{grid-column:1/-1}}
@media(max-width:560px){.dogy-v2 .contact-form-card .form-grid{grid-template-columns:1fr}.dogy-v2 .contact-form-card .form-grid>label,.dogy-v2 .contact-form-card .form-grid>.form-field--nombre_mascota,.dogy-v2 .contact-form-card .form-grid>.form-field--mensaje,.dogy-v2 .contact-form-card .form-grid>.checkbox{grid-column:1}}

/* Últimos perros educados: contenido gestionado desde WordPress. */
.df-clients{padding:clamp(80px,9vw,125px) 0;overflow:hidden;background:#eee3d5}
.df-clients__head{display:flex;align-items:end;justify-content:space-between;gap:50px;padding:0 max(28px,7vw);margin-bottom:42px}
.df-clients__head>div:first-child{max-width:900px}
.df-clients__head h2{max-width:820px;margin:13px 0 16px;font:600 clamp(48px,5.6vw,82px)/.92 "Zilla Slab",serif;letter-spacing:-.05em}
.df-clients__head p{max-width:570px;margin:0;color:#62676d;font-size:16px}
.df-clients__controls{display:flex;gap:9px;padding-bottom:6px}
.df-clients__controls button{display:grid;width:50px;height:50px;padding:0;border:1px solid rgba(39,45,93,.2);border-radius:50%;color:var(--navy);background:transparent;cursor:pointer;place-items:center;font-size:20px;transition:color .2s ease,background .2s ease,transform .2s ease}
.df-clients__controls button:hover,.df-clients__controls button:focus-visible{color:#fff;background:var(--navy);outline:none;transform:translateY(-3px)}
.df-clients__track{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(220px,22vw,315px);gap:15px;overflow-x:auto;padding:6px max(28px,7vw) 28px;scroll-padding-inline:max(28px,7vw);scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--copper) transparent}
.df-client-dog{min-width:0;scroll-snap-align:start}
.df-client-dog figure{position:relative;height:390px;margin:0;overflow:hidden;border-radius:34px;background:var(--navy);box-shadow:0 18px 46px rgba(39,45,93,.13);transition:transform .35s ease,box-shadow .35s ease}
.df-client-dog:nth-child(3n+2) figure{height:345px;margin-top:45px}
.df-client-dog:nth-child(4n) figure{border-radius:150px 150px 34px 34px}
.df-client-dog img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.df-client-dog figure:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(20,25,55,.82))}
.df-client-dog figcaption{position:absolute;z-index:1;right:18px;bottom:18px;left:18px;color:#fff;transform:translateY(4px);transition:transform .35s ease}
.df-client-dog figcaption strong{display:block;font:600 clamp(28px,2.5vw,39px)/1 "Zilla Slab",serif}
.df-client-dog figcaption span{display:inline-block;margin-top:7px;color:var(--sand);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.df-client-dog:hover figure,.df-client-dog:focus-within figure{transform:translateY(-9px);box-shadow:0 27px 58px rgba(39,45,93,.22)}
.df-client-dog:hover img,.df-client-dog:focus-within img{transform:scale(1.065);filter:saturate(1.08)}
.df-client-dog:hover figcaption,.df-client-dog:focus-within figcaption{transform:none}
@media(max-width:700px){.df-clients__head{align-items:flex-start;flex-direction:column;padding:0 16px;margin-bottom:28px}.df-clients__head h2{font-size:46px}.df-clients__controls{display:none}.df-clients__track{grid-auto-columns:72vw;padding-right:16px;padding-left:16px;scroll-padding-inline:16px}.df-client-dog figure,.df-client-dog:nth-child(3n+2) figure{height:360px;margin-top:0}.df-client-dog:nth-child(even) figure{height:320px;margin-top:40px}}

/* Portada: artículos sin desbordamiento y galería editorial de familias Doggy. */
.dogy-v2 .df-blog .df-post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.dogy-v2 .df-blog .df-post-card{min-width:0}
.dogy-v2 .df-blog .df-post-img{width:100%}

.dogy-v2 .df-clients{position:relative;padding:clamp(80px,9vw,125px) max(28px,5vw) 80px;overflow:hidden;color:#fff;background:var(--navy)}
.dogy-v2 .df-blog{padding-top:90px}
.dogy-v2 .df-clients:before{position:absolute;right:-130px;top:-150px;width:390px;height:390px;border:68px solid rgba(242,197,92,.1);border-radius:50%;content:""}
.dogy-v2 .df-clients__head{position:relative;z-index:1;padding:0;margin:0 auto 45px;max-width:1500px;align-items:end}
.dogy-v2 .df-clients__head .tag{color:var(--sand)}
.dogy-v2 .df-clients__head h2{max-width:760px;color:#fff}
.dogy-v2 .df-clients__head p{color:rgba(255,255,255,.7)}
.dogy-v2 .df-clients__count{display:inline-flex;padding:10px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.dogy-v2 .df-clients__grid{position:relative;z-index:1;display:flex;gap:16px;max-width:1500px;margin:0 auto;flex-wrap:wrap}
.dogy-v2 .df-client-dog{height:245px;min-width:0;outline:none;flex:1 1 205px}
.dogy-v2 .df-client-dog:first-child{flex:2 1 420px}
.dogy-v2 .df-client-dog figure,.dogy-v2 .df-client-dog:nth-child(3n+2) figure,.dogy-v2 .df-client-dog:nth-child(even) figure{height:100%;margin:0;border:1px solid rgba(255,255,255,.09);border-radius:24px;background:#171d3d;box-shadow:none}
.dogy-v2 .df-client-dog:first-child figure{border-radius:44% 24px 24px 24px}
.dogy-v2 .df-client-dog:nth-child(5n) figure{border-radius:24px 90px 24px 24px}
.dogy-v2 .df-client-dog figure:after{inset:28% 0 0;background:linear-gradient(transparent,rgba(12,17,43,.88))}
.dogy-v2 .df-client-dog figcaption{right:17px;bottom:15px;left:17px;transform:none}
.dogy-v2 .df-client-dog figcaption>span{display:block;margin:0 0 6px;color:var(--sand);font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.dogy-v2 .df-client-dog figcaption strong{font-size:clamp(25px,2.1vw,37px)}
.dogy-v2 .df-client-dog figcaption small{display:block;margin-top:4px;color:rgba(255,255,255,.72);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.dogy-v2 .df-client-dog:hover figure,.dogy-v2 .df-client-dog:focus figure{box-shadow:0 22px 42px rgba(8,12,30,.35);transform:translateY(-6px)}
.dogy-v2 .df-client-dog:hover figcaption,.dogy-v2 .df-client-dog:focus figcaption{transform:translateY(-3px)}

@media(max-width:1000px){
	.dogy-v2 .df-blog .df-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.dogy-v2 .df-client-dog{flex-basis:210px}
	.dogy-v2 .df-client-dog:first-child{flex-basis:440px}
}
@media(max-width:760px){
	.dogy-v2 .df-blog .df-post-grid{grid-template-columns:minmax(0,1fr);gap:42px}
	.dogy-v2 .df-blog .df-post-card{width:100%;max-width:100%}
	.dogy-v2 .df-clients{padding:70px 16px}
	.dogy-v2 .df-blog{padding-top:65px}
	.dogy-v2 .df-clients__head{align-items:flex-start;gap:20px;margin-bottom:30px}
	.dogy-v2 .df-clients__head h2{font-size:46px}
	.dogy-v2 .df-clients__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:205px;gap:10px}
	.dogy-v2 .df-client-dog{height:auto}
	.dogy-v2 .df-client-dog:first-child{grid-column:1/-1;height:315px}
	.dogy-v2 .df-client-dog:first-child figure{border-radius:90px 24px 24px 24px}
	.dogy-v2 .df-client-dog:nth-child(5n) figure{border-radius:24px}
	.dogy-v2 .df-client-dog figcaption{right:13px;bottom:13px;left:13px}
	.dogy-v2 .df-client-dog figcaption strong{font-size:25px}
}

@media(max-width:900px){
	.dogy-v2 .menu-toggle{width:66px;padding:4px 7px}
	.dogy-v2 .menu-toggle>.menu-toggle__dog{display:grid;width:36px;height:36px;margin:0;border-radius:50%;background:#fffdf9;place-items:center;font-family:"Segoe UI Emoji","Apple Color Emoji",sans-serif;font-size:24px;line-height:1}
	.dogy-v2 .menu-toggle>.menu-toggle__chevron{display:grid;width:15px;height:20px;margin:0 2px 2px 0;place-items:center;font-size:21px;font-weight:700;line-height:1}
}

/* Familias Doggy: presencia secundaria y separada visualmente del equipo. */
.dogy-v2 .df-clients{padding:78px max(28px,5vw) 82px;color:var(--navy);background:#fffdf9}
.dogy-v2 .df-clients:before{display:none}
.dogy-v2 .df-clients__head{margin-bottom:34px;align-items:start}
.dogy-v2 .df-clients__head>div:first-child{max-width:760px}
.dogy-v2 .df-clients__head .tag{color:var(--rust)}
.dogy-v2 .df-clients__head h2{max-width:680px;margin:10px 0 12px;color:var(--navy);font-size:clamp(40px,4vw,58px);line-height:.96}
.dogy-v2 .df-clients__head p{max-width:620px;color:#62676d;font-size:15px}
.dogy-v2 .df-clients__grid{display:flex;max-width:1400px;gap:28px 18px;justify-content:center}
.dogy-v2 .df-client-dog,.dogy-v2 .df-client-dog:first-child{height:auto;min-width:0;max-width:245px;flex:0 1 calc(20% - 15px)}
.dogy-v2 .df-client-dog figure,.dogy-v2 .df-client-dog:first-child figure,.dogy-v2 .df-client-dog:nth-child(3n+2) figure,.dogy-v2 .df-client-dog:nth-child(even) figure,.dogy-v2 .df-client-dog:nth-child(5n) figure{height:auto;margin:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}
.dogy-v2 .df-client-dog figure:after{display:none}
.dogy-v2 .df-client-dog img{position:static;display:block;width:100%;height:180px;border-radius:20px;object-fit:cover;box-shadow:0 12px 28px rgba(39,45,93,.1)}
.dogy-v2 .df-client-dog figcaption{position:static;margin-top:12px;color:var(--navy);transform:none}
.dogy-v2 .df-client-dog figcaption>span{margin-bottom:4px;color:var(--rust);font-size:8px}
.dogy-v2 .df-client-dog figcaption strong{color:var(--navy);font-size:25px}
.dogy-v2 .df-client-dog figcaption small{margin-top:3px;color:#73767c;font-size:8px}
.dogy-v2 .df-client-dog:hover figure,.dogy-v2 .df-client-dog:focus figure{box-shadow:none;transform:none}
.dogy-v2 .df-client-dog:hover img,.dogy-v2 .df-client-dog:focus img{box-shadow:0 17px 34px rgba(39,45,93,.16);transform:translateY(-4px)}
.dogy-v2 .df-client-dog:hover figcaption,.dogy-v2 .df-client-dog:focus figcaption{transform:none}

@media(max-width:900px){
	.dogy-v2 .df-client-dog,.dogy-v2 .df-client-dog:first-child{max-width:none;flex-basis:calc(33.333% - 12px)}
}
@media(max-width:600px){
	.dogy-v2 .df-clients{padding:62px 16px 66px}
	.dogy-v2 .df-clients__head{margin-bottom:28px}
	.dogy-v2 .df-clients__head h2{font-size:40px}
	.dogy-v2 .df-clients__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 10px}
	.dogy-v2 .df-client-dog,.dogy-v2 .df-client-dog:first-child{grid-column:auto;width:auto;max-width:none;height:auto}
	.dogy-v2 .df-client-dog:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 5px);justify-self:center}
	.dogy-v2 .df-client-dog img{height:145px;border-radius:16px}
	.dogy-v2 .df-client-dog figcaption{margin-top:9px}
	.dogy-v2 .df-client-dog figcaption strong{font-size:22px}
}

/* Familias Doggy como franja automática de bajo peso visual. */
.dogy-v2 .df-clients{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:clamp(30px,5vw,75px);padding:48px max(28px,5vw);align-items:center;border-top:1px solid rgba(39,45,93,.1);border-bottom:1px solid rgba(39,45,93,.1)}
.dogy-v2 .df-clients__head{display:block;margin:0}
.dogy-v2 .df-clients__head h2{margin:8px 0 9px;font-size:clamp(34px,3vw,46px);line-height:.98}
.dogy-v2 .df-clients__head p{max-width:330px;font-size:13px;line-height:1.55}
.dogy-v2 .df-clients__viewport{min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.dogy-v2 .df-clients__grid{display:flex;width:max-content;max-width:none;margin:0;padding:5px 0;gap:14px;justify-content:flex-start;flex-wrap:nowrap;animation:dogy-clients-marquee 34s linear infinite;will-change:transform}
.dogy-v2 .df-clients__viewport:hover .df-clients__grid,.dogy-v2 .df-clients__viewport:focus-within .df-clients__grid{animation-play-state:paused}
.dogy-v2 .df-client-dog,.dogy-v2 .df-client-dog:first-child{width:155px;max-width:none;height:auto;flex:0 0 155px}
.dogy-v2 .df-client-dog img{width:72px;height:72px;border-radius:50%;box-shadow:none}
.dogy-v2 .df-client-dog figure,.dogy-v2 .df-client-dog:first-child figure{display:grid;grid-template-columns:72px minmax(0,1fr);gap:11px;align-items:center}
.dogy-v2 .df-client-dog figcaption{min-width:0;margin:0}
.dogy-v2 .df-client-dog figcaption>span{display:none}
.dogy-v2 .df-client-dog figcaption strong{font-size:20px;line-height:1}
.dogy-v2 .df-client-dog figcaption small{overflow:hidden;margin-top:5px;text-overflow:ellipsis;white-space:nowrap}
.dogy-v2 .df-client-dog:hover img,.dogy-v2 .df-client-dog:focus img{box-shadow:0 10px 24px rgba(39,45,93,.13);transform:scale(1.04)}
@keyframes dogy-clients-marquee{to{transform:translate3d(calc(-1 * var(--dogy-clients-distance,0px)),0,0)}}

@media(max-width:760px){
	.dogy-v2 .df-clients{grid-template-columns:minmax(145px,42%) minmax(0,1fr);gap:18px;padding:38px 16px}
	.dogy-v2 .df-clients__head h2{font-size:29px}
	.dogy-v2 .df-clients__head p{display:none}
	.dogy-v2 .df-clients__grid{display:flex;grid-template-columns:none;gap:12px}
	.dogy-v2 .df-client-dog,.dogy-v2 .df-client-dog:first-child,.dogy-v2 .df-client-dog:last-child:nth-child(odd){grid-column:auto;width:138px;max-width:none;height:auto;justify-self:auto;flex:0 0 138px}
	.dogy-v2 .df-client-dog figure,.dogy-v2 .df-client-dog:first-child figure{grid-template-columns:58px minmax(0,1fr)}
	.dogy-v2 .df-client-dog img{width:58px;height:58px}
	.dogy-v2 .df-client-dog figcaption strong{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
	.dogy-v2 .df-clients__viewport{overflow-x:auto;mask-image:none;-webkit-mask-image:none}
	.dogy-v2 .df-clients__grid{animation:none}
}
