/* Editorial guide cover; service icons stay still while their colour responds. */
#pfl-proposal .pf-service .pf-icon,
#pfl-proposal:not(.pf-still) .pf-service:hover .pf-icon,
#pfl-proposal .pf-service:focus-within .pf-icon{transform:none!important;animation:none!important;transition:background-color .22s ease,border-color .22s ease,box-shadow .22s ease}
#pfl-proposal .pf-service:is(:hover,:focus-within) .pf-icon{background:#ecf4e4;border-color:#aecb94;box-shadow:0 4px 16px #315c3f12}
#pfl-proposal .pf-cover-life-editorial{background:#fff;color:#172d3a;border-radius:10px}
#pfl-proposal .pf-cover-life-editorial:after{display:none}
#pfl-proposal .pf-cover-life-editorial .pf-cover-logo{top:6.5%;left:8%;width:67%}
#pfl-proposal .pf-cover-life-editorial .pf-cover-eyebrow{position:absolute;top:18%;left:8%;font-size:3cqw;letter-spacing:.11em;font-weight:750;color:#477b2c}
#pfl-proposal .pf-cover-life-editorial .pf-cover-photo{top:24%;bottom:auto;height:36%;width:100%}
#pfl-proposal .pf-cover-life-editorial .pf-cover-image{transform:none;object-position:center 42%;width:100%;height:100%}
#pfl-proposal .pf-cover-life-editorial .pf-cover-title{top:66%;left:8%;font-size:11.5cqw;font-weight:800;color:#172d3a;line-height:1.04;letter-spacing:-.045em}
#pfl-proposal .pf-cover-life-editorial .pf-cover-number{position:absolute;right:6.5%;top:65%;font-size:24cqw;line-height:1;font-weight:800;letter-spacing:-.09em;color:#5ea532}
#pfl-proposal .pf-cover-life-editorial .pf-cover-footer{bottom:5.5%;left:8%;right:8%;padding:4% 0 0;border-top:1px solid #cbd9c3;background:none;color:#477b2c;letter-spacing:.05em;font-size:3.6cqw;font-weight:650;text-transform:none}
@media(prefers-reduced-motion:reduce){#pfl-proposal .pf-service .pf-icon{transition:none}}

/* Language choices stay typographic, separate from calls to action. */
#pfl-proposal .pf-languages{display:flex;align-items:center;gap:9px;flex-shrink:0;font-size:13px;line-height:1.4;font-weight:600;margin-left:20px;color:#7c878b}
#pfl-proposal .pf-languages a{color:#53616a;text-decoration:none;padding:7px 0;border:0;border-radius:0;box-shadow:none;background:transparent;transition:color .2s}
#pfl-proposal .pf-languages a[aria-current=true]{color:#315c3f;font-weight:800;text-decoration:underline;text-underline-offset:6px}
#pfl-proposal .pf-languages a:hover{color:#5ea532}
/* Keep the complete wordmark inside its own track; fixed image widths used to
   overflow a percentage-sized brand and collide with the menu and languages. */
@media(max-width:1100px){
 #pfl-proposal .pf-header{display:grid;grid-template-columns:minmax(0,1fr) auto 44px;column-gap:18px;row-gap:0;align-items:center}
 #pfl-proposal .pf-header .pf-brand{grid-column:1;grid-row:1;width:min(100%,310px);max-width:none;min-width:0;gap:0}
 #pfl-proposal .pf-header .pf-brand-symbol{display:block;width:20%;height:auto;flex:0 0 20%}
 #pfl-proposal .pf-header .pf-brand-name{display:block;width:calc(80% + 6px);height:auto;min-width:0;flex:0 0 calc(80% + 6px);margin-left:-6px}
 #pfl-proposal .pf-header .pf-menu{grid-column:3;grid-row:1;justify-self:end;width:44px;height:44px;margin:0}
 #pfl-proposal .pf-header .pf-languages{grid-column:2;grid-row:1;justify-self:end;gap:8px;margin:0;white-space:nowrap}
 #pfl-proposal .pf-header nav{grid-column:1/-1;grid-row:2;min-width:0;width:100%}
}
@media(max-width:600px){
 #pfl-proposal .pf-header{grid-template-columns:minmax(0,1fr) 44px;column-gap:14px;row-gap:2px;padding:12px 5vw;min-height:0}
 #pfl-proposal .pf-header .pf-brand{width:min(100%,280px)}
 #pfl-proposal .pf-header .pf-menu{grid-column:2}
 #pfl-proposal .pf-header .pf-languages{grid-column:1/-1;grid-row:2;font-size:13px;gap:10px}
 #pfl-proposal .pf-header .pf-languages a{display:inline-flex;align-items:center;min-height:36px;padding:7px 3px}
 #pfl-proposal .pf-header nav{grid-row:3}
 #pfl-proposal .pf-header nav.open{max-height:calc(100dvh - 150px);padding-top:12px}
}

/* Preserve the supplied portrait film, with a quiet, click-to-play cover. */
#pfl-proposal .pf-presentation{position:relative;width:min(100%,340px);aspect-ratio:9/16;margin-inline:auto;background:#172d3a;border-radius:10px;overflow:hidden;box-shadow:0 12px 35px #172d3a12}
#pfl-proposal .pf-presentation video{display:block;width:100%;height:100%;object-fit:contain}
#pfl-proposal .pf-presentation-start{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:70px;height:70px;padding:0;border:1px solid #ffffff66;border-radius:50%;background:#ffffffed;color:#315c3f;box-shadow:0 4px 24px #0003;transform:translate(-50%,-50%);transition:background-color .2s,box-shadow .2s}
#pfl-proposal .pf-presentation-start:hover{background:#fff;box-shadow:0 6px 30px #0005}
#pfl-proposal .pf-presentation-start svg{width:27px;height:27px;fill:currentColor;margin-left:3px}
#pfl-proposal .pf-presentation-start[hidden]{display:none}
#pfl-proposal .pf-presentation-start:disabled{opacity:.6;cursor:progress}
#pfl-proposal .pf-presentation-sound{position:absolute;top:14px;right:14px;background:#fff;color:#233b2f;border:1px solid #dde5df;border-radius:7px;padding:9px 12px;font-size:12px;font-weight:700;line-height:1.2;box-shadow:0 2px 12px #0002}
#pfl-proposal [data-view=presentacion] .pf-presentation{width:min(100%,400px);margin-bottom:32px}
@media(max-width:600px){#pfl-proposal .pf-presentation{width:min(100%,300px)}}
/* Editorial rhythm: color separates sections, motion belongs to headings. */
#pfl-proposal .pf-progress{display:none!important}
#pfl-proposal .pf-trust{background:#eef3e8;border-color:#dce6d3;padding-block:34px}
#pfl-proposal .pf-trust>div{border-color:#cddcc3}
#pfl-proposal .pf-trust strong{color:#294e36}
#pfl-proposal .pf-trust p{color:#4e6054}
#pfl-proposal #pf-services-overview .pf-title-row{margin-bottom:40px;display:block}
#pfl-proposal #pf-services-overview .pf-title-row>div{max-width:100%}
#pfl-proposal #pf-services-overview .pf-kicker{margin-bottom:18px}
#pfl-proposal #pf-services-overview h2{margin-top:0;margin-bottom:22px;line-height:1.16}
#pfl-proposal #pf-services-overview .pf-title-row p{max-width:800px;margin:0;line-height:1.7}
#pfl-proposal .pf-about .pf-split>div:last-child,
#pfl-proposal [data-view=nosotros] .pf-split>div:first-child{translate:none}
#pfl-proposal :where([data-view]:not([data-view=inicio]))>.pf-page-head{background:#eef3e8;border-color:#dce6d3}
#pfl-proposal [data-view=nosotros]>.pf-page-head,
#pfl-proposal [data-view=contacto]>.pf-page-head{background:#244b36;border-color:#244b36;color:#fff}
#pfl-proposal [data-view=nosotros]>.pf-page-head h1,
#pfl-proposal [data-view=contacto]>.pf-page-head h1{color:#fff}
#pfl-proposal [data-view=nosotros]>.pf-page-head .pf-kicker,
#pfl-proposal [data-view=contacto]>.pf-page-head .pf-kicker{color:#cee6b7}
#pfl-proposal [data-view=nosotros]>.pf-page-head p,
#pfl-proposal [data-view=contacto]>.pf-page-head p{color:#e0eadf}
#pfl-proposal [data-view=nosotros] .pf-cta,
#pfl-proposal [data-view=servicios] .pf-cta{background:#eef3e8}
#pfl-proposal [data-view=guias] .pf-guide,
#pfl-proposal [data-view=descarga] .pf-form,
#pfl-proposal [data-view=contacto] .pf-form{background:#f4f6f0}
#pfl-proposal [data-view=privacidad] .pf-reading{padding-top:48px;padding-bottom:64px}
@media(max-width:600px){
 #pfl-proposal .pf-trust{padding-block:24px}
 #pfl-proposal #pf-services-overview .pf-title-row{margin-bottom:28px}
 #pfl-proposal #pf-services-overview h2{margin-bottom:18px}
}

/* Keep the complete brand and the first conversation action in the opening view. */
#pfl-proposal .pf-header{min-height:110px;padding-block:10px}
#pfl-proposal .pf-brand-full{display:block;width:100%;height:auto;max-width:340px;aspect-ratio:1024/251;object-fit:contain}
#pfl-proposal .pf-hero{min-height:0;height:max(360px,calc(100svh - 430px));padding-top:40px;padding-bottom:88px}
#pfl-proposal .pf-hero h1{font-size:clamp(36px,4vw,64px);line-height:1.12}
#pfl-proposal .pf-intro{padding-top:28px;padding-bottom:32px;gap:5vw}
#pfl-proposal .pf-intro p{font-size:17px;line-height:1.65}
#pfl-proposal .pf-intro .pf-actions{margin-top:18px}
#pfl-proposal .pf-intro .pf-micro{margin-top:14px}
#pfl-proposal .pf-step:last-child{border-bottom:0;padding-bottom:0}
#pfl-proposal .pf-process-section{padding-bottom:28px}
#pfl-proposal .pf-process-section+.pf-about{padding-top:28px}
@media(max-width:850px){
#pfl-proposal .pf-hero{height:auto;min-height:340px;padding-top:50px;padding-bottom:96px}
#pfl-proposal .pf-intro{gap:24px}
}
@media(max-width:600px){
#pfl-proposal .pf-header{min-height:0;padding-block:12px}
#pfl-proposal .pf-brand-full{max-width:240px}
#pfl-proposal .pf-hero{height:auto;min-height:340px;padding-top:50px;padding-bottom:100px}
#pfl-proposal .pf-hero h1{font-size:34px}
#pfl-proposal .pf-intro{padding-top:28px;padding-bottom:32px}
#pfl-proposal .pf-process-section{padding-bottom:20px}
#pfl-proposal .pf-process-section+.pf-about{padding-top:20px}
}

/* Three quiet films crossfade behind the heading; respect reduced motion. */
#pfl-proposal .pf-hero-video{transition:opacity .75s ease}
#pfl-proposal .pf-hero-video:nth-of-type(2){object-position:55% 20%}
@media(prefers-reduced-motion:reduce){#pfl-proposal .pf-hero-video{display:none}}

#pfl-proposal .pf-hero-video:nth-of-type(3){object-position:50% 12%}

#pfl-proposal .pf-hero-video:first-of-type,#pfl-proposal .pf-photo .pf-hero-poster{object-position:50% 25%}

/* Accordion spacing and quiet, native disclosure behavior. */
#pfl-proposal .pf-reading > h2:has(+ details){margin-bottom:28px}
#pfl-proposal .pf-reading > details{margin-bottom:16px}
#pfl-proposal .pf-reading > details > summary::after{transition:none;transform:none}
#pfl-proposal .pf-reading > details[open] > summary::after{content:'−';transform:none}
#pfl-proposal .pf-reading > details > p{margin:0;padding-top:16px}
#pfl-proposal .pf-reading > details > summary:focus-visible{outline:3px solid var(--pfl-leaf);outline-offset:6px;border-radius:3px}
@media(max-width:600px){
 #pfl-proposal .pf-reading > h2:has(+ details){margin-bottom:22px}
 #pfl-proposal .pf-reading > details{padding:20px;margin-bottom:14px}
}

/* Softer article heading panel, shared by both languages. */
#pfl-proposal [data-view] > .pf-page-head.pf-wp-reader-head{
 background:rgba(238,243,232,.45);
 border-color:transparent;
 border-radius:24px;
 margin-top:24px;
 margin-bottom:24px;
}
@media(max-width:600px){
 #pfl-proposal [data-view] > .pf-page-head.pf-wp-reader-head{
  border-radius:18px;
  margin-top:16px;
  margin-bottom:20px;
 }
}
