/* Dani Tala y Poda · Captación R9. Tipografía y colores continúan el diseño de la web. */
:root { --r9-ink:#193c2e; --r9-muted:#5a7061; --r9-line:#dce3d8; }
.skip-link { position:fixed;left:20px;top:-100px;z-index:400;background:white;padding:14px;color:var(--r9-ink); }
.skip-link:focus { top:12px; }
.r9-nav { min-height:100px;gap:20px; }
.r9-logo { width:72px;height:72px;object-fit:contain; }
.r9-nav nav { gap:22px; }
.r9-nav-phone { display:inline-flex;align-items:center;gap:6px;font-weight:650;white-space:nowrap; }
.r9-nav-phone svg { width:18px; }
.r9-hero { display:grid;grid-template-columns:1.08fr 1fr;gap:clamp(30px,5vw,80px);padding-top:28px;padding-bottom:56px;align-items:center; }
.r9-hero-copy { padding:20px 0; }
.r9-hero h1 { font-family:Serif,Georgia,serif;font-weight:400;font-size:clamp(42px,4.7vw,72px);line-height:1.06;letter-spacing:-1.8px;margin:22px 0; }
.r9-hero h1 em { color:#67784f;font-style:normal; }
.r9-hero-copy>p { max-width:540px;line-height:1.8;font-size:15px;color:var(--r9-muted); }
.r9-hero-copy p.r9-hero-service { font-weight:650;color:var(--r9-ink);font-size:17px;margin:16px 0 8px; }
.r9-hero-photo { margin:0;position:relative;border-radius:10px;overflow:hidden;background:#e8ecdf; }
.r9-hero-photo>img { width:100%;height:590px;max-height:65vw;object-fit:cover;display:block; }
.r9-hero-photo figcaption { position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(10,35,22,.85));padding:60px 28px 27px;color:#fff; }
.r9-hero-photo figcaption span { font:30px Serif,Georgia,serif;display:block;margin-bottom:8px; }
.r9-hero-photo figcaption small { font-size:12px;color:#f1f3e8;display:block;line-height:1.6; }
.r9-actions { display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 20px; }
.r9-actions .button { min-height:52px;padding:15px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-align:center;line-height:1.4;white-space:normal;box-sizing:border-box; }
a.button.r9-wa { background:#176443;color:white;border:1px solid #2c7956; }
a.button.r9-wa:hover { background:#104e33;color:white; }
a.button.r9-call { background:transparent;border:1px solid #b9c9b9;color:var(--r9-ink); }
.contact a.button.r9-call { color:#fff;border-color:#759681; }
.r9-wa svg,.r9-call svg { width:23px;height:23px;flex:0 0 23px; }
.r9-text-link { display:inline-flex;align-items:center;gap:10px;font-weight:600;line-height:1.6;color:inherit;text-underline-offset:5px; }
.r9-text-link svg { width:20px; }
.r9-trust { margin:30px 0 0;padding:22px 0 0;border-top:1px solid var(--r9-line);list-style:none;display:flex;gap:12px 22px;flex-wrap:wrap; }
.r9-trust li { display:flex;align-items:center;gap:7px;font-size:12px;color:#526a57;line-height:1.5; }
.r9-trust svg { width:15px;height:15px;flex:none; }
.r9-services { border-top:1px solid var(--r9-line); }
.r9-service-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px; }
.r9-service-card { display:flex;flex-direction:column;padding:29px 26px;background:#f0f2e9;border:1px solid #dfe6d9;border-radius:8px;text-decoration:none;transition:transform .2s,background .2s;min-width:0; }
.r9-service-card:hover { transform:translateY(-4px);background:#e8eddf; }
.r9-service-no { color:#8d7852;font-size:12px;letter-spacing:2px; }
.r9-service-card h3 { font:29px Serif,Georgia,serif;line-height:1.2;margin:24px 0 12px; }
.r9-service-card p { font-size:14px;line-height:1.75;color:var(--r9-muted);margin-bottom:30px; }
.r9-service-link { margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:650; }
.r9-service-link svg { width:20px;flex:none; }
.r9-film { display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-top:30px;margin-bottom:70px;background:#ecf0e5;padding:50px;border-radius:8px; }
.r9-film h2 { font:clamp(36px,4vw,56px)/1.08 Serif,Georgia,serif;margin:22px 0; }
.r9-film p { line-height:1.8;margin-bottom:25px;color:var(--r9-muted);font-size:14px; }
.r9-film video { width:100%;max-height:520px;aspect-ratio:9/16;object-fit:contain;background:#183b2c;border-radius:6px; }
.r9-zones { padding-top:35px;padding-bottom:75px;max-width:850px;text-align:center; }
.r9-zones h2 { margin:20px 0;font:clamp(36px,4vw,56px)/1.1 Serif,Georgia,serif; }
.r9-zones p { font-size:15px;line-height:1.85;color:var(--r9-muted);margin-bottom:22px; }
.r9-contact-info { margin-top:25px;font-size:13px;line-height:1.8; }
.r9-contact-info p { display:flex;align-items:center;gap:10px;margin:10px 0!important;font-size:13px!important; }
.r9-contact-info .icon { width:18px;height:18px;flex:none; }
.r9-contact-info a { color:inherit;text-underline-offset:4px;overflow-wrap:anywhere; }
.r9-contact-form { border:1px solid #6e8c77;border-radius:8px;padding:28px; }
.r9-contact-form>p { font-size:13px!important;line-height:1.65!important;margin:0!important; }
.r9-contact-form h3 { font:32px Serif,Georgia,serif;color:#fff; }
.r9-optional { border-top:1px solid #65836c;border-bottom:1px solid #65836c;padding:16px 0; }
.r9-optional summary { font-size:13px;line-height:1.7;cursor:pointer; }
.r9-optional summary span { font-size:11px;opacity:.8;margin-left:6px; }
.r9-optional>div { padding-top:20px; }
.r9-contact-form .r9-privacy-note { font-size:11px!important;line-height:1.65!important;color:#c4d3be; }
.r9-contact-form .check { line-height:1.7; }
.r9-contact-form .check a { color:inherit;text-decoration:underline; }
.r9-contact-form .input { font-size:16px; }
#r9-form-status { font-size:14px;line-height:1.6; }
.r9-footer .footer-top { gap:25px; }
.r9-footer .footer-top p { margin-top:12px;line-height:1.7;max-width:550px;font-size:13px; }
.r9-legal-links { display:flex;flex-wrap:wrap;gap:14px 24px;padding:25px 0;border-top:1px solid var(--r9-line);font-size:12px;line-height:1.6; }
.r9-legal-links button { background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px; }

.r9-legal { max-width:900px;padding-top:45px;padding-bottom:90px;overflow-wrap:anywhere; }
.r9-legal>.overline { margin-top:40px; }
.r9-legal h1 { margin:18px 0;font:clamp(36px,5vw,56px)/1.15 Serif,Georgia,serif; }
.r9-legal-date { font-size:12px;color:#667c68;margin-bottom:35px; }
.r9-legal section { margin:30px 0;border-top:1px solid var(--r9-line);padding-top:25px; }
.r9-legal h2 { font:28px/1.25 Serif,Georgia,serif;margin-bottom:15px; }
.r9-legal p { font-size:14px;line-height:1.9;margin-bottom:16px;color:#415b48; }
.r9-legal a { text-decoration:underline;text-underline-offset:4px; }
.r9-legal-data { display:grid;grid-template-columns:180px 1fr;gap:12px;font-size:14px;line-height:1.7;margin:20px 0; }
.r9-legal-data dt { color:#667b67; }
.r9-legal-data dd { margin:0; }
.r9-table-wrap { overflow-x:auto; }
.r9-legal table { border-collapse:collapse;width:100%;font-size:12px;line-height:1.6; }
.r9-legal td,.r9-legal th { text-align:left;padding:14px 10px;border:1px solid var(--r9-line);vertical-align:top;min-width:130px; }
.r9-service-video { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:25px; }
.r9-service-video video { width:100%;aspect-ratio:9/16;object-fit:contain;background:#183b2c;border-radius:6px; }
.r9-service-video figcaption { font-size:13px;line-height:1.7;padding-top:10px; }
.r9-cookie-banner { position:fixed;z-index:180;bottom:24px;left:24px;right:24px;margin:auto;max-width:1050px;padding:24px 28px;box-sizing:border-box;display:grid;grid-template-columns:1.3fr 1fr;gap:25px;align-items:center;background:#fffef7;color:#193c2e;border:1px solid #bacab4;border-radius:12px;box-shadow:0 12px 60px #102a2229;max-height:70vh;overflow:auto; }
.r9-cookie-banner h2 { font:26px Serif,Georgia,serif;margin-bottom:10px; }
.r9-cookie-banner p,.r9-cookie-dialog p { font-size:13px;line-height:1.7;margin-bottom:10px; }
.r9-cookie-banner a,.r9-cookie-dialog a { text-decoration:underline;text-underline-offset:4px;color:inherit; }
.r9-cookie-actions { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.r9-cookie-action { background:#193c2e;color:#fff;border:1px solid #193c2e;border-radius:6px;padding:13px 15px;min-height:48px;font:600 12px/1.4 Sans,Arial,sans-serif;cursor:pointer; }
.r9-cookie-action:hover { background:#2c503b; }
.r9-cookie-action:last-child { grid-column:1/-1; }
.r9-cookie-dialog { max-width:580px;width:calc(100% - 36px);padding:30px;border:1px solid #c8d6c1;border-radius:12px;max-height:85dvh;overflow:auto;background:#fffef7;color:#193c2e; }
.r9-cookie-dialog::backdrop { background:#0b201ac9; }
.r9-cookie-dialog h2 { font:32px/1.2 Serif,Georgia,serif;margin-bottom:18px; }
.r9-cookie-option { display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--r9-line); }
.r9-cookie-option strong { font-size:15px; }
.r9-cookie-option p { margin:8px 0 0; }
.r9-cookie-option>span { font-size:11px;min-width:85px; }
.r9-cookie-option input { width:23px;height:23px;min-width:23px;accent-color:#193c2e; }
.r9-cookie-dialog .r9-cookie-actions { margin-top:25px; }
.r9-cookie-close { display:block;margin:20px auto 0;background:none;color:#193c2e;border:0;min-height:44px;padding:8px 15px;font:inherit;text-decoration:underline;cursor:pointer; }
@media(max-width:1050px) {
 .r9-nav nav { gap:13px; }.r9-nav-phone { display:none; }
 .r9-hero { gap:28px; }.r9-hero h1 { font-size:clamp(39px,5vw,64px); }
 .r9-actions .button { flex:1 1 175px; }
 .r9-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .r9-film { gap:35px;padding:30px; }
}
@media(max-width:768px) {
 .r9-nav { display:block!important;padding-top:14px;padding-bottom:18px;min-height:0; }
 .r9-logo { width:62px;height:62px; }.r9-nav .wordmark strong { font-size:19px; }
 .r9-nav nav { margin-top:16px;display:flex!important;flex-wrap:wrap;gap:14px;justify-content:space-between; }
 .r9-nav nav>a:not(.r9-nav-phone) { display:inline-flex!important;font-size:12px; }
 .r9-nav nav>.r9-nav-phone { display:none!important; }
 .r9-nav nav>.button { padding:11px 13px; }
 .r9-hero { grid-template-columns:1fr;padding-top:8px;padding-bottom:35px;gap:22px; }
 .r9-hero-copy { padding:10px 0 0; }.r9-hero h1 { font-size:clamp(39px,8.6vw,60px);letter-spacing:-1.2px;margin:20px 0; }
 .r9-hero-photo>img { height:400px;max-height:none;object-position:center 35%; }
 .r9-hero-copy>p { font-size:14px; }.r9-hero-copy p.r9-hero-service { font-size:16px; }
 .r9-trust { margin-top:24px;gap:10px 18px; }.r9-trust li { font-size:11px; }
 .r9-hero-photo figcaption { padding:60px 20px 22px; }.r9-hero-photo figcaption span { font-size:28px; }
 .r9-service-card { padding:24px 20px; }.r9-service-card h3 { font-size:27px; }
 .r9-film { grid-template-columns:1fr;padding:26px;gap:26px;margin-top:0;margin-bottom:25px; }
 .r9-film video { max-height:480px; }.r9-zones { padding-bottom:45px; }
 .r9-contact-form { padding:24px 20px; }.r9-legal { padding-top:28px;padding-bottom:45px; }



 .r9-cookie-banner { bottom:calc(85px + env(safe-area-inset-bottom,0px));left:12px;right:12px;padding:20px;grid-template-columns:1fr;gap:14px;max-height:65dvh; }
 .r9-cookie-banner h2 { font-size:25px; }.r9-cookie-dialog { padding:24px 20px; }
 .r9-service-video { grid-template-columns:1fr;max-width:420px; }.r9-service-video figure { margin:0; }
}
@media(max-width:450px) {
 .r9-actions { display:grid;grid-template-columns:1fr; }.r9-actions .button { width:100%; }
 .r9-service-grid { grid-template-columns:1fr; }.r9-service-card h3 { margin-top:16px; }
 .r9-service-card p { margin-bottom:22px; }.r9-hero-photo>img { height:340px; }
 .r9-legal-data { grid-template-columns:1fr;gap:3px; }.r9-legal-data dd { margin-bottom:13px; }
 .r9-legal-links { gap:14px 20px; }.r9-cookie-action { padding:12px 8px; }
}
@media(prefers-reduced-motion:reduce) { .r9-service-card { transition:none; }.r9-service-card:hover { transform:none; } }

.r9-more-services{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:22px;padding:24px;border:1px solid var(--r9-line);border-radius:8px;font-size:14px}.r9-more-services>span{color:var(--r9-muted)}.r9-more-services a{display:inline-flex;align-items:center;gap:12px;font-weight:600}.r9-more-services svg{width:20px;height:20px}.portfolio{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:650px){.portfolio{grid-template-columns:1fr}.r9-more-services{gap:15px;padding:20px}}

/* DANI-R10-FLOATING-CONTACT */
.r10-floating-contact { position:relative;z-index:110;pointer-events:none; }
.r10-float { position:fixed;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;min-width:58px;min-height:58px;padding:0;border-radius:50%;text-decoration:none;pointer-events:auto;box-sizing:border-box;border:1px solid rgba(255,255,255,.7);box-shadow:0 5px 22px #0e342f38;transition:transform .18s,box-shadow .18s;color:#fff; }
.r10-float svg { width:29px;height:29px;flex:none;display:block; }
.r10-float-whatsapp { right:24px;bottom:24px;background:#167d4c;color:#fff; }
.r10-float-call { display:none;background:#193c2e;color:#fff; }
.r10-float:hover { transform:translateY(-3px);box-shadow:0 8px 26px #0e342f48;color:#fff; }
.r10-float:focus-visible { outline:3px solid #c8a764;outline-offset:4px; }
body.modal-open .r10-floating-contact { visibility:hidden; }
.r10-service-visual { margin:36px 0 40px;border:1px solid #dce3d8;border-radius:10px;overflow:hidden;background:#edf0e7; }
.r10-service-visual img { display:block;width:100%;height:auto;max-height:720px;max-height:min(720px,85svh);object-fit:contain;object-position:center; }
.r10-service-visual figcaption { margin:0;padding:16px 20px;font-size:13px;line-height:1.65;color:#526a57;background:#f5f6ef;border-top:1px solid #dce3d8; }
.r9-footer { padding-bottom:96px; }
@media(max-width:768px) {
 .r10-float-call { display:inline-flex;left:max(18px,env(safe-area-inset-left,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px)); }
 .r10-float-whatsapp { right:max(18px,env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px)); }
 .r10-float { width:56px;height:56px;min-width:56px;min-height:56px; }
 .r10-service-visual { margin:28px 0; }
 .r10-service-visual img { max-height:620px;max-height:min(620px,78svh); }
 .r10-service-visual figcaption { padding:14px 16px;font-size:12px; }
 .r9-footer { padding-bottom:calc(96px + env(safe-area-inset-bottom,0px)); }
}
@media(prefers-reduced-motion:reduce) { .r10-float { transition:none; }.r10-float:hover { transform:none; } }
/* END-DANI-R10-FLOATING-CONTACT */

/* DANI-R11-MOBILE-HEADER */
@media(max-width:768px) {
 header.site-nav.r9-nav {
  height:auto!important;
  min-height:0;
  max-height:none;
  display:block!important;
  position:relative;
  overflow:visible;
  padding-top:14px;
  padding-bottom:20px;
 }
 header.r9-nav nav {
  position:static;
  width:100%;
  margin:16px 0 0;
  min-height:44px;
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:12px 10px;
 }
 header.r9-nav nav>a:not(.r9-nav-phone) {
  min-height:44px;
  align-items:center;
 }
 header.r9-nav nav>.button { text-align:center;white-space:normal; }
 .r9-hero { padding-top:18px; }
 .r9-hero-copy { padding-top:4px; }
 .r9-hero-copy>.overline {
  display:block;
  position:static;
  margin:0;
  line-height:1.65;
  letter-spacing:1.6px;
  white-space:normal;
  overflow-wrap:anywhere;
 }
}
@media(max-width:380px) {
 header.r9-nav nav>.button { flex-basis:100%;width:100%; }
}
/* END-DANI-R11-MOBILE-HEADER */
