/*
Theme Name: MASIBE Twenty Twenty-Five Child
Theme URI: https://masibe.es/
Description: Tema hijo corporativo para MASIBE PROJECTS S.L.
Author: MASIBE PROJECTS S.L.
Template: twentytwentyfive
Version: 1.1.5
Requires at least: 6.7
Requires PHP: 8.2
Text Domain: masibe
*/
:root { --masibe-orange:#fd6906; --masibe-dark:#24272a; --masibe-paper:#f6f5f2; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { overflow-x:hidden; }
.masibe-site-header { padding:0 4vw; position:relative; z-index:10; }
.masibe-header-inner { align-items:center !important; display:flex !important; justify-content:space-between !important; margin-inline:auto !important; min-height:5.6rem; max-width:1480px !important; width:100% !important; }
.masibe-brand-logo { flex:0 0 auto; height:5rem; margin:0 !important; overflow:visible; width:auto !important; }
.masibe-brand-logo a { align-items:center; display:flex; height:100%; }
.masibe-brand-logo img { display:block; height:5rem !important; max-height:none !important; max-width:none !important; object-fit:contain; width:auto !important; }
.masibe-contact { align-items:center !important; display:flex !important; flex:0 0 auto; flex-direction:row !important; gap:.6rem 2rem; justify-content:flex-end !important; margin-left:auto !important; }
.masibe-contact p { margin:0; }
.masibe-contact a,.masibe-site-footer a { color:inherit; text-decoration-color:var(--masibe-orange); text-underline-offset:.25em; }
.masibe-contact a:hover,.masibe-contact a:focus-visible,.masibe-site-footer a:hover,.masibe-site-footer a:focus-visible { color:var(--masibe-orange); }
.masibe-eyebrow { color:#bb510e; font-size:.72rem; font-weight:700; letter-spacing:.24em; margin:0 0 1rem; text-transform:uppercase; }
.masibe-hero { background-image:linear-gradient(90deg,#f8f7f4 0%,rgba(248,247,244,.98) 25%,rgba(248,247,244,.77) 39%,rgba(248,247,244,.12) 61%,rgba(248,247,244,0) 74%),var(--masibe-hero-image); background-position:center,right center; background-repeat:no-repeat; background-size:cover; min-height:clamp(31rem,56vw,43rem); position:relative; }
.masibe-hero-content { max-width:1480px; padding:clamp(4rem,7vw,7rem) 4vw; width:100%; }
.masibe-hero-content > * { max-width:min(43rem,48%); }
.masibe-hero h1 { color:#171a1e; font-size:clamp(2.7rem,5.3vw,5.7rem); font-weight:520; letter-spacing:-.055em; line-height:.94; margin:0 0 1.5rem; }
.masibe-hero h1 span,.masibe-method h2 span { color:var(--masibe-orange); }
.masibe-hero-lead { font-size:clamp(1rem,1.25vw,1.22rem); line-height:1.5; }
.masibe-corporate-more { margin-top:1.8rem; }
.masibe-corporate-more summary { border:1px solid #35383b; cursor:pointer; display:inline-flex; font-size:.76rem; font-weight:750; gap:2rem; letter-spacing:.17em; list-style:none; padding:.9rem 1.25rem; text-transform:uppercase; }
.masibe-corporate-more summary::-webkit-details-marker { display:none; }
.masibe-corporate-more summary:focus-visible { outline:3px solid var(--masibe-orange); outline-offset:3px; }
.masibe-corporate-more[open] { background:rgba(248,247,244,.95); padding:1.2rem; }
.masibe-corporate-more[open] summary { margin-bottom:1rem; }
.masibe-corporate-more div { font-size:.94rem; }
.masibe-projects { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr); column-gap:clamp(2rem,6vw,7rem); max-width:none !important; padding:clamp(2.7rem,4vw,4.2rem) 3.7vw 2.4rem; }
.masibe-projects > h2 { align-self:end; font-size:clamp(2.3rem,4.5vw,4.7rem) !important; font-weight:520; grid-column:1; letter-spacing:-.05em; margin:0; text-align:left !important; }
.masibe-projects > p { align-self:end; grid-column:2; margin:0 0 .45rem; max-width:34rem; text-align:left !important; }
.masibe-project-grid { align-items:start; display:grid; gap:clamp(.8rem,1.35vw,1.4rem); grid-column:1/-1; grid-template-columns:repeat(6,minmax(0,1fr)); margin-top:2.4rem; max-width:none !important; width:100% !important; }
.masibe-project-card { grid-column:span 2; }
.masibe-project-card:nth-child(4) { grid-column:2/span 2; }
.masibe-project-card:nth-child(5) { grid-column:4/span 2; }
.masibe-project-card { background:#faf9f7; border:0; border-bottom:3px solid var(--masibe-orange); min-width:0; }
.masibe-project-card:nth-child(2){border-color:#3094b5}.masibe-project-card:nth-child(3){border-color:#d32f7c}.masibe-project-card:nth-child(4){border-color:#e1b420}.masibe-project-card:nth-child(5){border-color:#2b9b91}

.masibe-project-card summary { cursor:pointer; display:grid; grid-template-columns:minmax(11rem,42%) minmax(0,1fr); grid-template-rows:auto auto 1fr auto; min-height:12.25rem; height:auto; list-style:none; outline-offset:4px; }
.masibe-project-card summary::-webkit-details-marker { display:none; }
.masibe-project-card summary:focus-visible { outline:3px solid var(--masibe-orange); }
.masibe-project-card summary img { display:block; grid-column:1; grid-row:1/-1; height:100%; min-height:12.25rem; object-fit:cover; width:100%; }
.masibe-project-card[open] summary img { aspect-ratio:auto; }
.masibe-project-name { color:#171a1e; font-size:1.2rem; font-weight:760; grid-column:2; padding:1rem 1rem .18rem; }
.masibe-project-status { align-self:flex-start; background:#24272a; color:#fff; font-size:.65rem; font-weight:700; grid-column:2; letter-spacing:.06em; margin:0 1rem .25rem; padding:.16rem .42rem; text-transform:uppercase; }
.masibe-project-brief { color:#4e5052; font-size:.9rem; grid-column:2; line-height:1.42; padding:0 1rem .45rem; }
.masibe-toggle { font-size:0; grid-column:2; margin-top:auto; padding:.2rem 1rem .75rem; }
.masibe-toggle::after { color:#26292c; content:'→'; font-size:1.2rem; }
.masibe-project-card[open] .masibe-toggle::after { content:'↑'; }
.masibe-project-full { border-top:1px solid #dedbd5; columns:1; padding:1rem 1.15rem .85rem; }
.masibe-project-full p { break-inside:avoid; font-size:.94rem; margin-top:0; }
.masibe-principles { border-top:1px solid #ddd9d2; display:grid; gap:0; grid-template-columns:repeat(3,1fr); margin:0 4vw; max-width:1480px; padding:2.2rem 0 2.8rem; }
.masibe-principles article { align-items:flex-start; border-right:1px solid #ddd9d2; display:flex; gap:1rem; padding:0 2.5rem; }
.masibe-principles article:first-child { padding-left:0; }.masibe-principles article:last-child { border:0; padding-right:0; }
.masibe-principle-number { color:var(--masibe-orange); font-size:2rem; font-weight:300; line-height:1; }
.masibe-principles h3 { font-size:.76rem; letter-spacing:.2em; margin:0 0 .45rem; }
.masibe-principles p { font-size:.9rem; line-height:1.45; margin:0; }
.masibe-method { background-image:linear-gradient(90deg,#f7f6f3 0%,#f7f6f3 37%,rgba(247,246,243,.9) 45%,rgba(247,246,243,.08) 64%),var(--masibe-method-image); background-position:center,right center; background-repeat:no-repeat; background-size:cover; min-height:clamp(27rem,43vw,36rem); }
.masibe-method-content { padding:clamp(4rem,6vw,6rem) 4vw; width:min(46rem,51%); }
.masibe-method h2 { font-size:clamp(2.6rem,4.8vw,5rem); font-weight:520; letter-spacing:-.05em; line-height:.98; margin:.4rem 0 1.5rem; }
.masibe-method-content > p:not(.masibe-eyebrow) { max-width:35rem; }
.masibe-site-footer { padding:2.7rem 4vw 1.2rem; }
.masibe-site-footer > * { max-width:1480px !important; }
.masibe-site-footer .wp-block-separator { margin-top:1.5rem; opacity:.45; }
.masibe-legal-page { margin-inline:auto; max-width:820px; padding:clamp(3rem,7vw,6rem) 1.3rem; }

@media (min-width:1600px){.masibe-hero-content,.masibe-principles{margin-inline:auto}.masibe-projects{padding-inline:max(4vw,calc((100vw - 1540px)/2))}}
@media (max-width:1100px){.masibe-projects{grid-template-columns:1fr}.masibe-projects>h2,.masibe-projects>p{grid-column:1}.masibe-projects>p{margin-top:.8rem}.masibe-project-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1.8rem}.masibe-project-card,.masibe-project-card:nth-child(4),.masibe-project-card:nth-child(5){grid-column:auto}.masibe-principles article{padding-inline:1.4rem}}
@media (max-width:781px){
 .masibe-site-header{padding-inline:1.3rem}.masibe-header-inner{align-items:center!important;flex-direction:column!important;gap:.45rem;min-height:auto;padding-block:.65rem}.masibe-brand-logo,.masibe-brand-logo img{height:4.4rem!important}.masibe-contact{align-items:center!important;flex-direction:row!important;gap:.35rem 1.1rem;justify-content:center!important;margin-left:0!important;width:100%}
 .masibe-hero{background-image:linear-gradient(180deg,rgba(248,247,244,.1) 0%,#f8f7f4 53%),var(--masibe-hero-image);background-position:center top;background-size:auto 58%,auto 58%;padding-top:15rem}.masibe-hero-content{padding:2.8rem 1.4rem 3.5rem}.masibe-hero-content>*{max-width:none}.masibe-hero h1{font-size:clamp(2.55rem,11vw,4.4rem)}
 .masibe-projects{padding-inline:1.3rem}.masibe-project-grid{grid-template-columns:1fr;margin-top:1.6rem}.masibe-project-full{columns:1}.masibe-principles{grid-template-columns:1fr;margin-inline:1.3rem}.masibe-principles article,.masibe-principles article:first-child,.masibe-principles article:last-child{border-bottom:1px solid #ddd9d2;border-right:0;padding:1.2rem 0}.masibe-principles article:last-child{border-bottom:0}
 .masibe-method{background-image:linear-gradient(180deg,rgba(247,246,243,0) 0%,#f7f6f3 54%),var(--masibe-method-image);background-position:center top;background-size:auto 58%,auto 58%;padding-top:13rem}.masibe-method-content{padding:2.8rem 1.4rem 3.5rem;width:100%}
}
@media (max-width:520px){.masibe-project-card summary{display:flex;flex-direction:column;min-height:0}.masibe-project-card summary img,.masibe-project-card[open] summary img{aspect-ratio:16/9;height:auto;min-height:0}.masibe-project-card[open]{grid-column:auto}.masibe-contact{font-size:.88rem;flex-direction:column!important;gap:.15rem}.masibe-site-footer{padding-inline:1.3rem}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
