/*
Theme Name: Comunicar Editorial
Theme URI: https://comunicar.pe
Author: COMUNICAR EIRL
Author URI: https://comunicar.pe
Description: Tema audiovisual con reel, portafolio de videoclips y streaming, cinco paginas editables con bloques y consultas por WhatsApp.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: comunicar-editorial
Tags: portfolio, custom-logo, custom-menu, editor-style, featured-images, wide-blocks
*/
:root{--ink:#111213;--paper:#f6f6f3;--accent:#f6ae2d;--muted:#b7b9b6;--line:#363737;--gutter:5.2%;--radius:4px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;letter-spacing:0;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}
img,video{max-width:100%;height:auto;display:block}
figure{margin:0}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:600;line-height:1.09;text-wrap:balance;overflow-wrap:break-word;letter-spacing:0}
h1{font-size:78px}h2{font-size:52px}h3{font-size:26px}
p{overflow-wrap:anywhere}
button{cursor:pointer}
.screen-reader-text,.skip-link:not(:focus){border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}
.skip-link:focus{position:fixed;top:10px;left:10px;z-index:2000;padding:12px 20px;background:var(--accent);color:var(--ink)}
.ce-header{height:92px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;position:relative;z-index:100;background:var(--ink);border-bottom:1px solid var(--line)}
.ce-header .ce-logo,.ce-header .custom-logo-link{flex:0 0 170px;width:170px;display:block}
.ce-logo img,.custom-logo{width:100%;height:auto;object-fit:contain}
.ce-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:26px}
.ce-menu a{display:block;font-size:11px;font-weight:600;text-transform:uppercase;line-height:1.5;padding:12px 0;max-width:162px}
.ce-menu a:hover,.ce-menu .current-menu-item>a{color:var(--accent)}
.ce-menu li{position:relative}
.ce-menu .sub-menu{list-style:none;display:none;position:absolute;top:100%;left:0;background:var(--ink);padding:12px 22px;min-width:230px}
.ce-menu li:hover>.sub-menu,.ce-menu li:focus-within>.sub-menu{display:block}
.ce-menu-toggle{display:none;color:white;background:none;border:1px solid #666;width:46px;height:46px;padding:11px}
.ce-menu-toggle span{display:block;width:22px;height:2px;background:currentColor;margin:6px 0;transition:transform .2s}
.ce-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.ce-menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.ce-content>.wp-block-group,.ce-content>.wp-block-image,.ce-content>.wp-block-video{margin-top:0;margin-bottom:0}
.ce-reel{width:100%;background:#080808;line-height:0}
.ce-reel video{width:100%;height:min(65vh,740px);min-height:280px;object-fit:cover}
.ce-section{padding:96px var(--gutter);width:100%;margin:0}
.ce-section>p:not(.ce-eyebrow){margin-top:24px}
.ce-section>h2{max-width:900px}
.ce-section>.ce-grid{margin-top:44px}
.ce-section>.wp-block-buttons{margin-top:40px}
.ce-eyebrow{font-size:11px;font-weight:600;line-height:1.55;text-transform:uppercase;color:var(--accent);margin:0 0 20px}
.ce-lead{font-size:19px;line-height:1.7;color:var(--muted);max-width:690px}
.ce-light{background:var(--paper);color:var(--ink)}
.ce-light .ce-eyebrow{color:#62625b}
.ce-light .ce-lead{color:#53564f}
.ce-intro{padding-top:65px;padding-bottom:0;text-align:center}
.ce-intro .ce-eyebrow{margin-bottom:25px}
.ce-intro-logo{width:min(710px,85%);margin:0 auto 26px}
.ce-intro-logo img{width:100%;height:auto}
.ce-intro .ce-intro-line{font-size:26px;margin-top:26px;color:#f6f6f3}
.ce-intro .ce-lead{margin:18px auto 40px;max-width:720px;font-size:17px}
.ce-intro-foot{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;padding:23px 0;font-size:10px;text-transform:uppercase;color:var(--muted)}
.ce-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:60px;margin-bottom:42px}
.ce-section-heading .ce-eyebrow{flex:0 0 200px;padding-top:9px}
.ce-section-heading h2{max-width:720px}
.ce-grid{display:grid;gap:36px;align-items:start}
.ce-grid>*{min-width:0;margin:0}
.ce-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.ce-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:52px 36px}
.ce-service-card figure{overflow:hidden;margin-bottom:25px}
.ce-service-card img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .65s}
.ce-service-card:hover img{transform:scale(1.035)}
.ce-service-card .ce-eyebrow{font-size:10px;margin-bottom:16px}
.ce-service-card h3{font-size:29px;max-width:350px;min-height:64px}
.ce-service-card p:not(.ce-eyebrow){font-size:15px;color:#595d56;margin-top:18px;max-width:420px}
.ce-service-card .wp-block-buttons{margin-top:25px}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px}
.wp-block-button__link,.ce-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--accent);color:var(--ink);border:1px solid transparent;border-radius:var(--radius);padding:16px 26px;font-size:14px;font-weight:600;line-height:1.5;max-width:100%;white-space:normal;text-align:center;transition:background .2s,color .2s}
.wp-block-button__link:hover,.ce-button:hover{background:#ffd180;color:#111}
.ce-outline .wp-block-button__link{background:transparent;border-color:#737773;color:var(--paper)}
.ce-outline .wp-block-button__link:hover{background:var(--paper);color:var(--ink)}
.ce-link-button .wp-block-button__link{padding:8px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;color:inherit;font-size:13px}
.ce-link-button .wp-block-button__link::after{content:'↗';font-size:20px;margin-left:20px}
.ce-film-play{display:block;position:relative;overflow:hidden;background:#262727;aspect-ratio:16/9}
.ce-film-play img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.ce-film-play:hover img{transform:scale(1.035)}
.ce-play-icon{position:absolute;bottom:18px;left:18px;width:48px;height:48px;background:var(--paper);border-radius:50%;display:grid;place-items:center;transition:background .2s}
.ce-play-icon::after{content:'';width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid var(--ink);margin-left:3px}
.ce-film-play:hover .ce-play-icon{background:var(--accent)}
.ce-film-info{padding-top:20px}
.ce-film-info .ce-eyebrow{font-size:10px;margin-bottom:10px}
.ce-film h3{font-size:24px;line-height:1.3;max-width:590px}
.ce-live-band{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:8%;border-top:1px solid var(--line);padding-top:80px}
.ce-live-copy h2{font-size:46px}
.ce-live-copy p:not(.ce-eyebrow){color:var(--muted);margin:24px 0}
.ce-live-copy .wp-block-buttons{margin-top:28px}
.ce-channel{border-top:1px solid #c8cac3;padding-top:28px}
.ce-channel h3{font-size:34px}
.ce-channel p:not(.ce-eyebrow){max-width:510px;margin-top:18px;color:#60635c}
.ce-section:not(.ce-light) .ce-channel{border-color:var(--line)}
.ce-section:not(.ce-light) .ce-channel p:not(.ce-eyebrow){color:var(--muted)}
.ce-cta{text-align:center;padding-top:100px;padding-bottom:100px;background:var(--accent);color:var(--ink)}
.ce-cta .ce-eyebrow{color:#414132}
.ce-cta h2{font-size:72px;max-width:none}
.ce-cta p:not(.ce-eyebrow){color:#373a34}
.ce-cta .wp-block-buttons{justify-content:center}
.ce-cta .wp-block-button__link{background:var(--ink);color:white}
.ce-cta .wp-block-button__link:hover{background:#333}
.ce-footer{padding:60px var(--gutter) 0;background:#111213}
.ce-footer-top{display:flex;justify-content:space-between;gap:40px;padding-bottom:55px}
.ce-footer .ce-logo,.ce-footer .custom-logo-link{display:block;width:215px;margin-bottom:24px}
.ce-footer p{font-size:13px;color:var(--muted)}
.ce-footer-top>div:last-child{min-width:280px}
.ce-footer .ce-eyebrow{font-size:10px;margin-bottom:12px}
.ce-footer-phone{font-size:28px;display:block;margin-bottom:10px}
.ce-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0 30px;font-size:10px;color:#a7aaa6}
.ce-whatsapp{position:fixed;right:22px;bottom:max(22px,env(safe-area-inset-bottom));z-index:200;display:flex;align-items:center;justify-content:center;width:56px;height:56px;color:#fff;background:#187b45;border:1px solid #67bc85;border-radius:50%;box-shadow:0 4px 22px #0003;font-size:13px;font-weight:600}
.ce-whatsapp span{position:absolute;right:68px;padding:8px 12px;background:#187b45;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s}
.ce-whatsapp:hover span,.ce-whatsapp:focus-visible span{opacity:1}
.ce-whatsapp svg{width:24px;height:24px;flex:none}
.ce-whatsapp:hover{background:#125c33}
.ce-service-intro{padding-top:90px;padding-bottom:80px}
.ce-service-intro h1{max-width:1100px;margin-bottom:25px}
.ce-service-subtitle{font-size:29px;line-height:1.35}
.ce-service-intro .ce-lead{margin-top:22px}
.ce-service-panorama{width:100%;height:440px;overflow:hidden}
.ce-service-panorama img{width:100%;height:100%;object-fit:cover}
.ce-capability{border-top:1px solid #c8cac3;padding-top:26px}
.ce-capability h3{font-size:29px}
.ce-capability p:not(.ce-eyebrow){color:#595d56;margin-top:18px;max-width:590px}
.ce-step{border-top:1px solid #c8cac3;padding-top:24px}
.ce-step p:not(.ce-eyebrow){margin-top:18px;color:#65685f}
.ce-faq .ce-step{border-color:var(--line)}
.ce-faq .ce-step p:not(.ce-eyebrow){color:var(--muted)}
.ce-contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:9%}
.ce-contact-details>p:not(.ce-eyebrow){margin-top:25px;max-width:510px;color:#62655e}
.ce-contact-links{margin-top:40px}
.ce-contact-links p{margin:0 0 22px;font-size:22px}
.ce-contact-links span{display:block;font-size:10px;color:#676961;margin-bottom:8px}
.ce-contact-services{font-size:13px}
.ce-inquiry{border:1px solid #c8cac3;padding:34px;border-radius:4px;background:white;min-width:0}
.ce-inquiry h3{font-size:27px;margin-bottom:30px}
.ce-inquiry label{display:block;font-size:12px;font-weight:600;margin:18px 0 8px}
.ce-inquiry input,.ce-inquiry textarea,.ce-inquiry select{width:100%;min-width:0;max-width:100%;border:1px solid #b8bcb3;background:#fafbf8;color:#151714;border-radius:2px;padding:13px 12px;font-size:16px}
.ce-inquiry textarea{resize:vertical}
.ce-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:0}
.ce-form-row>div{min-width:0}
.ce-form-note{font-size:12px;color:#62665f;margin:16px 0 24px}
.ce-inquiry .ce-button{width:100%}
.ce-player{position:fixed;background:#151515;color:white;border:1px solid #555;padding:50px 24px 24px;width:min(1040px,94vw);max-height:94dvh;overflow:auto;border-radius:4px}
.ce-player::backdrop{background:#000d}
.ce-player-screen{aspect-ratio:16/9;background:#000}
.ce-player iframe{width:100%;height:100%;border:0;display:block}
.ce-player-close{position:absolute;top:4px;right:10px;width:40px;height:40px;background:transparent;border:0;color:white;font-size:32px}
.ce-player-caption{font-size:18px;margin-top:18px}
.ce-player-link{font-size:12px;text-decoration:underline;color:var(--accent)}
.ce-article{min-height:65vh;max-width:1000px;margin:auto}
.ce-article p,.ce-article h2{margin-top:25px}
.ce-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}
.ce-reveal.is-visible{opacity:1;transform:none}
@media(min-width:1800px){:root{--gutter:max(5.2%,calc((100% - 1580px)/2))}}
@media(max-width:1100px){
  .ce-header{height:78px}.ce-header .ce-logo,.ce-header .custom-logo-link{flex-basis:155px;width:155px}
  .ce-menu-toggle{display:block}#ce-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ink);border-bottom:1px solid #777;padding:22px var(--gutter) 28px;max-height:calc(100dvh - 100px);overflow:auto}#ce-navigation.is-open{display:block}
  .ce-menu{display:block;text-align:center}.ce-menu a{font-size:15px;max-width:100%;padding:15px;border-bottom:1px solid var(--line)}
  .ce-menu .sub-menu{display:block;position:static;padding:0 18px}.ce-menu .sub-menu a{font-size:13px}
  h1{font-size:64px}h2{font-size:42px}.ce-section{padding:70px var(--gutter)}.ce-intro{padding-bottom:0}
  .ce-section-heading{gap:30px}.ce-section-heading .ce-eyebrow{flex-basis:160px}
  .ce-grid{gap:32px 24px}.ce-service-card h3{font-size:24px}.ce-service-card p:not(.ce-eyebrow){font-size:14px}
  .ce-live-band{gap:35px}.ce-live-copy h2{font-size:36px}.ce-cta h2{font-size:58px}.ce-contact-layout{gap:40px}.ce-inquiry{padding:26px}
}
@media(max-width:767px){
  :root{--gutter:6%}html{scroll-padding-top:30px}body{font-size:16px}h1{font-size:44px}h2{font-size:35px}h3{font-size:25px}
  .ce-header{height:72px}.ce-header .ce-logo,.ce-header .custom-logo-link{width:145px;flex-basis:145px}
  .ce-section{padding:58px var(--gutter);text-align:center}
  .ce-reel video{height:auto;min-height:0;aspect-ratio:16/9;object-fit:contain}
  .ce-intro{padding-top:40px;padding-bottom:0}.ce-intro-logo{width:100%;max-width:470px}.ce-intro .ce-eyebrow{font-size:9px;margin-bottom:24px}.ce-intro .ce-intro-line{font-size:22px;line-height:1.35;margin-top:20px}
  .ce-intro .ce-lead{font-size:15px;margin:20px auto 30px}.ce-intro-foot{display:block;padding:20px 0;font-size:9px}.ce-intro-foot p+p{margin-top:6px}
  .ce-eyebrow{font-size:10px;margin-bottom:17px}.ce-lead{font-size:17px}
  .ce-section-heading{display:block;margin-bottom:32px}.ce-section-heading .ce-eyebrow{padding:0}.ce-section-heading h2{max-width:500px;margin:auto}
  .ce-grid-three,.ce-grid-two,.ce-live-band,.ce-contact-layout{grid-template-columns:minmax(0,1fr);gap:42px}
  .ce-service-card{max-width:510px;width:100%;margin:auto}.ce-service-card h3{font-size:29px;min-height:0;max-width:none}.ce-service-card p:not(.ce-eyebrow){font-size:16px;margin:16px auto 0}.ce-service-card figure{margin-bottom:24px}
  .ce-service-card .ce-eyebrow{font-size:9px}.ce-service-card .wp-block-buttons{margin-top:20px}.wp-block-buttons{justify-content:center}.wp-block-button{max-width:100%}
  .wp-block-button__link{font-size:13px;padding:15px 21px}.ce-film h3{font-size:22px}.ce-film-info{padding-top:18px}.ce-film-info .ce-eyebrow{font-size:9px}
  .ce-live-copy h2{font-size:35px}.ce-live-copy p:not(.ce-eyebrow){font-size:16px}.ce-live-band{gap:36px}
  .ce-channel h3{font-size:29px}.ce-channel p:not(.ce-eyebrow){margin:16px auto 0}.ce-cta h2{font-size:45px}.ce-cta p:not(.ce-eyebrow){font-size:16px}
  .ce-service-intro h1{font-size:44px}.ce-service-intro h1,.ce-service-intro .ce-lead{margin-left:auto;margin-right:auto}.ce-service-subtitle{font-size:24px}.ce-service-panorama{height:270px}
  .ce-capability h3{font-size:26px}.ce-capability p:not(.ce-eyebrow){margin-left:auto;margin-right:auto}.ce-inquiry{text-align:left;padding:24px 20px}.ce-inquiry h3{text-align:center;font-size:25px}.ce-contact-details>p:not(.ce-eyebrow){margin-left:auto;margin-right:auto}
  .ce-contact-links p{font-size:22px}.ce-contact-intro h1{font-size:42px}.ce-form-row{grid-template-columns:minmax(0,1fr);gap:0}
  .ce-footer{padding:45px var(--gutter) 75px;text-align:center}.ce-footer-top{display:block;padding-bottom:32px}.ce-footer .ce-logo,.ce-footer .custom-logo-link{margin:0 auto 22px;width:210px}.ce-footer-top>div:last-child{min-width:0;margin-top:30px}.ce-footer-phone{font-size:25px}
  .ce-footer-bottom{display:block;font-size:9px;padding:22px 0}.ce-footer-bottom span{display:block}.ce-footer-bottom span+span{margin-top:5px}
  .ce-whatsapp{right:16px;bottom:max(16px,env(safe-area-inset-bottom));width:54px;height:54px;padding:14px;justify-content:center}.ce-whatsapp span{display:none}
  .ce-player{padding:48px 12px 20px}.ce-player-caption{font-size:16px}.ce-article{max-width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.ce-reveal{opacity:1;transform:none}}
@media print{.ce-header,.ce-whatsapp,.ce-player,.ce-footer,.ce-reel{display:none}body,.ce-section{background:white;color:black}.ce-reveal{opacity:1;transform:none}}
