/*
Theme Name: VEDAN
Author: VEDAN
Description: Индивидуальная тема строительной компании ВЕДАН. Настройка текстов и контактов: Внешний вид → Настроить → VEDAN.
Version: 1.5.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: vedan
*/
:root{--ink:#23211c;--dark:#111110;--paper:#f8f8f5;--muted:#716f66;--line:#d9d6cd;--accent:#d6b46a;--white:#fff;--pad:clamp(22px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:var(--accent);color:white}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.wrap{padding-inline:var(--pad)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:7px;height:7px;background:var(--accent)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.06;letter-spacing:-.055em}h2{font-size:clamp(40px,4.7vw,76px)}h3{font-size:30px;letter-spacing:-.035em}.header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--paper);position:relative;z-index:20}.brand{display:inline-flex;align-items:center;gap:14px}.brand svg{width:55px;height:42px;color:var(--accent)}.brand-word{font-size:31px;letter-spacing:.1em;font-weight:700;line-height:1}.brand small{font-size:9px;letter-spacing:.19em;display:block;margin-top:9px;font-weight:400}.nav{display:flex;align-items:center;gap:30px;font-size:14px}.nav a{position:relative}.nav a:after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:1px;background:var(--accent);transition:width .2s}.nav a:hover:after{width:100%}.header-contact{font-size:14px;display:flex;gap:24px;align-items:center}.header-contact .circle{background:var(--ink);color:white}.circle{border:1px solid currentColor;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:23px;transition:transform .2s,background .2s}.menu-toggle{display:none;border:1px solid var(--line);background:none;padding:10px 15px}.hero{position:relative;min-height:700px;height:calc(100svh - 100px);max-height:1000px;color:white;overflow:hidden;background:#344039}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,25,20,.88),rgba(14,25,20,.3) 72%),linear-gradient(0deg,rgba(14,25,20,.6),transparent 50%)}.hero-content{position:relative;z-index:2;height:100%;min-height:700px;display:flex;flex-direction:column;padding-top:56px;padding-bottom:30px}.hero-top{display:flex;justify-content:space-between;align-items:center}.hero-location{font-size:12px;letter-spacing:.08em}.hero h1{font-size:clamp(64px,7.4vw,118px);max-width:1000px;margin-top:auto;padding-top:80px}.hero h1 em{font-style:normal;color:#e0c27b}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;margin-top:38px;gap:35px;margin-bottom:auto;padding-bottom:60px}.hero-bottom p{max-width:375px;color:#e1e5df;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:19px 25px;background:var(--accent);color:var(--ink);font-weight:600;font-size:14px;border:1px solid var(--accent);transition:background .2s,transform .2s}.button:hover{background:#e8cb8d;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.hero-foot{border-top:1px solid #ffffff40;display:flex;justify-content:space-between;align-items:center;padding-top:23px;color:#d4dbd4;font-size:12px;letter-spacing:.04em}.hero-foot a{display:flex;align-items:center;gap:20px}.hero-foot .circle{width:33px;height:33px;font-size:17px}.section{padding-block:110px}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:60px}.section-head .eyebrow{align-self:start;padding-top:10px}.section-head p{max-width:530px;color:var(--muted);margin-top:28px;font-size:18px}.about-lead{font-size:clamp(27px,3vw,47px);line-height:1.2;letter-spacing:-.04em;max-width:910px}.about-lead span{color:var(--muted)}.facts{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.fact{padding:40px 30px 40px 0}.fact+.fact{padding-left:36px;border-left:1px solid var(--line)}.fact strong{font-size:clamp(38px,4vw,64px);font-weight:400;letter-spacing:-.06em;line-height:1.2}.fact p{font-size:14px;color:var(--muted);margin-top:12px}.services{background:#eeede7}.service{display:grid;grid-template-columns:70px 1fr 1fr 44px;gap:30px;border-top:1px solid #c9c5b9;padding:38px 0;align-items:start}.service:last-child{border-bottom:1px solid #c9c5b9}.service-number{font-size:14px;color:var(--muted)}.service h3{max-width:330px}.service p{max-width:360px;font-size:16px;color:#716c5f}.service a:hover{background:var(--ink);color:white;transform:rotate(45deg)}.story{background:var(--dark);color:#f4f6f0;display:grid;grid-template-columns:1fr 1fr;padding-block:0;gap:0}.story-visual{position:relative;min-height:670px;background:#080808;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:50px}.story-visual:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 79px,#ffffff08 80px),repeating-linear-gradient(90deg,transparent,transparent 79px,#ffffff08 80px)}.story-visual svg{width:70%;max-width:370px;height:auto;color:var(--accent);position:relative}.story-caption{position:absolute;left:var(--pad);bottom:40px;right:40px;border-top:1px solid #ffffff30;padding-top:20px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.1em}.story-copy{padding:90px var(--pad) 90px 65px;align-self:center}.story h2{font-size:clamp(40px,4.2vw,66px);margin-top:36px}.story-copy p{margin-top:28px;color:#c0bbb0;max-width:440px}.story-copy blockquote{margin:35px 0 0;border-left:2px solid var(--accent);padding-left:23px;font-size:22px;line-height:1.4;max-width:430px}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.process-photo{height:650px;width:100%;object-fit:cover}.photo-note{font-size:12px;color:var(--muted);margin-top:12px}.steps{display:flex;flex-direction:column;justify-content:center}.step{display:grid;grid-template-columns:40px 1fr;gap:20px;padding:32px 0;border-top:1px solid var(--line)}.step:last-child{border-bottom:1px solid var(--line)}.step>span{font-size:12px;color:var(--accent);padding-top:5px}.step h3{font-size:26px}.step p{font-size:15px;color:var(--muted);margin-top:16px;max-width:370px}.documents{padding-top:0}.document-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;border-top:1px solid var(--line);padding:28px 0}.document-row:last-child{border-bottom:1px solid var(--line)}.document-row strong{font-size:20px;font-weight:400}.document-row p{color:var(--muted);font-size:14px}.document-row a{display:flex;align-items:center;gap:20px;font-size:14px}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.project img{height:400px;width:100%;object-fit:cover}.project h3{margin-top:20px}.contact{background:var(--accent);padding-block:85px}.contact .eyebrow:before{background:var(--ink)}.contact-top{display:flex;justify-content:space-between;align-items:start;gap:50px}.contact h2{font-size:clamp(52px,6.6vw,102px);margin-top:32px}.contact-intro{max-width:330px;margin-top:55px;font-size:17px}.contact-line{margin-top:65px;border-top:1px solid #23211c50;padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:25px}.contact-line>a{font-size:clamp(25px,3.3vw,50px);letter-spacing:-.04em;display:flex;align-items:center;gap:30px}.contact-line .circle{width:60px;height:60px}.brief{max-width:440px;margin-top:40px}.brief summary{cursor:pointer;padding-bottom:12px;border-bottom:1px solid #23211c55;font-size:14px}.brief p{font-size:14px;margin-top:16px}.footer{background:var(--dark);color:white;padding-block:55px 25px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:35px}.footer-nav{display:flex;gap:30px;font-size:14px}.footer-meta{margin-top:60px;padding-top:25px;border-top:1px solid #ffffff25;display:flex;justify-content:space-between;gap:25px;color:#aaa498;font-size:12px}.plain-content{max-width:1000px;min-height:60vh;margin:auto;padding:70px var(--pad)}.plain-content h1{font-size:55px;margin-bottom:40px}.plain-content p{margin-bottom:20px}.back-top{display:inline-flex;gap:14px}.admin-bar .header{top:0}
@media(min-width:1700px){.hero-content{padding-top:80px}.section{padding-block:140px}}
@media(max-width:1100px){.nav{gap:18px}.header-contact>a:first-child{display:none}.hero h1{font-size:80px}.section-head{grid-template-columns:1fr 2.4fr}.story-copy{padding:65px 40px}.approach-grid{gap:35px}.service{grid-template-columns:40px 1fr 1fr 40px;gap:20px}.footer-nav{flex-wrap:wrap;justify-content:flex-end}.story-visual{min-height:580px}}
@media(max-width:760px){.header{height:82px}.brand-word{font-size:25px}.brand svg{width:42px}.brand small{font-size:8px}.header-contact{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:82px;background:var(--paper);padding:30px var(--pad);border-top:1px solid var(--line);box-shadow:0 20px 20px #0001}.nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:25px;font-size:19px}.hero{height:auto;min-height:720px;max-height:none}.hero-content{min-height:720px;padding-top:30px}.hero-location{display:none}.hero h1{font-size:clamp(50px,11vw,78px);padding-top:90px}.hero-bottom{display:block;margin-top:30px;padding-bottom:55px}.hero-bottom p{font-size:15px;max-width:320px}.hero-bottom .button{margin-top:30px}.hero-photo{object-position:65% center}.hero:after{background:linear-gradient(90deg,#0e1914df,#0e19146b)}.hero-foot{font-size:11px}.hero-foot>span{max-width:180px}.section{padding-block:70px}.section-head{display:block;margin-bottom:40px}.section-head .eyebrow{margin-bottom:30px}.section-head p{font-size:16px}.facts{margin-top:40px;grid-template-columns:1fr}.fact,.fact+.fact{border-left:0;padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.fact+.fact{border-top:1px solid var(--line)}.fact strong{font-size:42px}.fact p{max-width:155px;margin-top:0}.service{grid-template-columns:25px 1fr 38px;gap:15px;padding:30px 0}.service h3{font-size:27px}.service p{grid-column:2;grid-row:2;font-size:15px}.service a{grid-column:3;grid-row:1}.story{grid-template-columns:1fr}.story-visual{min-height:350px}.story-visual svg{max-width:220px}.story-copy{padding:55px var(--pad) 65px}.story h2{margin-top:25px}.story-caption{bottom:25px;font-size:10px}.approach-grid{grid-template-columns:1fr;gap:35px}.process-photo{height:390px}.step{padding:28px 0}.document-row{grid-template-columns:1fr auto;gap:10px}.document-row p{grid-row:2;grid-column:1}.document-row a{grid-column:2;grid-row:1/3;font-size:0}.document-row a .circle{font-size:22px}.documents{padding-top:0}.contact{padding-block:60px}.contact-top{display:block}.contact-intro{margin-top:30px}.contact h2{font-size:57px}.contact-line{display:block;margin-top:40px}.contact-line>a{font-size:27px;gap:18px}.contact-line .circle{width:42px;height:42px}.contact-line>p{margin-top:25px;font-size:14px}.footer-top{display:block}.footer-nav{margin-top:35px;justify-content:flex-start;gap:20px}.footer-meta{flex-direction:column;margin-top:35px;gap:14px}.projects-grid{grid-template-columns:1fr}.project img{height:300px}.plain-content h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Supplied VEDAN Construction identity — original image, uncropped. */
.header{background:#080808;color:#f5f1e7;height:116px}
.brand{flex-shrink:0}.brand-logo{display:block;object-fit:contain;aspect-ratio:789/787;width:104px;height:104px}
.header-contact .circle{background:var(--accent);color:#171612;border-color:var(--accent)}
.menu-toggle{color:inherit;border-color:#76623b}
.hero{height:calc(100svh - 116px)}
.story-visual .brand-logo{position:relative;z-index:1;width:min(100%,460px);height:auto}
.story-visual:before{display:none}
.footer .brand-logo{width:150px;height:150px}.footer-top{align-items:center}
@media(max-width:760px){.header{height:96px}.header .brand-logo{width:88px;height:88px}.nav{top:96px;background:#080808;border-color:#403b30}.hero{height:auto}.story-visual{padding:42px 50px 80px}.story-visual .brand-logo{max-width:310px}.footer .brand-logo{width:130px;height:130px}}
.step>span{color:#886226}

/* Project portfolio */
.project-image{position:relative;background:#e8e6df;overflow:hidden}.project-image img{width:100%;height:370px;object-fit:contain}.project-image .circle{position:absolute;right:20px;bottom:20px;background:var(--accent);border:0;color:#171612}.project-label{display:block;margin-top:23px;font-size:12px;letter-spacing:.12em;color:#716c5f}.project h3{font-size:31px;margin-top:10px}.project-more{display:inline-block;margin-top:18px;font-size:14px;border-bottom:1px solid var(--line);padding-bottom:6px}.project:hover .project-more{border-color:var(--ink)}.project-detail{padding-block:65px 90px}.project-detail h1{font-size:clamp(40px,6vw,88px);margin:28px 0 45px}.project-detail .project-cover{max-height:740px;width:100%;object-fit:contain;background:#e8e6df}.project-detail-copy{max-width:850px;margin:45px auto}.project-detail-copy p{margin:20px 0;color:var(--muted);font-size:18px}.project-detail-copy h2{font-size:34px;margin:45px 0 25px}.project-detail-copy figure{margin:30px 0}.project-detail-copy figure img{width:100%;height:auto}.project-detail-copy figcaption{font-size:12px;color:var(--muted);margin-top:12px}.project-detail .back-projects{font-size:14px;color:var(--muted)}.project-detail .button{margin-top:24px}.project-detail .project-note{font-size:13px}.projects-grid{row-gap:55px}.process-photo{object-position:center}
@media(max-width:1100px){.nav{gap:17px}}
@media(max-width:760px){.project-image img{height:290px}.project h3{font-size:28px}.project-detail{padding-block:45px 60px}.project-detail-copy p{font-size:16px}.project-detail .project-cover{max-height:520px}.project-detail h1{margin-bottom:30px}}
.project-detail .project-cover{height:auto}

/* Editorial refinement: readable type, restrained gold and consistent spacing. */
:root{--ink:#252521;--dark:#101211;--paper:#faf9f6;--muted:#595c57;--line:#deded6;--accent:#d6b46a;--pad:clamp(24px,5vw,88px)}
body{font-family:"Segoe UI",Arial,Helvetica,sans-serif;line-height:1.65}
h1,h2,h3{font-weight:400;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}
h2{font-size:clamp(34px,4.1vw,64px)}h3{font-size:29px}.eyebrow{font-size:11px;letter-spacing:.14em;line-height:1.5}
.header{height:104px;border-bottom:1px solid #ffffff17}.header .brand-logo{width:92px;height:92px}.nav{gap:26px;font-size:14px}.header-contact{white-space:nowrap}
.hero{background:#111514;height:calc(100svh - 104px);min-height:680px;max-height:940px}
.hero-photo{inset:0 0 0 auto;width:66%;height:100%;object-fit:cover;object-position:58% center}
.hero:after{background:linear-gradient(90deg,#111514 0%,#111514fa 24%,#111514c9 43%,#11151428 76%),linear-gradient(0deg,#111514aa,transparent 25%)}
.hero-content{min-height:680px;padding-top:38px;padding-bottom:25px}
.hero h1{font-size:clamp(50px,5.55vw,88px);line-height:1.08;max-width:800px;padding-top:54px;margin-top:auto;letter-spacing:-.04em}
.hero-bottom{display:block;margin-top:28px;padding-bottom:34px}.hero-bottom p{font-size:17px;color:#e5e5de;max-width:370px;line-height:1.65}.hero-bottom .button{margin-top:28px;padding:16px 23px;min-height:56px}
.hero-foot{font-size:11px;color:#ededdf;padding-top:17px;gap:20px}.hero-foot a{white-space:nowrap}
.section{padding-block:96px}.section-head{grid-template-columns:1fr 2.2fr;gap:40px;margin-bottom:46px}.section-head p{max-width:680px;font-size:18px;line-height:1.7;margin-top:24px}.section-head p.about-lead{font-size:clamp(23px,2.45vw,36px);line-height:1.42;letter-spacing:-.02em;margin-top:0;color:var(--ink)}
.facts{margin-top:48px}.fact strong{font-size:clamp(32px,3.5vw,52px);letter-spacing:-.035em}.fact{padding-block:32px}.fact p{line-height:1.6;font-size:14px}
.services{background:#eeeee8}.service{grid-template-columns:45px 1.15fr 1fr 44px;gap:30px;padding:35px 0}.service h3{font-size:clamp(24px,2.3vw,34px);max-width:370px}.service p{color:#535750;font-size:16px;line-height:1.75}.service-number{color:#7b6028;font-weight:600;padding-top:5px}
.projects-grid{gap:44px 32px}.project{min-width:0}.project-image{background:#e9e9e3;border:1px solid #deded6}.project-image img{height:340px;object-fit:contain}.project-image .circle{width:42px;height:42px;right:16px;bottom:16px}.project-label{margin-top:20px;color:#5c5e57;font-size:10px;letter-spacing:.13em}.project h3{font-size:clamp(24px,2.1vw,32px);margin-top:8px;line-height:1.25}.project-more{font-size:14px;margin-top:13px;color:#55574f}.project:hover .circle{background:#f0d49a;transform:translate(2px,-2px)}
.story-visual{min-height:510px;padding:55px}.story-visual .brand-logo{max-width:350px}.story-copy{padding:65px var(--pad) 65px 60px}.story h2{font-size:clamp(34px,3.6vw,55px);line-height:1.15;margin-top:24px}.story-copy p{font-size:17px;line-height:1.8;color:#d3d2c9}.story-caption{font-size:10px}
.approach-grid{gap:65px;align-items:start}.process-photo{height:auto;aspect-ratio:700/524;object-fit:contain;background:#e9e9e3}.steps{margin-top:0}.step{padding:23px 0}.step h3{font-size:24px}.step p{font-size:16px;line-height:1.7;margin-top:10px}.photo-note{font-size:12px;color:#5c5e57;line-height:1.6}
.documents{padding-top:0}.document-row{grid-template-columns:1fr 1.35fr auto;gap:28px}.document-row strong{font-size:18px;font-weight:500}.document-row p{font-size:15px;line-height:1.75}.document-row a{font-size:13px}.document-row p,.contact-intro{overflow-wrap:anywhere}
.contact{background:#ddc185;padding-block:76px}.contact h2{font-size:clamp(46px,5.6vw,84px);line-height:1.1}.contact-intro{max-width:390px;line-height:1.7;font-size:18px}.contact-line{margin-top:48px}.contact-line>a{font-size:clamp(28px,3.2vw,46px);letter-spacing:-.025em;white-space:nowrap}.contact-line>p{font-size:20px}.office-contact{border-top:1px solid #23211c40;margin-top:30px;padding-top:27px;display:grid;grid-template-columns:1fr 1.4fr auto;align-items:center;gap:20px}.office-contact p{font-size:22px;line-height:1.5}.office-contact>a{font-size:14px;text-decoration:underline;text-underline-offset:5px}.brief{max-width:620px;margin-top:32px}.brief summary,.brief p{font-size:15px;line-height:1.7}
.footer{padding-top:40px}.footer .brand-logo{width:120px;height:120px}.footer-nav{gap:24px}.footer-meta{margin-top:30px;color:#c0c1b8;line-height:1.7}
.project-detail h1{font-size:clamp(36px,5vw,70px);line-height:1.15}.project-detail>.eyebrow{margin-top:30px}.project-detail-copy{max-width:820px}.project-detail-copy p{line-height:1.8;color:#50544e}.project-detail .project-note{font-size:14px}.project-detail-copy figure{background:#e9e9e3}.project-detail-copy figcaption{padding:10px 14px;margin:0}
@media(min-width:1500px){.wrap{padding-inline:max(5vw,calc((100vw - 1400px)/2))}}
@media(max-width:1100px){.nav{gap:18px}.header-contact>a:first-child{display:none}.section-head{grid-template-columns:1fr 2.5fr}.hero h1{font-size:65px}.service{gap:20px;grid-template-columns:30px 1fr 1fr 40px}.project-image img{height:300px}.story-copy{padding:50px 35px}.approach-grid{gap:35px}.office-contact{grid-template-columns:1fr 2fr}.office-contact>a{grid-column:2}.contact-line>a{font-size:34px;gap:15px}.contact-line .circle{width:44px;height:44px}}
@media(max-width:760px){
 html{scroll-padding-top:24px}.header{height:88px}.header .brand-logo{width:78px;height:78px}.nav{top:88px;padding:26px var(--pad)}.nav.open{gap:22px}.menu-toggle{font-size:14px;min-height:44px}
 .hero{height:auto;min-height:700px;max-height:none}.hero-photo{width:100%;object-position:62% center}.hero:after{background:linear-gradient(90deg,#111514eb,#11151487),linear-gradient(0deg,#111514bd,transparent 70%)}.hero-content{min-height:700px;padding-top:28px;padding-bottom:22px}.hero h1{font-size:clamp(42px,10.1vw,62px);padding-top:65px;max-width:100%;line-height:1.12}.hero-bottom{margin-top:26px;padding-bottom:34px}.hero-bottom p{font-size:16px;max-width:320px}.hero-bottom .button{margin-top:26px}.hero-foot{font-size:9px;line-height:1.6}.hero-foot>span{max-width:150px}.hero-foot a{gap:10px}.hero-foot .circle{width:30px;height:30px}
 .section{padding-block:64px}.section-head{display:block;margin-bottom:32px}.section-head .eyebrow{margin-bottom:24px;padding-top:0}.section-head p{font-size:16px;margin-top:22px}.section-head p.about-lead{font-size:25px;line-height:1.48}.facts{margin-top:30px}.fact,.fact+.fact{padding:22px 0}.fact strong{font-size:34px}.fact p{font-size:13px;max-width:145px}
 .service{grid-template-columns:25px 1fr 36px;gap:13px;padding:27px 0}.service h3{font-size:25px}.service p{font-size:16px;line-height:1.7}.service .circle{width:36px;height:36px}.projects-grid{gap:36px}.project-image img{height:280px}.project h3{font-size:26px}.project-label{margin-top:17px}
 .story-visual{min-height:350px;padding:36px 55px 75px}.story-visual .brand-logo{max-width:255px}.story-copy{padding:42px var(--pad) 55px}.story h2{font-size:36px}.story-copy p{font-size:16px}.story-caption{font-size:9px;left:24px;right:24px}
 .approach-grid{gap:30px}.process-photo{height:auto}.step{padding:24px 0;grid-template-columns:28px 1fr;gap:14px}.step h3{font-size:23px}.step p{font-size:16px}.documents{padding-top:0}.document-row{grid-template-columns:1fr;gap:10px;padding:23px 0}.document-row p{grid-row:auto;grid-column:auto}.document-row a{grid-row:auto;grid-column:auto;font-size:14px;justify-content:space-between;margin-top:8px}.document-row strong{font-size:18px}
 .contact{padding-block:55px}.contact h2{font-size:52px}.contact-intro{font-size:17px;margin-top:25px}.contact-line{margin-top:32px}.contact-line>a{font-size:clamp(23px,6.45vw,34px);gap:10px;justify-content:space-between}.contact-line .circle{width:34px;height:34px;flex-shrink:0;font-size:20px}.contact-line>p{font-size:19px;margin-top:20px}.office-contact{display:block;margin-top:26px;padding-top:24px}.office-contact p{font-size:21px;margin:12px 0}.office-contact>a{display:inline-block;padding:5px 0}.brief{margin-top:28px}
 .footer-nav{gap:18px 24px;font-size:14px}.footer-meta{font-size:12px}.footer .brand-logo{width:112px;height:112px}.project-detail{padding-block:35px 55px}.project-detail h1{font-size:36px}.project-detail-copy{margin-top:28px}
}

@media(min-width:761px){.hero-photo{mask-image:linear-gradient(to right,transparent,#000 30%)}}

/* Unnumbered sections and cards. */
.service{grid-template-columns:1.15fr 1fr 44px}.step{display:block}
@media(max-width:1100px){.service{grid-template-columns:1fr 1fr 40px}}
@media(max-width:760px){.service{grid-template-columns:1fr 36px}.service p{grid-column:1;grid-row:2}.service a{grid-column:2;grid-row:1}}

/* Fine architectural frames and restrained interaction. */
.section-head p.about-lead{position:relative;padding:clamp(26px,3.1vw,48px);border:1px solid #b69a5966;border-radius:4px;background:linear-gradient(135deg,#fffefa,#f4f1e8);box-shadow:0 14px 40px #24271905;font-size:clamp(24px,2.25vw,34px);line-height:1.5}
.about-lead:before,.service:before{content:'';position:absolute;top:-1px;left:-1px;width:42px;height:42px;border-top:2px solid #b49552;border-left:2px solid #b49552;border-top-left-radius:4px;pointer-events:none}
.about-lead:after{content:'';position:absolute;bottom:-1px;right:-1px;width:42px;height:42px;border-bottom:2px solid #b49552;border-right:2px solid #b49552;border-bottom-right-radius:4px;pointer-events:none}
.facts{gap:20px;border:0}.fact,.fact+.fact{border:1px solid #d8d4c8;border-radius:4px;padding:28px 30px;background:#ffffff75}.fact strong{font-size:clamp(31px,3.3vw,50px)}
.service,.service:last-child{position:relative;border:1px solid #b9ae956e;border-radius:4px;padding:34px;margin-bottom:20px;background:#faf9f4;transition:border-color .3s,box-shadow .3s,transform .3s}.service:last-child{margin-bottom:0}.service:before{width:26px;height:26px}.service p{max-width:430px}.service h3{max-width:410px}.service:focus-within{border-color:#a3894a;box-shadow:0 10px 30px #2b2d1c0a}
.step{border:1px solid #ded9ca;border-left:2px solid #c3a564;padding:24px 28px;border-radius:3px;background:#fffdfa;margin-bottom:14px}.step:last-child{border-bottom:1px solid #ded9ca;margin-bottom:0}.step p{max-width:none}
.project-image{border-radius:4px}.project-image img{transition:transform .7s cubic-bezier(.2,.65,.3,1)}.brand-logo{transition:filter .3s}.circle{transition:transform .3s,background .3s,border-color .3s}.button{transition:background .3s,transform .3s,box-shadow .3s}.button:hover{box-shadow:0 8px 24px #1417101a}.nav a:after{transition:width .3s}.map-link,.office-contact>a,.project-more{transition:color .25s,border-color .25s}
@media(hover:hover) and (pointer:fine){.service:hover{border-color:#b49552;box-shadow:0 14px 35px #292b1d0c;transform:translateY(-3px)}.project:hover .project-image img{transform:scale(1.025)}.brand:hover .brand-logo{filter:brightness(1.12)}}
@media(max-width:1100px){.service{padding:28px}.fact,.fact+.fact{padding:25px}.step{padding:22px}}
@media(max-width:760px){.section-head p.about-lead{padding:25px;font-size:24px;line-height:1.5}.about-lead:before,.about-lead:after{width:30px;height:30px}.facts{gap:12px}.fact,.fact+.fact{padding:23px 20px}.fact strong{font-size:31px}.service,.service:last-child{padding:24px 20px;margin-bottom:16px;gap:16px 12px}.service:last-child{margin-bottom:0}.service h3{font-size:24px;overflow-wrap:anywhere}.service p{grid-column:1/-1;margin-top:4px}.service a{width:34px;height:34px}.step{padding:22px;margin-bottom:12px}.step h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.service:hover,.project:hover .project-image img,.button:hover{transform:none}}

/* Audit improvements: clear contact actions, readable mobile text and gallery. */
.hero-actions{display:flex;align-items:center;gap:24px;margin-top:28px;flex-wrap:wrap}.hero-actions .button{margin-top:0}.secondary-action{font-size:14px;padding:12px 0;color:#f5f0e3;border-bottom:1px solid #d6b46a88}.secondary-action:hover{color:var(--accent)}
.mobile-contact-bar{display:none}.zoom-image{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.zoom-image img{margin-inline:auto}.zoom-note{font-size:13px;color:var(--muted);margin-top:12px}.image-viewer{padding:64px 24px 24px;border:1px solid #a98c50;border-radius:5px;background:#101211;color:#fff;max-width:94vw;width:1200px;max-height:94svh}.image-viewer::backdrop{background:#000d}.image-viewer img{max-height:72svh;max-width:100%;height:auto;width:auto;object-fit:contain;margin:auto}.viewer-close{position:absolute;right:16px;top:12px;border:1px solid #b49552;background:#101211;color:#fff;min-height:44px;padding:8px 16px}.viewer-caption{margin:16px 0 0;text-align:center;font-size:14px}.image-viewer:not([open]){display:none}
@media(max-width:760px){body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}.section-head p.about-lead{font-size:21px;padding:22px;line-height:1.5}.hero-actions{gap:15px;margin-top:24px}.hero-actions .button{margin-top:0}.secondary-action{font-size:14px}.service,.service:last-child{grid-template-columns:1fr 44px}.service a{width:44px;height:44px}.mobile-contact-bar{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.3fr;gap:8px;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:#101211;border-top:1px solid #b4955266}.mobile-contact-bar a{min-height:46px;display:flex;align-items:center;justify-content:center;border:1px solid #b49552;border-radius:3px;color:#fff;font-size:14px}.mobile-contact-bar a:last-child{background:var(--accent);color:#171612}.image-viewer{padding:66px 12px 16px;width:94vw}.image-viewer img{max-height:65svh}}

@media(min-width:761px){.portfolio .section-head h2{white-space:nowrap;font-size:clamp(28px,3.5vw,56px);letter-spacing:-.035em}}
