/* CP06 · unha portada breve e unha páxina por sección. */
.cp06{overflow-x:clip;--organic-paper:url('assets/cp06/paper-note.webp');--organic-tape:url('assets/cp06/cellotape.webp');--photo-fade:linear-gradient(to bottom,#000 0%,#000 78%,#000e 87%,#0008 95%,transparent 100%)}
.cp06 .site-main{min-height:40vh}
.cp06 .main-nav a[aria-current=page]::after{content:'';position:absolute;left:0;right:0;bottom:0;height:5px;background:var(--red);transform:rotate(-3deg)}
.cp06 .site-header{z-index:40}
.cp06 .page-progress{display:none}
.cp06 .section-title{overflow-wrap:normal}
/* The opening image and eight sections are displayed whole, without crops or filters. */
.cp-home-hero{padding:0;background:var(--paper);border-bottom:7px solid var(--ink)}
.cp-slider{position:relative;outline-offset:-3px;touch-action:pan-y pinch-zoom}
.cp-slide{display:block;min-width:0;margin:0;padding:0}
.cp-slide[hidden]{display:none!important}
.cp-banner-link,.cp-banner-intro{display:block;position:relative;color:var(--ink);text-decoration:none;overflow:hidden}
.cp-banner-link:focus-visible{outline:4px solid var(--red);outline-offset:-4px}
.cp-banner-image{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;filter:none;mix-blend-mode:normal;transform:none;border:0;box-shadow:none;clip-path:none;-webkit-mask-image:none;mask-image:none}
.cp-banner-intro .cp-banner-image{aspect-ratio:1670/941}
.cp-banner-caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cp-banner-caption h2{font-size:clamp(1.9rem,6vw,2.8rem);line-height:1.12;margin:0;transform:none;overflow-wrap:normal}
.cp-banner-caption p{font-size:.9rem;line-height:1.45;margin:.45rem 0 .8rem;max-width:48ch}
.cp-banner-cta{min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:1rem;max-width:100%;font-size:1rem;text-align:left}
.cp-slider-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem var(--pad) 1rem;border-top:1px solid #24201866}
.cp-slider-arrows{display:flex;align-items:center;gap:.8rem}
.cp-slider-arrows button{width:46px;height:46px;background:var(--ink);color:var(--sheet);font-size:1.6rem}
.cp-slide-count{font-size:.85rem;white-space:nowrap;min-width:8ch;text-align:center}
.cp-slider-dots{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:center}
.cp-slider-dots button{min-width:36px;min-height:44px;background:transparent;font-size:.8rem;border-bottom:3px solid transparent}
.cp-slider-dots button[aria-current=true]{border-color:var(--red);color:var(--red);font-weight:bold}
.cp-slider-pause{font:1rem Cartel,sans-serif;background:var(--sheet);padding:.6rem .9rem;border:1px solid var(--ink);min-height:44px;white-space:nowrap}
.cp-slider button:hover{color:var(--sheet);background:var(--red)}
.cp-section-directory{padding:2.2rem var(--pad) 2.6rem;background:var(--scan) 25% 40%/400% auto}
.cp-directory-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;margin-bottom:1.4rem}
.cp-directory-heading h2{font-size:clamp(1.75rem,3vw,2.8rem);line-height:1.2}
.cp-directory-heading p{font-size:.8rem}
.cp-home .cp-portal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.4rem 1.25rem;margin:0;padding:0;overflow:visible}
.cp-home .cp-portal-grid .portal{display:flex;flex-direction:column;min-width:0;width:auto;margin:0;padding:.65rem;transform:none;min-height:0}
.cp-home .cp-portal-grid .portal:hover{transform:translateY(-4px)}
.cp-home .cp-portal-grid .portal h3{font-size:clamp(1.5rem,2.15vw,2.5rem);line-height:1.15;min-height:2.45em;width:auto;margin:0 0 .3rem;padding:.55rem .4rem;display:flex;align-items:center;transform:none}
.cp-home .cp-portal-grid .portal img{width:100%;height:clamp(160px,14.5vw,220px);object-fit:cover;filter:none;mix-blend-mode:normal;transform:rotate(-.6deg);margin:0;-webkit-mask-image:var(--photo-fade);mask-image:var(--photo-fade)}
.cp-home .cp-portal-grid .cp-portal-logo img{object-fit:cover;object-position:center 55%;padding:0;background:#f4f1e9;filter:none;mix-blend-mode:normal;clip-path:none;-webkit-mask-image:none;mask-image:none}
.cp-home .cp-portal-grid .cp-portal-portrait img{object-position:center 30%}
.cp-home .cp-portal-grid .cp-portal-article img{object-fit:cover;object-position:center 35%;background:transparent}
.cp-home .cp-portal-grid .portal>span{position:relative;font-size:.86rem;line-height:1.45;min-height:92px;padding:.85rem 2.7rem .65rem .5rem;margin:.25rem 0 0;flex:1}
.cp-home .cp-portal-grid .portal:nth-child(3)::after{display:none}
.cp-home .cp-portal-grid .portal{background:transparent;box-shadow:none;grid-column:auto}
.cp-home .cp-portal-grid .portal::before{inset:13% -3% 7%;background:var(--scan) 75% 72%/240% auto;opacity:.18;-webkit-mask-image:radial-gradient(ellipse,#000 35%,transparent 73%);mask-image:radial-gradient(ellipse,#000 35%,transparent 73%)}
.cp-home .cp-portal-grid .portal h3{padding:.9rem .8rem .75rem;overflow-wrap:normal;transform:rotate(-.5deg);font-size:clamp(1.35rem,1.85vw,2rem)}
.cp-home .cp-portal-grid .portal h3::before,.cp-home .cp-portal-grid .portal>span::before{background:var(--organic-paper) center/100% 100% no-repeat;clip-path:none}
.cp-home .cp-portal-grid .portal h3::after{display:none}
.cp-home .cp-portal-grid .portal>span{padding:1rem 2.65rem 1.1rem .85rem;transform:rotate(.45deg);margin-top:-.35rem}
.cp-home .cp-portal-grid .portal:nth-child(even) h3{transform:rotate(.6deg)}
.cp-home .cp-portal-grid .portal:nth-child(even)>span{transform:rotate(-.4deg)}
.cp-home .cp-portal-grid .cp-portal-poesia img{object-position:center 35%}
.cp-home .cp-portal-grid .cp-portal-proxectos img{object-position:center 25%}
.cp-home .cp-portal-grid .cp-portal-platano-tokyo img{object-position:center 60%}

.cp-home #contacto{margin:0;border-bottom:0;padding-top:2.5rem;padding-bottom:2.5rem}
.cp-home #contacto h2{font-size:clamp(3.3rem,6vw,5.5rem)}
.cp-page-path{display:flex;justify-content:space-between;gap:1rem;padding:1rem var(--pad);border-bottom:1px solid #1115;font-size:.75rem;background:var(--sheet)}
.cp-page-path a{text-decoration:none}
.cp-section-page main>.section{margin:0;border-bottom:0}
.cp-section-page .section-head{margin-top:-2rem;min-height:205px}
.cp-section-page .section-title{font-size:clamp(3.5rem,7vw,6rem)}
.cp-page-end{display:flex;justify-content:space-between;gap:1rem;padding:1.4rem var(--pad) 2rem;border-top:2px solid var(--ink)}
.cp-section-page #quen-son{padding-bottom:3rem}
.cp-section-page #quen-son .section-head{min-height:145px}
.cp06 .footer{padding-top:1.5rem;padding-bottom:1.5rem}

@media(min-width:1251px){.cp06 .main-nav{gap:clamp(.5rem,.9vw,1rem)}.cp06 .main-nav a{font-size:clamp(.95rem,1.12vw,1.14rem)}}
@media(max-width:1050px){.cp-slider-controls{gap:.6rem}.cp-slider-dots{gap:0}.cp-slider-dots button{min-width:30px}.cp-home .cp-portal-grid{gap:1rem}.cp-home .cp-portal-grid .portal>span{font-size:.78rem;padding-right:2.4rem;min-height:108px}}
/* Native text and a large tap target keep every section legible on small screens. */
@media(max-width:760px){
 .cp-banner-caption{position:static;width:auto;height:auto;min-height:182px;padding:1rem var(--pad) 1.2rem;margin:0;overflow:visible;clip:auto;white-space:normal;background:var(--scan) 25% 40%/400% auto}
 .cp-banner-cta{width:100%}
 .cp-slider-controls{flex-wrap:wrap}.cp-slider-dots{order:3;flex-basis:100%;gap:.3rem}.cp-slider-dots button{min-width:35px}
 .cp-directory-heading{display:block}.cp-directory-heading p{margin-top:.4rem}
 .cp-home .cp-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
 .cp-home .cp-portal-grid .portal h3{font-size:clamp(1.6rem,4.6vw,2.2rem);min-height:1.7em}
 .cp-home .cp-portal-grid .portal img{height:clamp(140px,28vw,210px)}
 .cp-home .cp-portal-grid .portal>span{font-size:.82rem;min-height:96px}
 .cp-home #contacto .contact-note{margin-top:1rem}
 .cp-section-page .section-head{min-height:180px}.cp-section-page .section-title{font-size:clamp(2.8rem,8vw,4.5rem)}
 .cp-section-page .section-head>div{padding-left:.4rem}.cp-section-page .section-head>p{max-width:none;transform:none}.cp-page-path span{display:none}
}
@media(max-width:480px){
 .cp06{--pad:16px}.cp-slider-controls{padding:.65rem 16px}.cp-slider-dots button{min-width:30px}.cp-slider-arrows{gap:.5rem}
 .cp-section-directory{padding-top:1.7rem;padding-bottom:1.8rem}.cp-directory-heading h2{font-size:1.7rem}
 .cp-home .cp-portal-grid{gap:1rem .7rem}.cp-home .cp-portal-grid .portal{padding:.35rem}
 .cp-home .cp-portal-grid .portal h3{font-size:clamp(1.05rem,4.3vw,1.4rem);padding:.85rem .65rem .75rem;min-height:3.45em;letter-spacing:-.025em}
 .cp-home .cp-portal-grid .portal img{height:140px}.cp-home .cp-portal-grid .portal>span{font-size:.73rem;min-height:120px;padding:1.1rem .7rem 2.6rem}
 .cp-home .cp-portal-grid .portal>span::after{height:32px;width:34px}
 .cp-page-end{flex-wrap:wrap}.cp-page-end .button{flex:1;white-space:nowrap}
 .cp06 .logo-crop{width:60px;height:40px}.cp06 .brand-name{font-size:1.4rem}.cp06 .brand-name small{font-size:.6rem}
 .cp06 .site-header{gap:.6rem}.cp06 .menu-toggle{padding:.5rem .65rem}.cp-section-page .section-head{padding-left:1rem;padding-right:1rem}
}
@media(prefers-reduced-motion:reduce){.cp06 *{scroll-behavior:auto!important}.cp06 .portal{transition:none}.cp-home .cp-portal-grid .portal:hover{transform:none}}
@media(forced-colors:active){
 .cp-banner-caption{position:static;width:auto;height:auto;padding:1rem var(--pad);margin:0;overflow:visible;clip:auto;white-space:normal;background:Canvas;color:CanvasText}
 .cp-banner-cta{border:1px solid ButtonText}
 .cp-home .cp-portal-grid .portal img{-webkit-mask-image:none;mask-image:none}
}

/* Printed labels match the reference banner; two small, tilted links below the quote. */
.cp-banner-intro .cp-intro-art{position:relative;isolation:isolate}
.cp-banner-intro .cp-intro-actions{position:absolute;left:6.7%;right:auto;bottom:.75%;width:28.5%;min-width:96px;z-index:1;display:flex;align-items:flex-end;gap:clamp(.5rem,.8vw,.85rem);padding:0;margin:0;background:none}
.cp-banner-intro .cp-intro-cta{box-sizing:border-box;position:relative;display:flex;flex:1 1 0;align-items:flex-end;justify-content:center;gap:0;min-width:44px;max-width:100%;min-height:44px;height:auto;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;transform:rotate(-2deg);transform-origin:50% 50%;background:none;color:var(--ink);text-decoration:none;text-shadow:none}
.cp-banner-intro .cp-intro-cta::before,.cp-banner-intro .cp-intro-cta::after{content:none}
.cp-banner-intro .cp-intro-cta svg{display:block;width:100%;height:auto;aspect-ratio:1040/292;overflow:hidden;pointer-events:none}
.cp-banner-intro .cp-intro-cta:hover{background:none;filter:brightness(.92);transform:rotate(-2deg)}
.cp-banner-intro .cp-intro-cta:focus-visible{outline:3px solid #171716;outline-offset:3px;box-shadow:0 0 0 6px #fff9ed}
/* As with the other slides, readable links accompany the image on small screens,
   in Spanish and at enlarged text sizes, when the native caption is visible. */
.cp-banner-intro .cp-intro-readable{display:none;flex-wrap:wrap;gap:1rem;align-items:flex-start;padding-top:.3rem}
.cp-banner-intro .cp-intro-readable .cp-intro-cta{flex:0 1 auto;width:calc(8rem * var(--cp-text-scale,1));max-width:100%;align-items:center}
@media(max-width:760px){.cp-banner-intro .cp-intro-readable{display:flex}}
html[lang="es"] .cp-banner-intro .cp-intro-readable,
:is(html[data-cp-text-size="150"],html[data-cp-text-size="200"]) .cp-banner-intro .cp-intro-readable{display:flex}
@media(forced-colors:active){.cp-banner-intro .cp-intro-readable{display:flex}.cp-banner-intro .cp-intro-cta{outline:1px solid ButtonText}.cp-banner-intro .cp-intro-cta:focus-visible{outline:3px solid Highlight}}
