/*
Theme Name: Cavallomio Magazine
Description: Magazine editoriale responsive
Version: 1.0
*/
:root{--forest:#172c27;--gold:#e6aa51;--ink:#202b29;--muted:#66736e;--cream:#f6f4ed}*{box-sizing:border-box}body{margin:0;background:#fafaf7;color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{text-decoration:none;color:inherit}a:hover{color:#a96c18}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}.cm-container{width:min(1240px,calc(100% - 44px));margin:auto}.cm-top{background:var(--forest);color:#e7eee7;font-size:11px;font-weight:750;letter-spacing:1.5px}.cm-top .cm-container{display:flex;justify-content:space-between;padding:9px 0}.cm-masthead{min-height:138px;display:flex;justify-content:space-between;align-items:center;gap:25px}.cm-logo{font-family:Georgia,serif;font-size:clamp(29px,4vw,51px);font-weight:900;letter-spacing:-2.8px;line-height:1;color:var(--forest)}.cm-logo span,.cm-footer strong span{color:#b47d2e}.cm-logo small{display:block;font:700 10px system-ui;letter-spacing:4px;margin-top:13px}.cm-banner{border-left:4px solid var(--gold);padding:12px 20px;display:flex;flex-direction:column;gap:5px;color:var(--forest)}.cm-banner b{font:800 21px Georgia,serif}.cm-banner span{font-size:13px}.cm-nav{background:var(--forest);color:#fff}.cm-nav .cm-container{display:flex;flex-wrap:wrap;gap:0}.cm-nav a{padding:17px 21px;font-size:12px;font-weight:800;letter-spacing:1px}.cm-nav a:hover{background:var(--gold);color:var(--forest)}.cm-main{padding:36px 0 80px}.cm-eyebrow{display:flex;justify-content:space-between;gap:10px;border-bottom:3px solid var(--forest);padding-bottom:11px;margin-bottom:20px;font-size:11px;letter-spacing:2px;font-weight:900}.cm-eyebrow span:last-child{color:var(--muted)}.cm-hero{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.cm-card{background:#fff;min-width:0}.cm-photo{display:block;aspect-ratio:1.35;overflow:hidden;background:#d9dfd8}.cm-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.cm-card:hover img{transform:scale(1.045)}.cm-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(130deg,#c9d4c9,#e9e3d2);color:var(--forest);font:900 40px Georgia,serif}.cm-placeholder span{color:var(--gold)}.cm-copy{padding:15px 5px 19px}.cm-category{display:inline-block;color:#a56b21;font-size:10px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:9px}.cm-card h3{font:800 clamp(17px,1.5vw,22px)/1.25 Georgia,serif;margin:0 0 13px}.cm-card time,.cm-feeditem time{font-size:11px;color:var(--muted)}.cm-section-title{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #d8ddd7;margin:55px 0 25px;padding-bottom:15px;gap:20px}.cm-section-title span{font-size:11px;font-weight:900;letter-spacing:2px;color:#9a671d}.cm-section-title h1,.cm-section-title h2{font:800 clamp(31px,4vw,49px)/1.1 Georgia,serif;margin:0}.cm-section-title em{color:#b77c30}.cm-content{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:52px}.cm-feeditem{display:grid;grid-template-columns:190px 1fr;gap:23px;padding:22px 0;border-bottom:1px solid #e1e5e0}.cm-feedphoto{aspect-ratio:1.3;display:block;overflow:hidden;background:#e2e7df}.cm-feedphoto img{width:100%;height:100%;object-fit:cover}.cm-feeditem h3{font:800 23px/1.2 Georgia,serif;margin:0 0 8px}.cm-feeditem p{color:var(--muted);font-size:13px;margin:0 0 8px}.cm-aside h3{font-size:13px;letter-spacing:2px;border-bottom:3px solid var(--forest);padding:12px 0}.cm-trend{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid #dfe3df;font:700 16px/1.35 Georgia,serif}.cm-trend b{color:#b47d2e;font:800 25px Georgia,serif}.cm-asidebanner{background:var(--forest);color:#fff;padding:34px 24px;margin:30px 0}.cm-asidebanner small{font-size:11px;letter-spacing:2px}.cm-asidebanner strong{display:block;font:800 34px/1.1 Georgia,serif;margin:22px 0}.cm-asidebanner strong span{color:var(--gold)}.cm-asidebanner p{font-size:13px;color:#ccd6ce}.cm-catlink{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #dfe3df;font-weight:700}.cm-break{background:#e8e8dd;padding:46px;margin:65px 0 0}.cm-break span{font-size:11px;font-weight:900;letter-spacing:2px;color:#a36d26}.cm-break strong{display:block;font:800 clamp(32px,5vw,58px)/1.1 Georgia,serif;margin-top:12px}.cm-break em{color:#b47d2e}.cm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.cm-article{max-width:830px;margin:20px auto 70px}.cm-article h1{font:800 clamp(34px,5vw,58px)/1.1 Georgia,serif;letter-spacing:-1px;margin-bottom:18px}.cm-articlemeta{color:var(--muted);font-size:13px;border-bottom:1px solid #d9dfd8;padding-bottom:20px;margin-bottom:30px}.cm-prose{font-size:18px;line-height:1.85;overflow-wrap:anywhere}.cm-prose img{height:auto}.cm-prose a{text-decoration:underline}.cm-footer{background:var(--forest);color:#f1f4ed;padding:55px 0 22px}.cm-footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.cm-footgrid strong{font:900 30px Georgia,serif}.cm-footgrid p{color:#b8c5bc;font-size:13px}.cm-footgrid h3{font-size:12px;letter-spacing:2px}.cm-footgrid a{display:block;font-size:13px;margin:10px 0}.cm-disclaimer{border-top:1px solid #42544c;margin-top:30px;padding-top:22px;color:#bdc8c0;font-size:12px;line-height:1.65}.cm-copyright{font-size:11px;color:#a6b4a9;margin-top:18px}.cm-contactform{margin:30px 0;padding:30px;background:#ecf0e9;border-top:5px solid var(--gold);font:16px/1.5 system-ui}.cm-contactform label{display:block;font-weight:700;margin-bottom:15px}.cm-contactform input,.cm-contactform textarea{display:block;width:100%;border:1px solid #adb9ad;padding:12px;margin-top:6px;font:inherit;background:white}.cm-contactform button{background:var(--forest);color:white;border:0;padding:15px 26px;font-weight:900;cursor:pointer}.cm-contactform p{font-size:13px}.cm-honeypot{position:absolute;left:-9999px}.cm-pagination{margin:35px 0}
/* Editorial hero carousel */
.cm-slider{position:relative;background:#172c27;margin-bottom:14px;overflow:hidden}.cm-slides{position:relative;height:clamp(350px,48vw,590px)}.cm-slide{position:absolute;inset:0}.cm-slide[hidden]{display:none!important}.cm-slide-link{position:absolute;inset:0;display:block;color:#fff}.cm-slide-link:hover{color:#fff}.cm-slide-image,.cm-slide-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cm-slide-fallback{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 70% 25%,#4d7163,#172c27 70%);font:900 clamp(40px,8vw,105px) Georgia,serif;color:#b9c8bc;letter-spacing:-5px}.cm-slide-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,25,22,.88) 0%,rgba(10,25,22,.48) 60%,rgba(10,25,22,.12) 100%),linear-gradient(0deg,rgba(10,25,22,.5),transparent 60%)}.cm-slide-copy{position:absolute;bottom:clamp(75px,9vw,120px);left:clamp(22px,6vw,85px);right:clamp(22px,6vw,85px);max-width:790px}.cm-slide-label{display:inline-block;background:#e6aa51;color:#172c27;font-size:11px;font-weight:900;letter-spacing:1.8px;padding:10px 13px}.cm-slide-label b{font-weight:600}.cm-slide-copy h2{font:800 clamp(32px,5.2vw,66px)/1.08 Georgia,serif;letter-spacing:-1.6px;margin:23px 0 22px;text-wrap:balance}.cm-slide-copy p{font-size:12px;font-weight:900;letter-spacing:2px;margin:0}.cm-slide-copy p span{color:#e6aa51;font-size:20px}.cm-slide-controls{position:absolute;bottom:23px;right:30px;display:flex;align-items:center;gap:12px;color:#fff}.cm-slide-controls button{width:44px;height:44px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.45);color:#fff;font-size:26px;cursor:pointer;transition:background .2s}.cm-slide-controls button:hover{background:#e6aa51;color:#172c27}.cm-slide-controls .cm-slide-pause{font-size:14px}.cm-slide-count{font-size:12px;font-weight:800;letter-spacing:2px;min-width:65px;text-align:center}@media(max-width:580px){.cm-slides{height:440px}.cm-slide-shade{background:linear-gradient(0deg,rgba(10,25,22,.92),rgba(10,25,22,.22) 85%)}.cm-slide-copy{bottom:95px}.cm-slide-copy h2{font-size:33px;letter-spacing:-.5px}.cm-slide-controls{right:16px;bottom:17px;gap:7px}.cm-slide-controls button{width:38px;height:38px}}
@media(max-width:900px){.cm-hero,.cm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-content{grid-template-columns:1fr}.cm-footgrid{grid-template-columns:1fr 1fr}.cm-banner{display:none}}@media(max-width:580px){.cm-container{width:min(100% - 28px,1240px)}.cm-masthead{min-height:100px}.cm-nav a{padding:13px 10px;font-size:10px}.cm-hero,.cm-grid{gap:12px}.cm-card h3{font-size:16px}.cm-copy{padding:12px 2px}.cm-feeditem{grid-template-columns:105px 1fr;gap:13px}.cm-feeditem h3{font-size:18px}.cm-feeditem p{display:none}.cm-break{padding:28px 20px}.cm-footgrid{grid-template-columns:1fr;gap:20px}.cm-top .cm-container span:last-child{display:none}}