/* D'ORIA EDILIZIA — REDESIGN 2026. Sito responsive, logo senza badge circolare. */
:root{--accent:#628b36;--ink:#18261c;--dark:#142319;--line:#e4e9df;--soft:#f7f8f4;--font:'Manrope',Arial,sans-serif}
body{overflow-x:hidden}em{font-family:Georgia,'Times New Roman',serif;font-weight:400!important;font-style:italic;letter-spacing:-.052em}
.announcement{background:#14261b;height:32px;color:#dfebda;letter-spacing:.2em}
.site-header{height:96px;background:rgba(255,255,255,.96);backdrop-filter:blur(15px);border-color:#eef0eb}
.brand-lockup{height:80px;width:220px;gap:11px;display:flex;justify-content:flex-start;flex-shrink:0;overflow:visible}
.brand-mark{height:var(--logo-size,64px);width:var(--logo-size,64px);flex:0 0 auto;display:grid;place-items:center;overflow:visible}
.brand-lockup .brand-mark img{width:100%;height:100%;object-fit:contain;display:block;mix-blend-mode:multiply}
.brand-words{display:flex;flex-direction:column;gap:0;line-height:1.01}
.brand-words strong{font-size:25px;letter-spacing:-.05em;color:#101510;font-weight:800;white-space:nowrap}
.brand-words small{font-size:10px;letter-spacing:.32em;color:var(--accent);font-weight:800;margin-top:5px}
.brand-lockup.full-logo{width:230px}
.brand-lockup.full-logo .brand-mark{width:auto;height:var(--logo-size,64px);max-width:220px;aspect-ratio:1/1}
.brand-lockup.full-logo .brand-words{display:none}
.brand-lockup.align-center{justify-content:center}
.main-nav{gap:30px}
.main-nav a{font-size:11px;text-transform:uppercase;letter-spacing:.075em;color:#455348}
.nav-contact{background:#1c3623;color:#fff;border:0;border-radius:2px;padding:17px 20px;letter-spacing:.01em;font-size:11px}
.nav-contact:hover{background:var(--accent)}
.hero{min-height:min(740px,calc(100svh - 128px));grid-template-columns:.96fr 1.04fr;gap:3%;padding-top:55px;padding-bottom:73px}
.hero-copy{padding-top:74px}
.hero h1{font-size:clamp(54px,5.85vw,91px);letter-spacing:-.082em;line-height:1.07;margin-top:39px}
.hero h1 em{letter-spacing:-.076em;color:var(--accent);white-space:normal}
.hero-copy>p{font-size:15px;line-height:1.93;color:#65716a;max-width:470px}
.section-kicker,.eyebrow{font-size:10px;letter-spacing:.18em}
.btn{border-radius:2px;min-height:58px;padding:19px 24px}
.btn-primary,.btn-light{background:#577d31;color:#fff}
.btn-primary:hover,.btn-light:hover{background:#355820}
.text-link:hover,.underlined-link:hover{color:var(--accent);border-color:var(--accent)}
.hero-visual-head,.hero-visual-foot{color:#6e796f}
.hero-photo-wrap{min-height:530px;border-radius:2px;background:#d7ddcf}
.hero-photo,.hero-video{filter:saturate(.85);object-position:center}
.hero-photo-wrap:after{background:linear-gradient(0deg,rgba(13,28,19,.73),transparent 62%)}
.hero-overlay{left:36px;bottom:30px;font-size:clamp(30px,2.85vw,42px);font-weight:600;letter-spacing:-.065em}
.hero-overlay-top{letter-spacing:.24em;font-weight:700}
.hero-visual-foot{padding-top:18px}
.brand-strip{background:#eaf0e4;padding:24px 0}
.brand-strip-inner span{color:#476249;letter-spacing:.16em;font-weight:800}
.section{padding-top:116px;padding-bottom:125px}
.about-grid h2,.section-heading h2,.reviews-section h2,.process-section h2{font-weight:650;letter-spacing:-.065em;line-height:1.15}
.about-grid h2{max-width:690px}
.about-text p{font-size:15px;color:#607064}
.about-decoration>span:first-child{color:#eef3ea;font-weight:800}
.services-section{background:#f8faf6}
.service-row{grid-template-columns:60px 1.07fr 1fr 54px;gap:30px;min-height:154px;padding:36px 2px;transition:background .2s ease,padding .2s ease}
.service-row:hover{background:#f0f5ea;padding-left:16px;padding-right:16px}
.service-num{font-size:12px}
.service-title{font-size:clamp(21px,2.2vw,30px);letter-spacing:-.04em}
.service-description{font-size:13px}
.service-icon{background:#ecf2e6;color:#527531;border:none;border-radius:3px;width:44px;height:44px}
.projects-grid{grid-template-columns:1.16fr 1fr 1fr;gap:22px}
.project-thumb{height:365px;border-radius:2px}
.project-card:nth-child(1) .project-thumb{height:460px}
.project-card:nth-child(1) .project-info h3{font-size:25px}
.project-card:nth-child(2){margin-top:65px}
.project-card:nth-child(3){margin-top:115px}
.project-thumb img{filter:saturate(.82) contrast(.98)}
.project-info h3{margin:9px 0 11px}
.project-cat{letter-spacing:.19em}
.project-open{border-radius:2px;box-shadow:none;width:46px;height:46px}
.projects-note{font-size:10px;color:#687969;border:1px solid #dfe7da;background:#f9fbf7;text-align:left}
.process-section{padding-top:128px;padding-bottom:130px}
.process-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:60px}
.process-intro h2{font-size:clamp(44px,5vw,70px);letter-spacing:-.065em;line-height:1.12;margin:26px 0 0}
.process-intro>p{max-width:290px;color:#758277;line-height:1.8;margin-bottom:4px;font-size:14px}
.process-steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:62px;border-top:1px solid #dfe6dc}
.process-steps article{padding:35px 28px 20px 0;border-right:1px solid #e8ece6}
.process-steps article+article{padding-left:28px}
.process-steps article:last-child{border-right:none}
.process-steps article>span{color:var(--accent);letter-spacing:.08em;font-size:13px;font-weight:800}
.process-steps h3{font-size:28px;letter-spacing:-.06em;margin:44px 0 15px;font-weight:700}
.process-steps p{font-size:13px;line-height:1.9;color:#758176;max-width:275px}
.reviews-section{background:#f5f8f2}
.review-empty{border:1px solid #e0e9da;border-radius:2px}
.contact-section{background:#14251a}
.contact-section h2 em{color:#a6d078}
.contact-side{border-left:1px solid #38513c}
.contact-side-logo{background:#fff;border:1px solid #607568;border-radius:3px;width:122px;height:122px;padding:22px}
.contact-side-logo img{object-fit:contain;mix-blend-mode:multiply;width:100%;height:100%}
.footer-brand img{width:100px;height:100px;object-fit:contain}
.footer-links{flex-wrap:wrap}
.demo-badge{border-radius:2px}
/* Entering viewport animates sections; disabled for reduced motion */
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:doria-enter .75s .07s both}.hero-visual{animation:doria-enter .88s .21s both}.project-card{transition:transform .35s ease}.project-card:hover{transform:translateY(-5px)}@keyframes doria-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:1090px){.brand-lockup{width:177px}.brand-words strong{font-size:20px}.main-nav{gap:18px}.hero{min-height:580px}.hero-copy{padding-top:36px}.hero-photo-wrap{min-height:455px}.project-thumb{height:310px}.project-card:nth-child(1) .project-thumb{height:385px}}
@media(max-width:760px){.announcement{height:27px;font-size:8px;letter-spacing:.09em}.site-header{height:76px;padding:0 20px}.brand-lockup{width:173px;height:69px;gap:8px}.brand-mark{height:min(var(--logo-size,54px),58px);width:min(var(--logo-size,54px),58px)}.brand-words strong{font-size:21px}.brand-words small{font-size:9px;letter-spacing:.29em}.brand-lockup.full-logo{width:118px}.brand-lockup.full-logo .brand-mark{height:68px}.nav-contact{padding:11px 12px;min-height:42px;font-size:10px;gap:6px;margin-left:auto}.nav-contact span{font-size:16px}.main-nav{top:76px}.hero{display:flex;flex-direction:column;padding-top:40px;padding-bottom:62px;gap:35px;min-height:0}.hero-copy{padding:4px 0 0}.hero h1{font-size:clamp(46px,11vw,69px);margin:27px 0 21px}.hero-copy>p{font-size:14px}.hero-actions{gap:20px}.hero-photo-wrap{height:400px;min-height:400px}.hero-overlay{left:24px;bottom:23px;font-size:31px}.section{padding-top:77px;padding-bottom:83px}.projects-grid{grid-template-columns:1fr;gap:10px}.project-card:nth-child(2),.project-card:nth-child(3){margin-top:0}.project-thumb,.project-card:nth-child(1) .project-thumb{height:355px}.process-intro{display:block}.process-intro h2{font-size:clamp(38px,9.5vw,58px)}.process-intro>p{margin-top:20px}.process-steps{grid-template-columns:1fr;margin-top:30px}.process-steps article,.process-steps article+article{border-right:0;border-bottom:1px solid #e8ece6;padding:20px 0 17px}.process-steps h3{font-size:24px;margin:20px 0 9px}.process-steps p{margin-bottom:5px}.service-row:hover{padding-left:0;padding-right:0}.contact-side-logo{border-radius:3px;width:91px;height:91px;padding:13px}.footer-brand img{width:82px;height:82px}}
@media(max-width:380px){.brand-lockup{width:145px}.brand-words strong{font-size:18px}.brand-mark{height:49px;width:49px}.nav-contact{font-size:9px;padding:9px}}

.video-empty{grid-column:1/-1;padding:54px 48px;min-height:250px;background:#f2f6ee;border:1px solid #dfe8d8;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;color:#1c3021}.video-empty>span{color:#688949;font-size:10px;letter-spacing:.17em;font-weight:800}.video-empty strong{font-size:clamp(23px,3vw,35px);letter-spacing:-.055em;margin:17px 0 8px}.video-empty p{color:#6b806c;line-height:1.8;font-size:13px}.video-gallery-section{margin-top:65px}.video-gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:760px){.video-empty{padding:34px 24px;min-height:200px}.video-gallery-grid{grid-template-columns:1fr}}
