/*
Theme Name: ICCN Camino Nuevo
Theme URI: https://example.com/
Author: OpenAI
Description: Tema WordPress multipágina para Iglesia Cristiana Camino Nuevo. Noticias, sermones, devocionales, oración y contacto administrables desde WordPress.
Version: 1.2.9
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: iccn
*/

:root{--g:#819477;--gd:#344c3b;--deep:#24372b;--pink:#e83c69;--cream:#f7f6f0;--paper:#fffefa;--ink:#202820;--muted:#697269;--line:#e2e5dc;--shadow:0 18px 55px #24372b12}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 "DM Sans",sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}img{max-width:100%;height:auto}.top{background:var(--deep);color:white;padding:8px 5vw;font-size:.82rem;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.top a{text-decoration:none}.site-header{position:sticky;top:0;z-index:10;background:#fffefaed;backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.nav{max-width:1240px;margin:auto;padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}.brand img,.brand .custom-logo{width:56px;height:56px;object-fit:contain;border-radius:50%}.brand strong{font:600 1rem/1.15 "Playfair Display",serif;display:block}.brand small{font-size:.68rem;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}.links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.links .menu-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px}.links a{font-size:.8rem;font-weight:700;text-decoration:none;padding:8px 9px;border-radius:8px;display:block}.links a:hover,.links .current-menu-item>a{background:#edf0e8}.menu{display:none;background:white;border:1px solid var(--line);border-radius:9px;padding:8px 12px}.hero{color:white;background:linear-gradient(115deg,#24372b,#49634a 60%,#819477);overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:560px;height:560px;border:1px solid #ffffff25;border-radius:50%;right:-100px;top:-180px;box-shadow:0 0 0 70px #ffffff08,0 0 0 140px #ffffff06;pointer-events:none}.hero-in{max-width:1200px;margin:auto;padding:78px 6vw;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:50px;position:relative;z-index:1}.eyebrow,.kicker{font-size:.74rem;text-transform:uppercase;letter-spacing:.17em;font-weight:700;color:var(--g)}.hero .eyebrow{color:#dbe6d3}.hero h1{font:600 clamp(2.6rem,5vw,4.8rem)/1.05 "Playfair Display",serif;margin:18px 0}.hero p{max-width:660px;color:#edf1e8;font-size:1.05rem}.motto{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.hero-logo{width:min(100%,310px);aspect-ratio:1;object-fit:contain;border-radius:50%;background:white;box-shadow:0 24px 65px #0003;justify-self:center}.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:25px}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 20px;font-weight:700;text-decoration:none;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0002}.primary{background:var(--pink);color:white}.light{background:white;color:var(--deep)}.outline{border:1px solid #cfd9c8;color:var(--gd);background:transparent}.facts{max-width:1080px;margin:-28px auto 0;position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);background:var(--paper);box-shadow:var(--shadow);border-radius:16px;overflow:hidden}.fact{text-align:center;padding:20px;border-right:1px solid var(--line)}.fact:last-child{border:0}.fact b{display:block;font:600 1.1rem "Playfair Display",serif}.fact span{font-size:.86rem;color:var(--muted)}main{max-width:1200px;margin:auto;padding:24px 25px 75px}.section{padding:68px 0 8px}.head{text-align:center;max-width:720px;margin:0 auto 30px}.head h2,.band h2,.page-heading h1{font:600 clamp(2rem,3.5vw,3rem)/1.15 "Playfair Display",serif;color:var(--deep);margin:10px 0}.head p,.lead{color:var(--muted);margin:0 auto}.grid,.newsgrid,.videogrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:24px;box-shadow:0 8px 28px #24372b08;transition:.2s;min-width:0}.card:hover{box-shadow:var(--shadow)}.card h2,.card h3{font:600 1.3rem "Playfair Display",serif;margin:0 0 8px;color:var(--deep)}.card p{color:var(--muted)}.card img{border-radius:10px}.card-image{width:100%;max-height:230px;object-fit:cover}.icon{width:44px;height:44px;border-radius:13px;background:#edf1e8;display:grid;place-items:center;font-size:1.3rem;margin-bottom:15px}.large-icon{width:130px;height:130px;font-size:4rem;margin:auto}.textlink{color:var(--gd);font-weight:700;text-decoration:none}.empty{grid-column:1/-1;text-align:center;padding:24px;border:1px dashed #bfc9b8;border-radius:14px;color:var(--muted);background:var(--paper)}.date{font-size:.73rem;color:var(--g);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.band{background:#e9ede3;border-radius:20px;padding:30px;display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:center}.band h2{text-align:left}.band p{color:var(--muted)}.band-image{width:100%;max-height:350px;object-fit:cover;border-radius:15px}.pills,.socials{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0}.pill{background:white;border:1px solid #dbe2d5;border-radius:99px;padding:7px 12px;font-size:.8rem;font-weight:700}.socials a{display:inline-block;background:white;border:1px solid var(--line);border-radius:99px;padding:10px 14px;text-decoration:none;font-weight:700}.map{width:100%;height:290px;border:0;border-radius:14px;background:#e4e9df;margin-top:12px}.sermon{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center;background:var(--deep);color:white;border-radius:20px;padding:28px;margin-bottom:22px}.sermon h2{color:white}.video{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#14251a}.devintro{max-width:900px;margin:0 auto 24px;background:#edf0e8;border-radius:20px;padding:28px;text-align:center}.devintro h2{font:600 1.5rem "Playfair Display",serif}.card audio{width:100%;margin:12px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form label{display:block;font-weight:700;font-size:.88rem;margin:12px 0 5px}.form input,.form textarea,.form select{width:100%;padding:12px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink)}.form textarea{min-height:115px;resize:vertical}.form .btn{margin-top:14px}.prayer-item{padding:14px 0;border-bottom:1px solid var(--line)}.prayer-item h3{font-size:1rem}.notice{padding:14px 18px;border-radius:10px;background:#edf1e8;border:1px solid #cdd8c6}.notice-info{background:#fff7e7;border-color:#f0dfb6}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.page-heading{text-align:center;margin:20px auto 32px;max-width:800px}.lead{text-align:center;max-width:800px;margin-bottom:28px}.content-page{min-height:50vh}.carousel{overflow:hidden;position:relative;border-radius:18px;box-shadow:var(--shadow);background:var(--deep)}.carousel-track{display:flex;transition:transform .65s ease}.slide{min-width:100%;height:400px;position:relative}.slide img{width:100%;height:100%;object-fit:cover;display:block}.slide:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#15231bd9)}.slide-caption{position:absolute;z-index:1;bottom:26px;left:28px;color:white;font:600 1.8rem "Playfair Display",serif}.carousel-controls{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:var(--paper)}.carousel-controls button{border:0;background:#edf1e8;color:var(--deep);border-radius:50%;width:38px;height:38px;cursor:pointer;font-size:1.5rem}.carousel-controls [data-dots] button{border:0;background:transparent;color:var(--gd);padding:4px;cursor:pointer}.profile-img{width:100%;height:210px;object-fit:cover}.single-entry{max-width:850px;margin:auto}.entry-image{width:100%;max-height:500px;object-fit:cover;border-radius:16px}.entry-content{background:var(--paper);border-radius:16px;padding:clamp(20px,4vw,40px);margin:24px 0}.center{justify-content:center}footer{background:#203329;color:#eaf0e5;padding:42px 25px 20px}.foot{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px}.footbrand{display:flex;gap:12px;align-items:center}.footbrand img{width:62px;height:62px;border-radius:50%;background:white}.footbrand strong{font:600 1.1rem "Playfair Display",serif}.foot p,.foot a{color:#d1ddce;font-size:.87rem}.foot a{display:block;text-decoration:none;margin:5px 0}.copyright{max-width:1150px;margin:25px auto 0;border-top:1px solid #ffffff20;padding-top:18px;color:#bac8b7;font-size:.78rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media(max-width:1100px){.menu{display:block}.links{display:none;width:100%;justify-content:flex-start}.links.open{display:block}.links .menu-list{justify-content:flex-start}.nav{flex-wrap:wrap}.hero-in{grid-template-columns:1fr .5fr}.hero-logo{width:220px}.grid,.newsgrid,.videogrid{grid-template-columns:repeat(2,minmax(0,1fr))}.facts{margin-left:20px;margin-right:20px}}
@media(max-width:700px){.top{justify-content:center;text-align:center}.nav{padding:10px 15px}.brand img,.brand .custom-logo{width:47px;height:47px}.brand strong{font-size:.87rem}.brand small{font-size:.6rem}.links .menu-list{display:flex}.links a{width:calc(50% - 4px)}.hero-in{display:flex;flex-direction:column-reverse;align-items:flex-start;padding:45px 23px 65px;gap:20px}.hero-logo{width:130px}.hero h1{font-size:2.7rem}.facts{grid-template-columns:1fr;margin-top:-24px}.fact{border-right:0;border-bottom:1px solid var(--line);padding:14px}.fact:last-child{border:0}main{padding:8px 16px 50px}.section{padding-top:50px}.grid,.newsgrid,.videogrid,.split,.sermon,.band{grid-template-columns:1fr}.sermon,.band{padding:20px}.foot{grid-template-columns:1fr;gap:18px}.slide{height:260px}.slide-caption{font-size:1.3rem;left:18px;bottom:18px}.carousel-controls [data-dots]{font-size:.9rem}}
/* Buscador desplegable: no altera el ancho ni la distribución del menú */
.header-tools{display:flex;align-items:center;gap:8px;flex-shrink:0;position:relative}
.header-search{position:relative;display:flex;align-items:center;justify-content:flex-end;width:38px;height:38px;flex:0 0 38px;z-index:15}
.header-search input{position:absolute;right:0;top:50%;transform:translateY(-50%);width:0;max-width:none;height:38px;opacity:0;visibility:hidden;border:1px solid transparent;border-radius:999px;background:#fffefa;color:var(--ink);font-size:.84rem;padding:0;outline:0;transition:width .22s ease,opacity .18s ease,padding .22s ease;z-index:1}
.header-search .search-toggle,.header-search .search-submit,.header-user{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7dfd2;border-radius:50%;background:#fffefa;color:var(--gd);cursor:pointer;text-decoration:none;flex:0 0 38px;padding:0;position:relative;z-index:2}
.header-search .search-submit{display:none}
.header-search.is-open{position:absolute;right:46px;top:50%;transform:translateY(-50%);width:min(280px,42vw);height:42px;flex:0 0 auto;border:1px solid var(--line);border-radius:999px;background:#fffefa;padding:2px;box-shadow:0 8px 25px #24372b18}
.header-search.is-open input{width:100%;opacity:1;visibility:visible;padding:7px 43px 7px 13px;border-color:transparent}
.header-search.is-open .search-toggle{display:none}
.header-search.is-open .search-submit{display:inline-flex;position:absolute;right:1px;top:1px;width:36px;height:36px;background:#edf1e8;border:0}
.header-search button:hover,.header-user:hover{background:#edf1e8}
.header-search svg,.header-user svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.header-user .user-label{display:none}
@media(max-width:1100px){.header-tools{margin-left:auto}}
@media(max-width:700px){.header-tools{order:2;margin-left:auto;gap:6px}.header-search.is-open{width:min(250px,65vw);right:44px}.header-user{width:36px;height:36px;flex-basis:36px}.header-search{width:36px;height:36px;flex-basis:36px}.header-search .search-toggle{width:36px;height:36px;flex-basis:36px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Controles de administración y accesibilidad */
.header-login{flex-shrink:0}.login-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7dfd2;border-radius:999px;padding:7px 12px;font-size:.76rem;font-weight:700;text-decoration:none;color:var(--gd);white-space:nowrap}.login-link:hover{background:#edf1e8}.back-to-top{position:fixed;right:22px;bottom:22px;z-index:99;width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--pink);color:white;text-decoration:none;font-size:1.5rem;font-weight:700;box-shadow:0 8px 25px #0003;opacity:.94;transition:transform .2s}.back-to-top:hover{transform:translateY(-4px)}.editor-content{max-width:100%;line-height:1.75}.editor-content>*{max-width:100%}.editor-content .wp-block-image img{border-radius:14px}.editor-content .wp-block-cover,.editor-content .wp-block-group{border-radius:14px}.audio-dropdown{margin:12px 0;border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8f8f2}.audio-dropdown summary{font-weight:700;color:var(--gd);cursor:pointer}.audio-dropdown audio{display:block;width:100%;margin-top:12px}.header-login .login-link{background:#fffefa}
@media(max-width:700px){.nav{flex-wrap:wrap}.header-login{margin-left:auto}.back-to-top{right:14px;bottom:14px;width:42px;height:42px}}


/* ICCN 1.2: videos amplios, redes sociales con iconos y artículos */
.sermons-featured{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.sermon-home-card{padding:18px;display:flex;flex-direction:column;gap:10px}
.video-wrap{width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:#14251a;margin:8px 0 14px}
.video-wrap .video{display:block;width:100%;height:100%;aspect-ratio:auto;border:0;border-radius:0}
.sermons-archive{display:grid;grid-template-columns:1fr;gap:22px;max-width:1080px;margin:0 auto}
.sermon-card{padding:clamp(20px,3vw,34px)}
.sermon-card h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.sermon-meta{font-size:.78rem;color:var(--g);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.sermon-description,.sermon-content{max-width:900px}
.articles-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.article-card img{width:100%;max-height:300px;object-fit:cover;margin-bottom:14px}
.socials .social-icon,.footer-socials .social-icon{width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#fffefa;color:var(--gd);border:1px solid #dbe2d5;text-decoration:none;font-weight:800;font-size:1.35rem;transition:transform .2s,background .2s}
.socials .social-icon:hover,.footer-socials .social-icon:hover{background:#e9ede3;transform:translateY(-2px)}
.footer-socials{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 16px}
.footer-socials .social-icon{background:#304638;color:white;border-color:#5c735e}
.footer-socials .social-icon span{line-height:1}
@media(max-width:700px){.sermons-featured,.articles-list{grid-template-columns:1fr}.sermon-home-card{padding:15px}.sermons-archive{gap:15px}}

.sermons-page-grid{grid-template-columns:1fr;max-width:1080px;margin:0 auto}.sermons-page-grid .card{padding:clamp(20px,3vw,34px)}.sermons-page-grid .video-wrap{max-width:100%}

/* v1.2.1: editor-rendered sermon embeds and officers details */
.sermon-editor-content iframe,.sermon-content iframe,.entry-content iframe{max-width:100%;}
.sermon-editor-content .wp-block-embed,.sermon-editor-content .wp-block-video{margin:0 0 14px;}
.pastor-bio{margin-top:14px;border-top:1px solid var(--line,#dfe5dc);padding-top:12px;}
.pastor-bio summary{cursor:pointer;font-weight:700;color:var(--green-dark,#294534);}
.pastor-bio div{padding-top:10px;line-height:1.7;}
.deacon-person{padding:12px 0;border-top:1px solid var(--line,#dfe5dc);}
.deacon-person .profile-img{max-width:150px;height:auto;object-fit:cover;border-radius:12px;}
.deacon-person h3{margin:8px 0 2px;}
.deacon-person .role{font-weight:600;margin:0 0 6px;}


/* v1.2.2: búsqueda del sitio e inicio de sesión en la navegación superior */
.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-shrink:0}
.header-user{width:auto;min-width:38px;padding:0 10px;gap:7px;border:1px solid #d7dfd2;background:#fffefa}
.header-user .user-label{font-size:.74rem;font-weight:700;white-space:nowrap}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* v1.2.7 — acabado editorial, madera cálida y responsive */
:root{--g:#788b68;--gd:#294531;--deep:#172b1d;--pink:#bd2940;--cream:#f8f5ed;--paper:#fffdf7;--line:#e7dfcf;--shadow:0 18px 55px #30231312}
body{background-color:#f8f5ed;background-image:linear-gradient(#fffdf2e8,#fffdf2e8),url('assets/images/Fondo.jpg');background-size:auto,420px;background-attachment:scroll}
.site-header{background:#fffdf7ed;border-bottom:1px solid #d8c7a3;box-shadow:0 5px 25px #3325150a}
.nav{max-width:1360px;padding-top:14px;padding-bottom:14px}
.brand img,.brand .custom-logo{border-radius:50%;box-shadow:0 4px 15px #24372b18}
.hero{background:linear-gradient(115deg,#172d1eeb,#3d5a3fe8 60%,#788b68ed),url('assets/images/Fondo.jpg');background-size:cover;background-position:center}
.hero-in{padding-top:clamp(48px,7vw,90px);padding-bottom:clamp(55px,7vw,95px)}
.hero-logo{border:5px solid #f4e7c8;outline:2px solid #b58b42;outline-offset:5px}
.section{padding-top:clamp(42px,6vw,78px);padding-bottom:clamp(42px,6vw,78px)}
.card,.band,.fact{border-color:#e8dfcf}
.card{transition:transform .25s ease,box-shadow .25s ease;border-radius:18px}
.card:hover{transform:translateY(-4px);box-shadow:0 20px 45px #33251514}
.btn{min-height:44px}
.primary{background:var(--pink)}
.wood-divider{height:12px;background:url('assets/images/Fondo.jpg') center/cover;border-top:1px solid #d5c2a1;border-bottom:1px solid #d5c2a1}
.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.resource-card{height:100%;padding:24px;border:1px solid #e7dfcf;border-radius:18px;background:#fffdf7;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:flex-start;transition:transform .25s,box-shadow .25s}
.resource-card:hover{transform:translateY(-5px);box-shadow:0 22px 48px #33251518}
.resource-card .resource-icon{font-size:2rem;margin-bottom:12px}
.resource-card h3{margin:0 0 8px;font-family:'Playfair Display',serif}
.resource-card p{color:var(--muted);font-size:.94rem;flex:1}
.resource-card a{color:var(--gd);font-weight:800;text-decoration:none;border-bottom:1px solid #c4a76b;padding-bottom:3px}
.class-signup{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.class-signup label{display:block;font-weight:700;font-size:.9rem}
.class-signup input,.class-signup select,.class-signup textarea{display:block;width:100%;min-width:0;margin-top:6px;padding:12px 13px;border:1px solid #d9d4c7;border-radius:10px;background:white}
.class-signup .full{grid-column:1/-1}
.class-signup button{justify-self:start}
.social-qr{display:flex;align-items:center;gap:22px;background:#fffdf7;border:1px solid #e7dfcf;border-radius:18px;padding:20px;box-shadow:var(--shadow)}
.social-qr img{width:132px;height:132px;object-fit:contain;background:white;border-radius:10px}
.social-qr h3{margin-top:0}
.notice-success{padding:14px 18px;border-radius:12px;background:#e8f3e5;color:#23452b;border:1px solid #c7dfc2}
@media(max-width:1000px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav{gap:10px}.links a{padding:8px 7px}}
@media(max-width:700px){
 body{font-size:16px;overflow-wrap:anywhere}
 .nav{padding:10px 16px;gap:10px}.brand{max-width:calc(100% - 115px)}.brand strong{font-size:.94rem}.brand small{font-size:.62rem}
 .menu{display:block;min-height:42px}.links{display:none;flex:1 0 100%;width:100%;order:5}.links.open{display:block}.links .menu-list{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:3px}.links .menu-list a{padding:11px 12px;font-size:.94rem}
 .hero-in{grid-template-columns:1fr;text-align:center;gap:30px;padding:48px 22px 60px}.hero-in>div{min-width:0}.hero h1{font-size:clamp(2.25rem,10vw,3.5rem)}.hero-logo{width:min(65vw,230px);grid-row:1}.hero .actions{justify-content:center}
 .facts{margin:0 14px;grid-template-columns:1fr;gap:10px}.section{padding-left:17px;padding-right:17px}
 .resource-grid{grid-template-columns:1fr;gap:13px}.resource-card{padding:20px}
 .class-signup{grid-template-columns:1fr}.class-signup .full{grid-column:auto}
 .social-qr{align-items:flex-start;flex-direction:column}.social-qr img{width:118px;height:118px}
 .split,.band{grid-template-columns:1fr}.band-image{max-height:280px;width:100%;object-fit:cover}
 .video-wrap{border-radius:10px}.map{max-width:100%}
}
@media(min-width:701px) and (max-width:980px){.hero-in{gap:25px;padding-left:4vw;padding-right:4vw}.hero-logo{width:min(100%,250px)}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.resource-card,.card,.btn{transition:none!important}}


/* Ajustes de acabado v1.2.8: fondo limpio, navegación móvil y recursos */
body{background-color:#f8f5ed;background-image:linear-gradient(135deg,#fffdf7 0%,#f8f5ed 55%,#f3eee3 100%);background-size:cover;background-repeat:no-repeat}
.hero{background:linear-gradient(115deg,#172d1eF5,#3d5a3ff2 60%,#788b68f0);background-size:cover;background-position:center}
.wood-divider{display:none!important}
.resources-section{border-top:0!important;margin-top:0!important}
.resource-grid{align-items:stretch}
.resource-card{min-width:0;overflow-wrap:anywhere}
.resource-card a{display:inline-flex;align-items:center;gap:5px;min-height:42px;margin-top:12px;line-height:1.4}
@media(max-width:1100px){.nav{position:relative}.links .menu-list{gap:5px}.links a{white-space:normal;line-height:1.25}}
@media(max-width:700px){
 .nav{align-items:center}
 .links{flex:1 0 100%;width:100%;order:10;padding:8px 0 4px}
 .links.open{display:block;width:100%}
 .links .menu-list{display:grid!important;grid-template-columns:minmax(0,1fr);gap:7px;width:100%;margin:0;padding:0}
 .links .menu-list li{width:100%;min-width:0;margin:0}
 .links .menu-list a,.links a{display:flex;width:100%;min-height:44px;align-items:center;justify-content:flex-start;padding:12px 14px;border:1px solid #e4dece;border-radius:10px;background:#fffdf7;color:#24372b;font-size:.94rem;line-height:1.3;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
 .links .menu-list a:hover,.links .menu-list .current-menu-item>a{background:#edf1e8;border-color:#cbd6c3}
 .resource-grid{grid-template-columns:minmax(0,1fr);gap:13px}
 .resource-card{padding:20px}
 .confession-resource{grid-column:auto}
}
@media(min-width:701px){.confession-resource{grid-column:span 2}}


/* ============================================================
   ICCN 1.2.9 — UI/UX polish layer
   Visual-only overrides: existing templates, hooks, fields and
   plugin classes are intentionally preserved.
   ============================================================ */
:root{
  --g:#718568;
  --gd:#344b39;
  --deep:#1f3327;
  --pink:#b88b3b;
  --cream:#f6f7f3;
  --paper:#ffffff;
  --ink:#202a22;
  --muted:#68736a;
  --line:#e2e8df;
  --shadow:0 18px 48px rgba(31,51,39,.09);
  --shadow-hover:0 24px 56px rgba(31,51,39,.15);
}
html{scroll-padding-top:110px}
body{background:var(--cream);font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.01em;-webkit-font-smoothing:antialiased}
:where(h1,h2,h3,h4,h5,h6){text-wrap:balance}
p{max-width:75ch}
a,button,input,textarea,select,.card,.fact,.pill,.socials a,.carousel-controls button{transition:color .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .25s ease,transform .25s ease,opacity .22s ease}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c59b50;outline-offset:3px}
.top{padding:9px clamp(16px,5vw,72px);background:#1b2d22;font-size:.78rem;letter-spacing:.015em}
.top a{color:#f1e8d5;text-underline-offset:3px}
.top a:hover{color:#fff;text-decoration:underline}
.site-header{background:rgba(255,255,255,.94);box-shadow:0 5px 24px rgba(31,51,39,.045);border-bottom:1px solid rgba(226,232,223,.9)}
.nav{max-width:1320px;min-height:82px;padding:12px clamp(16px,3vw,34px);gap:16px}
.brand{gap:11px;min-width:0}
.brand img,.brand .custom-logo{width:54px;height:54px;border:1px solid #e7eadf;padding:3px;background:#fff;box-shadow:0 3px 12px rgba(31,51,39,.07)}
.brand strong{font-size:1.02rem;letter-spacing:-.025em;color:var(--deep)}
.brand small{display:block;margin-top:4px;font-size:.66rem;letter-spacing:.14em}
.links{align-items:center;gap:5px}
.links .menu-list{gap:4px;align-items:center}
.links a{font-size:.82rem;padding:10px 11px;border-radius:10px;color:#354539;line-height:1.35}
.links a:hover,.links .current-menu-item>a,.links .current_page_item>a{background:#edf2e9;color:#203729;box-shadow:inset 0 0 0 1px #e0e8da}
.menu{border:1px solid var(--line);background:#fff;color:var(--deep);font-weight:700;box-shadow:0 3px 12px rgba(31,51,39,.06);cursor:pointer}
.menu:hover{background:#edf2e9;border-color:#cbd7c5}
.header-search .search-toggle,.header-search .search-submit,.header-user{box-shadow:0 3px 12px rgba(31,51,39,.055)}
.header-search .search-toggle:hover,.header-search .search-submit:hover,.header-user:hover{transform:translateY(-2px);border-color:#cbd7c5;background:#edf2e9}
.hero{background:radial-gradient(ellipse at 88% 12%,rgba(255,255,255,.12),transparent 34%),linear-gradient(120deg,#1e3226 0%,#344d39 57%,#718568 100%)}
.hero:after{opacity:.45}
.hero-in{max-width:1280px;padding:clamp(54px,7vw,92px) clamp(22px,6vw,78px);gap:clamp(28px,5vw,68px)}
.hero .eyebrow{display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.07);font-size:.7rem;letter-spacing:.13em}
.hero h1{font-size:clamp(2.5rem,5vw,4.6rem);letter-spacing:-.045em;line-height:1.04;margin:22px 0}
.hero p{line-height:1.75}
.hero .motto{font-size:.73rem;line-height:1.8;color:#e4eadf}
.hero-logo{width:min(100%,330px);padding:7px;border:1px solid rgba(255,255,255,.6);box-shadow:0 25px 70px rgba(0,0,0,.24);animation:iccn-float 7s ease-in-out infinite}
@keyframes iccn-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.btn{min-height:46px;padding:12px 21px;letter-spacing:.005em;box-shadow:0 4px 12px rgba(0,0,0,.07)}
.btn.primary{background:#b88b3b;color:#fff;box-shadow:0 8px 22px rgba(184,139,59,.22)}
.btn.primary:hover{background:#a77b2d;box-shadow:0 12px 26px rgba(184,139,59,.28)}
.btn.light:hover{background:#f0f3ed;color:var(--deep)}
.facts{max-width:1120px;border:1px solid rgba(226,232,223,.9);border-radius:20px;box-shadow:0 18px 48px rgba(31,51,39,.1)}
.fact{padding:24px 20px}
.fact b{font-size:1.12rem;color:var(--deep)}
.fact span{display:block;margin-top:4px;line-height:1.55}
main{max-width:1280px;padding:30px clamp(16px,3vw,34px) 84px}
.section{padding:clamp(48px,6vw,78px) 0 8px}
.head{margin-bottom:34px}
.kicker,.eyebrow{letter-spacing:.15em}
.head h2,.band h2,.page-heading h1{letter-spacing:-.035em;line-height:1.12}
.head p,.lead{line-height:1.8;font-size:1rem}
.grid,.newsgrid,.videogrid{gap:22px}
.card{padding:clamp(20px,2.5vw,30px);border:1px solid #e3e8df;border-radius:20px;background:#fff;box-shadow:0 5px 22px rgba(31,51,39,.035);overflow-wrap:anywhere}
.card:hover{transform:translateY(-4px);border-color:#d3dece;box-shadow:var(--shadow-hover)}
.card h2,.card h3{line-height:1.28;letter-spacing:-.02em}
.card p{line-height:1.75}
.card img,.card-image{border-radius:13px}
.icon{background:#edf2e9;color:var(--deep);border:1px solid #e2e9dc}
.textlink{display:inline-flex;align-items:center;gap:5px;text-underline-offset:4px}
.textlink:hover{color:#9a7028;gap:9px}
.empty{border-radius:16px;background:#fff}
.band{border:1px solid #e0e8db;border-radius:22px;background:linear-gradient(135deg,#eef3e9,#fff);padding:clamp(22px,4vw,42px);box-shadow:0 10px 32px rgba(31,51,39,.045)}
.pill{border-radius:999px;background:#fff;border-color:#dfe7da;padding:8px 13px}
.pill:hover,.socials a:hover{transform:translateY(-2px);border-color:#c3d2bc;box-shadow:0 7px 18px rgba(31,51,39,.07)}
.socials a{border-radius:12px}
.map{border:1px solid var(--line);box-shadow:0 8px 24px rgba(31,51,39,.06)}
.sermon{border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(135deg,#203529,#304b37);box-shadow:var(--shadow);padding:clamp(20px,3vw,34px)}
.video,.video-wrap{border-radius:15px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.devintro{border:1px solid #e1e8dc;background:linear-gradient(135deg,#edf2e9,#fff);box-shadow:0 8px 25px rgba(31,51,39,.04);padding:clamp(20px,3vw,32px)}
.form input,.form textarea,.form select{min-height:46px;border-color:#dce4d8;border-radius:11px;box-shadow:inset 0 1px 2px rgba(31,51,39,.025)}
.form input:focus,.form textarea:focus,.form select:focus{border-color:#8da183;box-shadow:0 0 0 4px rgba(113,133,104,.14);outline:0}
.form textarea{min-height:130px}
.form .btn{min-width:150px}
.notice{border-radius:13px}
.page-heading{padding:clamp(20px,4vw,38px) 0 8px}
.entry-content{border:1px solid var(--line);box-shadow:0 8px 30px rgba(31,51,39,.04);line-height:1.8}
.carousel{border-radius:22px;box-shadow:var(--shadow)}
.carousel-track{will-change:transform}
.slide img{transition:transform .7s ease}
.carousel:hover .slide img{transform:scale(1.015)}
.carousel-controls{padding:12px 16px}
.carousel-controls button{box-shadow:0 3px 10px rgba(31,51,39,.06)}
.carousel-controls button:hover{background:var(--deep);color:#fff;transform:scale(1.05)}
.carousel-controls [data-dots] button[aria-current="true"]{color:#9e762f}
.profile-img{border-radius:14px}
footer{background:linear-gradient(135deg,#1b2d22,#2a4030);padding:clamp(34px,5vw,54px) clamp(18px,4vw,42px) 20px}
.foot{max-width:1240px;gap:clamp(20px,4vw,42px)}
.footbrand img{border:1px solid rgba(255,255,255,.3);padding:3px}
.foot a{text-underline-offset:3px}
.foot a:hover{color:#fff;text-decoration:underline}
.copyright{border-color:#ffffff24}
.back-to-top{background:#b88b3b;box-shadow:0 10px 26px rgba(0,0,0,.2)}
.back-to-top:hover{background:#a77b2d;transform:translateY(-4px)}

/* Reveal states are enabled only after JavaScript successfully initializes. */
.iccn-reveal-ready .iccn-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease;transition-delay:var(--iccn-reveal-delay,0ms)}
.iccn-reveal-ready .iccn-reveal.iccn-revealed{opacity:1;transform:translateY(0)}

/* Responsive navigation: single-column, full-width tap targets. */
@media(max-width:1100px){
 .nav{gap:12px}
 .menu{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 13px;border-radius:12px}
 .links{display:none;order:5;width:100%;flex:0 0 100%;padding:9px;margin:2px 0 4px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 14px 32px rgba(31,51,39,.1)}
 .links.open{display:block;animation:iccn-menu-in .18s ease-out both}
 .links .menu-list{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%}
 .links .menu-list>li{display:block;width:100%;margin:0}
 .links a{display:flex;align-items:center;width:100%;min-height:44px;padding:11px 13px;font-size:.9rem;border-radius:10px;white-space:normal;overflow-wrap:anywhere}
 .nav{flex-wrap:wrap}
 .header-tools{margin-left:auto}
 .hero-in{grid-template-columns:minmax(0,1fr) minmax(180px,.55fr)}
}
@keyframes iccn-menu-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){
 html{scroll-padding-top:80px}
 .top{padding:8px 12px;font-size:.72rem;gap:4px}
 .top span{max-width:100%}
 .nav{padding:10px 14px;gap:9px}
 .brand{gap:8px;max-width:calc(100% - 115px)}
 .brand img,.brand .custom-logo{width:43px;height:43px;flex:0 0 43px}
 .brand strong{font-size:.82rem;line-height:1.18}
 .brand small{font-size:.58rem;letter-spacing:.1em}
 .menu{font-size:.82rem;min-height:40px;padding:8px 10px;white-space:nowrap}
 .header-tools{order:3;gap:5px}
 .header-search,.header-search .search-toggle,.header-user{width:35px;height:35px;flex-basis:35px}
 .header-search.is-open{right:40px;width:min(250px,68vw)}
 .links{padding:8px}
 .links a{font-size:.88rem;min-height:46px;padding:12px}
 .hero-in{display:flex;flex-direction:column-reverse;align-items:flex-start;padding:42px 22px 58px;gap:20px}
 .hero-logo{width:112px;align-self:center;margin-bottom:2px}
 .hero h1{font-size:clamp(2.15rem,9vw,3.1rem);line-height:1.06;margin:14px 0}
 .hero p{font-size:.98rem;line-height:1.7}
 .hero .motto{font-size:.68rem;letter-spacing:.045em}
 .actions{width:100%;gap:9px}
 .actions .btn{flex:1 1 100%;width:100%;min-height:46px}
 .facts{grid-template-columns:1fr;margin: -22px 14px 0;border-radius:16px}
 .fact{padding:15px 17px;border-right:0;border-bottom:1px solid var(--line)}
 main{padding:12px 15px 56px}
 .section{padding:46px 0 4px}
 .head{margin-bottom:24px}
 .head h2,.band h2,.page-heading h1{font-size:clamp(1.75rem,7vw,2.35rem)}
 .head p,.lead{font-size:.94rem}
 .grid,.newsgrid,.videogrid,.articles-list,.split,.sermon,.band,.sermons-featured{grid-template-columns:minmax(0,1fr)}
 .grid,.newsgrid,.videogrid{gap:14px}
 .card{padding:20px;border-radius:17px}
 .sermon,.band{padding:19px;border-radius:17px}
 .slide{height:clamp(210px,62vw,300px)}
 .slide-caption{font-size:1.18rem;left:16px;right:16px;bottom:16px}
 .carousel-controls{padding:9px 11px}
 .carousel-controls button{width:36px;height:36px}
 .foot{grid-template-columns:minmax(0,1fr);gap:22px}
 .foot p,.foot a{overflow-wrap:anywhere}
 .copyright{font-size:.74rem;line-height:1.6}
 .map{height:250px}
 .entry-content{padding:20px 17px}
 .form label{font-size:.9rem}
 .form input,.form textarea,.form select{font-size:16px}
 .back-to-top{width:40px;height:40px;right:12px;bottom:12px}
}
@media(min-width:701px) and (max-width:900px){
 .hero-in{gap:28px;padding:58px 28px}
 .hero-logo{width:210px}
 .grid,.newsgrid,.videogrid,.articles-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .foot{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}
