@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#17212d;--blue:#193dc7;--orange:#ff754a;--paper:#fff;--soft:#f3f5f8;--line:#dce1e8;--muted:#586574;--navy:#142451}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3,.brand{font-family:Manrope,Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e85b2e;outline-offset:5px}img{max-width:100%;display:block}p{margin:0 0 20px}h1,h2,h3{margin:0;font-weight:600}em{font-style:normal;color:var(--blue)}.container{width:min(1280px,88%);margin:auto}.header{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 6%;border-bottom:1px solid var(--line);background:white;position:relative;z-index:10}.brand{font-size:36px;font-weight:800;letter-spacing:-2px;text-decoration:none;line-height:1}.brand span{color:var(--orange)}nav{display:flex;gap:30px}nav a{font-size:14px;font-weight:600;text-decoration:none}nav a:hover{color:var(--blue)}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:17px 23px;min-height:52px;border:1px solid transparent;border-radius:5px;background:var(--blue);color:white;font-weight:600;font-size:15px;text-decoration:none;transition:transform .18s,background .18s}.button:hover{background:#102ca2;transform:translateY(-2px)}.button.small{font-size:14px;padding:12px 18px;min-height:46px;gap:24px}.button.orange{background:var(--orange);color:#192337}.button.orange:hover{background:#ff946f}.button:disabled{opacity:.65;cursor:wait;transform:none}.menu-toggle{display:none}.hero{padding-top:57px}.hero-kicker{display:flex;justify-content:space-between;gap:20px}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700;margin:0 0 24px;color:var(--blue)}.hero-location{color:var(--muted);font-size:14px}h1{font-size:clamp(56px,7.9vw,112px);line-height:1.08;letter-spacing:-.065em;margin:10px 0 32px}.hero-base{display:flex;justify-content:space-between;align-items:center;gap:45px;padding-bottom:48px}.hero-base>p{max-width:540px;font-size:19px;line-height:1.6;color:var(--muted);margin:0}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.inline-link{font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:3px}.discipline-strip{display:flex;justify-content:space-between;gap:24px;padding:23px 0;border-top:1px solid var(--line);font-size:14px}.discipline-strip b{color:var(--blue);font-size:12px;margin-right:13px}.work-section{background:var(--soft);padding:80px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-heading>p,.section-heading>div+div{max-width:370px;color:var(--muted);font-size:16px}.section-heading p:last-child{margin-bottom:0}h2{font-size:clamp(34px,4.1vw,56px);line-height:1.15;letter-spacing:-.045em}h3{font-size:24px;line-height:1.3;letter-spacing:-.025em}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 28px}.project-visual{height:340px;overflow:hidden;background:#e2e6ec;border-radius:7px;position:relative}.project-visual img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .5s}.project-card a:hover img{transform:scale(1.025)}.project-type{display:grid;place-items:center;background:var(--navy);color:white;font-size:58px;font-weight:700;letter-spacing:-3px}.project-type.light{background:#dfe7f5;color:var(--navy)}.project-type .dot{color:var(--orange)}.project-card a{text-decoration:none}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px}.project-caption h3{font-size:22px}.project-caption p{color:var(--muted);font-size:14px;margin:4px 0 0}.pill{font-size:12px;white-space:nowrap;border:1px solid #cbd2dc;border-radius:30px;padding:4px 10px}.services-section{padding:92px 0}.service-list article{display:grid;grid-template-columns:190px 1fr 60px;gap:35px;border-top:1px solid var(--line);padding:35px 0}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:12px;font-weight:700;color:var(--blue);letter-spacing:.07em;padding-top:6px}.service-list h3{font-size:32px}.service-list p{max-width:640px;color:var(--muted);margin:14px 0 20px}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{font-size:13px;background:var(--soft);padding:4px 11px;border-radius:3px}.service-list article>a{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;text-decoration:none;font-size:24px}.service-list article>a:hover{background:var(--blue);color:white}.film-section{background:var(--navy);color:white;padding:85px 0}.film-section .eyebrow{color:#a5b8ff}.film-section .section-heading>div+div{color:#c2cbe0}.film-section .inline-link{color:white}.film-empty{padding:46px;background:#213360;border:1px solid #415482;border-radius:6px;min-height:260px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.film-label{font-size:12px;letter-spacing:.12em;color:#bfcff7;font-weight:600}.film-empty h3{font-size:34px;line-height:1.25;margin:17px 0}.film-empty p{color:#c2cbe0;max-width:520px;margin:0}.film-formats{display:flex;justify-content:space-between;gap:20px;font-size:14px;color:#c2cbe0;margin-top:24px}.video-gallery.has-videos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.video-card{border:0;background:transparent;text-align:left;color:white;padding:0}.video-cover{position:relative;aspect-ratio:4/5;background:#213360;overflow:hidden;border-radius:5px;display:grid;place-items:center}.video-cover img{width:100%;height:100%;object-fit:cover}.play{position:absolute;border-radius:50%;width:56px;height:56px;background:white;color:var(--navy);display:grid;place-items:center;left:calc(50% - 28px);top:calc(50% - 28px)}.video-card h3{font-size:20px;margin-top:15px}.video-card p{font-size:14px;color:#c2cbe0}.process-section{padding:92px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article>span{color:var(--blue);font-size:14px;font-weight:700}.steps h3{margin:20px 0 12px;font-size:23px}.steps p{color:var(--muted);margin:0}.contact-section{background:var(--blue);color:white;padding:85px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-section .eyebrow{color:#c6d1ff}.contact-section h2{font-size:clamp(38px,4vw,55px)}.contact-section em{color:#ffb498}.contact-section p{color:#d6dfff;margin-top:26px}.contact-section label{display:block;font-size:14px;font-weight:600;margin-bottom:18px}.contact-section input,.contact-section select,.contact-section textarea{display:block;width:100%;background:#1534aa;color:white;border:1px solid #7c91df;border-radius:4px;padding:11px 14px;margin-top:6px;min-height:48px}.contact-section input::placeholder,.contact-section textarea::placeholder{color:#c3cffa;opacity:1}.contact-section select option{background:#1534aa}.contact-section .form-privacy{font-size:13px;margin:0 0 18px}.contact-section .form-status{font-size:14px;margin:14px 0 0}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:38px 0}.footer p,.footer>span{font-size:13px;color:var(--muted);margin:0}.skip{position:absolute;left:-10000px;top:10px}.skip:focus{left:10px;background:white;padding:10px;z-index:30}dialog{width:min(900px,94vw);border:0;background:var(--navy);color:white;border-radius:8px;padding:24px}dialog::backdrop{background:#060d1cdd}dialog h2{font-size:24px;margin:15px 0}dialog video{width:100%;max-height:70vh}.close-dialog{background:transparent;color:white;border:1px solid #8c9ebd;border-radius:4px;padding:7px 13px;display:block;margin-left:auto}@media(min-width:1600px){.hero{padding-top:70px}.hero-base{padding-bottom:70px}}@media(max-width:1000px){.header nav{gap:18px}.header .button{display:none}.hero-base{align-items:flex-start}.project-visual{height:260px}.project-caption{align-items:flex-start}.pill{display:none}.contact-grid{gap:40px}.service-list article{grid-template-columns:140px 1fr 48px;gap:20px}}@media(max-width:650px){html{scroll-padding-top:20px}.container{width:88%}.header{min-height:78px;padding:20px 6%}.brand{font-size:31px}.header nav{display:none}.header nav.open{display:flex;position:absolute;top:78px;left:0;right:0;background:white;padding:22px 6%;border-bottom:1px solid var(--line);flex-direction:column;gap:20px}.menu-toggle{display:block;background:white;border:1px solid var(--line);border-radius:4px;padding:7px 12px;font-size:14px}.hero{padding-top:36px}.hero-location{display:none}.eyebrow{font-size:11px;letter-spacing:.1em;margin-bottom:20px}h1{font-size:clamp(44px,10.6vw,70px);letter-spacing:-.055em;margin:8px 0 24px}.hero-base{flex-direction:column;gap:25px;padding-bottom:35px}.hero-base>p{font-size:17px}.hero-actions{width:100%}.discipline-strip{flex-direction:column;gap:9px;font-size:13px;padding:20px 0}.section-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:30px}.section-heading>p{font-size:15px}.work-section,.film-section,.contact-section{padding:52px 0}.services-section,.process-section{padding:55px 0}.project-grid{grid-template-columns:1fr;gap:30px}.project-visual{height:auto;aspect-ratio:1.5}.project-caption p{font-size:13px}.service-list article{grid-template-columns:1fr 44px;gap:15px;padding:28px 0}.service-number{grid-column:1 / -1}.service-list h3{font-size:26px}.tags span{font-size:12px}.service-list p{font-size:15px}.steps{grid-template-columns:1fr;gap:30px}.steps h3{margin-top:10px}.film-formats{flex-direction:column;gap:7px;font-size:13px}.film-empty{padding:25px}.film-empty h3{font-size:28px}.video-gallery.has-videos{grid-template-columns:1fr 1fr;gap:18px 12px}.video-card h3{font-size:17px}.contact-grid{grid-template-columns:1fr;gap:30px}.footer{flex-wrap:wrap;gap:20px}.footer p{width:100%;order:3}.footer>span{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.project-visual.product-shot{padding:30px;background:#dce8fc;display:flex;align-items:center}.project-visual.product-shot img{height:auto;object-fit:contain;border-radius:5px;box-shadow:0 12px 30px #183a6730}.project-type.vuelves-brand{background:#f6ead7;color:#243b2f;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:62px;font-weight:800}.vuelves-brand .dot{color:#ab431f}.project-type small{font-size:14px;font-weight:500;letter-spacing:0;display:block;margin-top:12px}.project-type.penal-brand{background:#14253b;color:white;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:35px 50px;font-family:Georgia,serif;line-height:1.08;letter-spacing:2px;font-size:43px}.penal-brand small{color:#c0cde0;font-family:'DM Sans',sans-serif;margin-top:25px}.aedo-shot{background:#081414;display:flex;align-items:center;padding:20px}.aedo-shot img{object-fit:contain;height:auto}#direct-contact{display:flex;flex-wrap:wrap;gap:20px}#direct-contact a{color:white;overflow-wrap:anywhere}
.pricing-section{background:var(--soft);padding:88px 0}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;padding-top:14px}.pricing-card{position:relative;display:flex;flex-direction:column;padding:30px 26px;background:white;border:1px solid var(--line);border-radius:8px}.plan-label{font-size:12px;font-weight:700;letter-spacing:.07em;color:var(--blue);margin-bottom:14px}.pricing-card h3{font-size:26px;margin-bottom:22px}.plan-price{font-family:Manrope,Arial,sans-serif;font-size:clamp(28px,2.8vw,39px);font-weight:800;letter-spacing:-.04em;line-height:1.2;margin:0 0 8px;white-space:nowrap}.plan-price span{font-family:'DM Sans',Arial,sans-serif;font-size:13px;font-weight:500;letter-spacing:0}.plan-tax{font-size:12px;color:var(--muted);margin-bottom:24px}.plan-description{font-size:16px;color:var(--muted);min-height:80px}.plan-features{list-style:none;padding:0;margin:0 0 22px}.plan-features li{padding:12px 0 12px 20px;border-bottom:1px solid var(--line);font-size:14px;position:relative}.plan-features li::before{content:'✓';position:absolute;left:0;color:var(--blue);font-weight:700}.plan-scope{font-size:13px;color:var(--muted);margin:0 0 26px}.pricing-cta{margin-top:auto;font-size:14px;gap:8px;width:100%;text-align:center;padding:15px 12px}.pricing-card.featured{background:var(--blue);color:white;border-color:var(--blue)}.recommended{position:absolute;top:-15px;left:24px;background:var(--orange);color:var(--ink);font-size:12px;letter-spacing:.08em;font-weight:700;padding:5px 12px;border-radius:4px}.featured .plan-label{color:#dce4ff}.featured .plan-tax,.featured .plan-description{color:#d6dfff}.featured .plan-features li{border-color:#697fdd}.featured .plan-features li::before{color:#ffc5b1}.plan-saving{border:1px solid #7086e2;border-radius:4px;padding:14px;margin:0 0 25px;display:flex;flex-direction:column;gap:4px}.plan-saving span{font-size:13px;color:#d6dfff}.plan-saving strong{font-size:18px;color:white}.custom-pricing{margin-top:36px}.custom-pricing article{display:grid;grid-template-columns:1fr 290px;gap:40px;border-top:1px solid #ccd4e0;padding:28px 0}.custom-pricing h3{font-size:25px;margin:8px 0 12px}.custom-pricing article>div>p{color:var(--muted);font-size:15px;max-width:660px;margin:0}.custom-price{align-self:center}.custom-price p{color:var(--ink)!important;font-size:14px!important}.custom-price strong{font-size:27px;letter-spacing:-.03em}.custom-price span{display:block;font-size:12px;color:var(--muted);margin-bottom:14px}.pricing-conditions{padding-top:25px;border-top:1px solid #ccd4e0;margin-top:5px;max-width:1050px}.pricing-conditions h3{font-size:20px;margin-bottom:15px}.pricing-conditions p{font-size:13px;color:var(--muted);margin-bottom:12px}@media(max-width:1100px){.pricing-card{padding:28px 20px}.pricing-card h3{font-size:23px}.plan-price{font-size:30px}.plan-description{min-height:110px}}@media(max-width:850px){.pricing-grid{grid-template-columns:1fr;gap:28px}.pricing-card{padding:30px}.plan-price{font-size:38px}.plan-description{min-height:0}.pricing-cta{margin-top:10px}.custom-pricing article{grid-template-columns:1fr;gap:20px}.custom-price{padding-bottom:5px}.pricing-card h3{font-size:27px}}@media(max-width:650px){.pricing-section{padding:52px 0}.pricing-card{padding:28px 23px}.plan-price{font-size:35px}.pricing-conditions p{font-size:14px}.plan-tax{font-size:13px}}

.reels-section{padding:85px 0;background:var(--soft)}.film-subtitle{margin:0 0 26px}.reels-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1fr);gap:64px;align-items:start}.reels-section .video-gallery.has-videos{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.reels-section .video-card{color:var(--ink);max-width:320px;width:100%}.reels-section .video-card p{color:var(--muted)}.reels-section .video-cover{aspect-ratio:9/16}.reels-section .video-cover img{object-fit:contain}.reel-specs{padding:32px;background:white;border:1px solid var(--line);border-radius:8px}.reel-specs h3{margin-bottom:16px}.reel-specs dl{margin:24px 0}.reel-specs dl div{padding:14px 0;border-top:1px solid var(--line)}.reel-specs dt{color:var(--muted);font-size:13px}.reel-specs dd{margin:3px 0 0;font-weight:600}.reel-note,.video-specs{font-size:13px}.reel-note{color:var(--muted)}@media(max-width:650px){.reels-section{padding:52px 0}.reels-layout{grid-template-columns:1fr;gap:28px}.reel-specs{padding:24px}.reels-section .video-card{max-width:100%}}

/* Shared rows keep reel covers, titles and descriptions aligned. */
.reels-layout{display:flex;flex-direction:column;gap:36px}.reels-layout>div{width:100%}.reels-section .video-gallery.has-videos{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}.reels-section .video-card{max-width:none;display:grid;grid-template-rows:subgrid;grid-row:span 4;gap:12px;align-items:start}.reels-section .video-card h3,.reels-section .video-card p{margin:0}.reels-section .video-cover{width:100%;aspect-ratio:9/16}.reel-specs dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.reel-specs .reel-note{max-width:850px}.platform-list{display:flex;flex-wrap:wrap;gap:14px}.platform-list>span{display:inline-flex;align-items:center;gap:9px;font-weight:600;border:1px solid var(--line);border-radius:6px;padding:10px 15px}.platform-list img{width:24px;height:24px;object-fit:contain}.social-platforms{margin-bottom:30px}.platform-context{margin-top:36px}.platform-context p{margin-bottom:12px;color:#c2cbe0}.platform-context .platform-list img{filter:invert(1)}.platform-context small{display:block;margin-top:12px;color:#c2cbe0;font-size:12px}.booking-wordmark{font-weight:800!important}.admin-showcase{display:grid;grid-template-columns:1fr 1.4fr;gap:36px;align-items:center;margin-top:55px;padding-top:40px;border-top:1px solid var(--line)}.admin-showcase p:not(.eyebrow){color:var(--muted);margin:15px 0 24px}.admin-showcase img{border:1px solid var(--line);border-radius:8px;width:100%;height:auto}#project-dialog{width:min(1250px,96vw)}#project-dialog img{width:100%;height:auto}#direct-contact{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:28px}.email-contact{overflow-wrap:anywhere;max-width:100%}.whatsapp-contact{background:#25d366;color:#102c1c;gap:12px;flex-wrap:wrap}.whatsapp-contact small{font-size:11px;padding:2px 7px;border-radius:20px;background:#ffffffb3}.whatsapp-contact[aria-disabled=true]{cursor:default;opacity:1}.whatsapp-contact[aria-disabled=true]:hover{background:#25d366;transform:none}@media(max-width:900px){.reels-section .video-gallery.has-videos{grid-template-columns:repeat(2,minmax(0,1fr))}.reel-specs dl{grid-template-columns:1fr 1fr}.admin-showcase{grid-template-columns:1fr}}@media(max-width:440px){.reels-section .video-gallery.has-videos{gap:12px}.reels-section .video-card h3{font-size:15px}.reels-section .video-card p{font-size:12px}.reel-specs dl{grid-template-columns:1fr}.whatsapp-contact{font-size:14px;gap:8px}}

.lodging-platforms{margin:0 0 36px;padding:26px 30px;background:#fff;border-radius:8px;color:var(--ink)}.lodging-platforms p{color:var(--muted);margin-bottom:16px}.lodging-logos{display:flex;flex-wrap:wrap;align-items:center;gap:24px 48px}.lodging-logos>div{min-height:52px;display:flex;align-items:center;gap:12px}.lodging-logos .booking-logo{width:220px;height:auto;filter:none}.airbnb-logo{font-size:30px;font-weight:700;color:#ff385c}.airbnb-logo img{width:44px;height:44px;filter:invert(37%) sepia(84%) saturate(3152%) hue-rotate(330deg) brightness(105%) contrast(103%)}.lodging-platforms small{color:var(--muted);margin-top:18px}.contact-success{align-self:start;background:white;color:var(--ink);border-radius:12px;padding:38px;box-shadow:0 16px 45px #102ca230}.contact-success[hidden],#contact-form[hidden]{display:none!important}.contact-success .success-check{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#e1f7e9;color:#177440;font-size:34px;margin-bottom:25px}.contact-success .eyebrow{color:var(--blue);margin:0 0 15px}.contact-success h3{font-size:34px;line-height:1.15}.contact-success h3:focus{outline:none}.contact-success p{color:var(--muted);margin-top:20px}.contact-success .success-email{color:var(--blue);font-weight:700;overflow-wrap:anywhere;margin-top:12px}.contact-success .success-next{font-size:14px}.contact-success .button{margin-top:8px}@media(max-width:650px){.lodging-platforms{padding:22px}.lodging-logos{gap:18px}.lodging-logos .booking-logo{width:200px}.contact-success{padding:28px}.contact-success h3{font-size:30px}}
