:root{--ink:#171918;--cream:#efe4d3;--brown:#d0a06f;--line:#493c30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:#1c1c1a;color:var(--cream);font:16px/1.65 Arial,Helvetica,sans-serif}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.09}h2{font-size:clamp(2.1rem,4vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.45rem;font-weight:500;line-height:1.3}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #bd8a54;outline-offset:5px}.skip{position:absolute;top:-80px;z-index:10;color:#171918;background:white;padding:15px}.skip:focus{top:0}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#171918;gap:20px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:68px;height:68px;object-fit:contain}.brand>span{font-family:Georgia,serif;font-weight:bold;font-size:1.9rem;line-height:1.1}.brand-sub{display:block;font:12px/1.5 Arial,sans-serif;letter-spacing:.11em;margin-top:4px}nav{display:flex;gap:36px;font-size:14px}nav a:hover{text-decoration:underline;text-underline-offset:5px}.languages{display:flex;align-items:center;gap:8px}.languages button{border:0;background:none;font-size:14px;padding:8px;color:#c9beae}.languages button[aria-pressed=true]{color:var(--cream);font-weight:bold;border-bottom:2px solid var(--brown)}.hero{position:relative;min-height:690px;height:calc(100svh - 94px);max-height:960px;background:var(--ink);color:white;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,27,.85),rgba(8,20,27,.42) 55%,rgba(8,20,27,.04))}.hero-content{position:relative;margin:0 7vw;max-width:710px;padding:60px 0 90px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:.16em;line-height:1.6;color:var(--brown);margin-bottom:25px}.hero .eyebrow{color:#e2c5a3}.hero h1{font-size:clamp(2.8rem,5.3vw,5.3rem);letter-spacing:-.045em}.hero-copy{max-width:430px;margin:28px 0 35px;color:#f0ece6;font-size:18px;line-height:1.6}.actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:15px 23px;font-size:14px;font-weight:bold;border:1px solid transparent}.cream{background:var(--cream);color:var(--ink)}.cream:hover{background:#e3d6c1}.text-link{font-size:14px;border-bottom:1px solid #bab4a9;padding:8px 0}.hero-note{position:absolute;right:5vw;bottom:35px;display:flex;gap:18px;align-items:center}.hero-note span{font:2rem Georgia,serif;border-right:1px solid #ffffff65;padding-right:18px}.hero-note p{font-size:12px;line-height:1.5}.section{padding:95px 7vw}.intro{display:grid;grid-template-columns:1fr 2fr;gap:8vw;border-bottom:1px solid var(--line)}.intro .eyebrow{max-width:220px;padding-top:8px}.intro p:not(.eyebrow){max-width:660px;margin-top:30px;color:#c8c0b4;line-height:1.8}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:65px}.section-heading h2{max-width:660px}.section-heading>p{max-width:265px;color:#c8c0b4;font-size:14px}.project{margin-top:65px}.project-heading{display:flex;gap:22px;align-items:start;margin-bottom:24px}.number{font:16px Georgia,serif;color:var(--brown);padding-top:6px}.project-heading p{font-size:14px;color:#c8c0b4;margin-top:8px}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.photo{padding:0;border:0;background:#302920;position:relative;overflow:hidden;text-align:left}.photo img{width:100%;height:340px;display:block;object-fit:cover;transition:transform .4s}.photo:hover img{transform:scale(1.025)}.photo span{position:absolute;bottom:12px;left:12px;background:rgba(16,32,43,.84);color:#fff;padding:5px 11px;font-size:12px}.bathroom{grid-template-columns:1fr 1fr 1fr}.bathroom .photo img{height:410px}.terrace{grid-template-columns:repeat(3,1fr)}.terrace .photo img{height:290px}.services{background:#28231e}.services h2{max-width:720px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:60px}.service-grid article{border-top:1px solid #78624a;padding-top:22px}.service-grid span{color:var(--brown);font-size:14px}.service-grid h3{margin:22px 0 15px}.service-grid p{color:#c8c0b4;max-width:320px}.contact{background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1.5fr 1fr;gap:10vw;align-items:center}.contact .eyebrow{color:#d9b48c}.contact p:not(.eyebrow){color:#c6cdd0;max-width:600px;margin:25px 0 30px}.contact-links{display:flex;flex-wrap:wrap;gap:14px}.outline{border-color:#aaa; color:var(--cream)}.outline:hover{background:#263d4c}.contact>img{width:100%;max-width:360px;justify-self:end}footer{display:flex;justify-content:space-between;gap:20px;padding:30px 7vw;font-size:12px;color:#bfb3a2}dialog{border:0;background:#181a18f5;color:white;width:min(95vw,1200px);max-height:95svh;padding:52px 20px 20px;overflow:auto}dialog::backdrop{background:#000c}dialog img{display:block;max-width:100%;max-height:77svh;object-fit:contain;margin:auto}dialog p{text-align:center;margin-top:15px;font-size:14px}.close{position:absolute;top:6px;right:14px;font-size:32px;background:none;color:white;border:0;padding:0 10px}body.modal-open{overflow:hidden}@media(max-width:900px){nav{gap:18px}.brand-sub{max-width:150px;font-size:12px}.section{padding:65px 6vw}.intro{grid-template-columns:1fr;gap:15px}.section-heading{display:block}.section-heading>p{max-width:450px;margin-top:25px}.gallery{grid-template-columns:1fr 1fr}.house .photo:first-child{grid-column:1/-1}.bathroom{grid-template-columns:repeat(3,1fr)}.bathroom .photo img{height:300px}.service-grid{gap:25px}.contact{gap:40px}.contact-links{flex-direction:column;align-items:start}.contact>img{max-width:280px}}@media(max-width:600px){header{height:auto;min-height:100px;flex-wrap:wrap;padding:12px 5vw;gap:10px}.brand img{width:45px;height:45px}.brand>span{font-size:1.55rem}.brand-sub{font-size:12px;max-width:185px;letter-spacing:.04em}nav{order:3;justify-content:center;width:100%;gap:36px;font-size:14px}.hero{min-height:680px;height:auto}.hero-content{margin:0 6vw;padding:70px 0 115px}.hero h1{font-size:3rem}.hero-copy{font-size:16px}.hero-note{right:6vw;bottom:23px}.hero-shade{background:linear-gradient(90deg,#0b1b26da,#0b1b2670)}.section{padding:55px 6vw}.section-heading{margin-bottom:35px}.project{margin-top:38px}.gallery,.bathroom,.terrace{grid-template-columns:1fr 1fr;gap:10px}.bathroom .photo:first-child{grid-column:1/-1}.photo img,.terrace .photo img{height:210px}.house .photo:first-child img{height:290px}.bathroom .photo img{height:280px}.service-grid{grid-template-columns:1fr;gap:30px;margin-top:38px}.service-grid p{max-width:none}.contact{grid-template-columns:1fr}.contact>img{width:220px;justify-self:start}.contact-links{align-items:stretch}.contact .button{font-size:14px}footer{flex-direction:column;gap:8px}.eyebrow{margin-bottom:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}

/* Dark timber and bronze theme */
header{border-bottom:1px solid #44392d}.brand img{border:1px solid #8e7355;padding:3px;background:#efe4d3}.brand-sub{color:#c7b7a1}nav a:hover{color:#e1b98c}
.hero{border-bottom:1px solid #594331}.hero-shade{background:linear-gradient(90deg,rgba(15,17,15,.91),rgba(23,22,17,.60) 52%,rgba(23,22,17,.12))}.hero h1{color:#f6ead9}.hero-copy{color:#e1d6c7}.hero-note{border-top:1px solid #b78a59;padding-top:16px}.hero-note span{color:#e3b585}
.intro{background:linear-gradient(115deg,#27231e,#1b1d1a)}.projects{background:#1c1c1a}.project{border-top:1px solid #493c30;padding-top:32px}.project-heading h3{font-family:Georgia,serif;font-size:1.65rem}.number{font-size:1.1rem}.photo{border:1px solid #5b4835;padding:6px;box-shadow:0 10px 25px #0003}.photo:hover{border-color:#d0a06f}.photo span{background:#211b16eb;border:1px solid #92704c;color:#f4e6d1}.photo img{filter:none}
.services{background:linear-gradient(115deg,#30271f,#24231e);border-block:1px solid #594331}.service-grid article{border-top:2px solid #a0784e}.service-grid h3{color:#f1e4d2}.contact{background:#141715;border-bottom:1px solid #493c30}.contact>img{padding:12px;border:1px solid #94724e;box-shadow:18px 18px 0 #29231b}.cream{background:#d7b084;color:#171918;border-color:#d7b084}.cream:hover{background:#edc99e}.outline{border-color:#bd9466;color:#efe4d3}.outline:hover{background:#3d3022}.text-link{border-color:#b99163}footer{background:#171918}.eyebrow,.number,.service-grid span{color:#d0a06f}
@media(max-width:600px){.hero-shade{background:linear-gradient(90deg,#11150feb,#18191388)}.contact>img{box-shadow:10px 10px 0 #29231b}}

/* Black, navy and timber refinement */
:root{--ink:#05080d;--cream:#f3eee5;--brown:#ad8154;--line:#25364a}
body{background:#070b11;color:var(--cream)}
header{background:#04070c;border-bottom:1px solid #19314c;box-shadow:0 10px 35px #0007}
.brand img{background:#eee8dc;border-color:#26496d}
.brand-sub{color:#a9b8c8}
nav a:hover{color:#78a9d8}
.languages button{color:#8fa5bb}
.languages button[aria-pressed=true]{color:#f3eee5;border-color:#4a8bc7}
.hero{background:#05080d;border-bottom-color:#26496d}
.hero-shade{background:linear-gradient(90deg,rgba(2,5,10,.96),rgba(5,20,36,.78) 52%,rgba(3,12,23,.18))}
.hero .eyebrow,.hero-note span{color:#8fc1ef}
.hero-note{border-top-color:#477aa9}
.cream{background:#17466f;color:#fff;border-color:#4c86ba}
.cream:hover{background:#226092}
.text-link{border-color:#6294c1}
.intro{background:linear-gradient(120deg,#05080d 0%,#0b1725 58%,#132b42 100%);border-bottom-color:#254564}
.projects{background:linear-gradient(180deg,#080c13,#0c1520)}
.project{border-top-color:#284765}
.project:nth-of-type(even){background:linear-gradient(90deg,transparent,#0e1e2d 48%,transparent);padding-inline:2vw}
.eyebrow,.number,.service-grid span{color:#71a7d7}
.project-heading p,.section-heading>p,.intro p:not(.eyebrow),.service-grid p{color:#aebbc7}
.photo{background:#07101a;border-color:#294d70;box-shadow:0 14px 32px #0008}
.photo:hover{border-color:#6aa5d8}
.photo span{background:#061321ed;border-color:#477ea9}
.services{background:linear-gradient(120deg,#030609,#0a1622 52%,#102944);border-block-color:#294d70}
.service-grid article{border-top-color:#4d83b2}
.service-grid h3{color:#edf3f8}
.contact{background:linear-gradient(120deg,#020407 0%,#07111d 52%,#0b2944 100%);border-bottom-color:#244a6b}
.contact .eyebrow{color:#86b9e5}
.contact>img{border-color:#4b7ca7;box-shadow:18px 18px 0 #071b2c}
.outline{border-color:#4e81ac;color:#eef4f8}
.outline:hover{background:#123655}
footer{background:#030609;color:#8da0b2;border-top:1px solid #162c40}
dialog{background:#03070df5}
@media(max-width:600px){.hero-shade{background:linear-gradient(90deg,#02060cf2,#071b2bc9)}.contact>img{box-shadow:10px 10px 0 #071b2c}}

/* Structural blue accents, field work, scripture and contact action */
.structural-section{position:relative;isolation:isolate;overflow:hidden}
.structural-section>*{position:relative;z-index:1}
.structural-section::before{content:"";position:absolute;z-index:0;pointer-events:none;width:430px;height:260px;right:-105px;top:-92px;transform:rotate(7deg);opacity:.78;background:linear-gradient(135deg,transparent 0 36%,#113c64 36% 43%,transparent 43% 49%,#24679e 49% 54%,transparent 54% 60%,#0b2b49 60% 70%,transparent 70%);filter:drop-shadow(0 16px 22px #0008)}
.structural-section::after{content:attr(data-frame);position:absolute;z-index:0;pointer-events:none;right:4vw;bottom:-.24em;font:700 clamp(7rem,17vw,15rem)/1 Georgia,serif;letter-spacing:-.08em;color:#4a8bc713;-webkit-text-stroke:1px #69a8dc24}
.craft{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:18px;align-items:stretch;background:linear-gradient(130deg,#05080d,#0b1a29 58%,#102d49)}
.craft-copy{padding:30px 4vw 30px 0;display:flex;flex-direction:column;justify-content:center}
.craft-copy>p:not(.eyebrow){color:#b4c0ca;margin-top:26px;max-width:560px}
.team-photo,.work-video{margin:0;position:relative;min-height:520px;border:1px solid #315a80;background:#050a10;overflow:hidden}
.team-photo img,.work-video video{width:100%;height:100%;display:block;object-fit:cover}
.work-video video{background:#03070b}
.team-photo figcaption,.work-video figcaption{position:absolute;left:14px;bottom:14px;background:#040b12e8;border:1px solid #477aa9;color:#eaf2f8;padding:8px 12px;font-size:13px}
.scripture{display:grid;grid-template-columns:auto 1fr;gap:55px;align-items:center;background:#05080d;border-block:1px solid #1f405e}
.plan-mark{font:clamp(4rem,9vw,8rem)/1 Georgia,serif;color:#172e44;-webkit-text-stroke:1px #497ba6}
.scripture blockquote{margin:0;max-width:900px;border-left:3px solid #ad8154;padding-left:34px}
.scripture blockquote p{font:clamp(1.7rem,3.3vw,3rem)/1.35 Georgia,serif;color:#f0e8dc}
.scripture cite{display:block;margin-top:24px;color:#7eb2de;font-style:normal;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:30;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.whatsapp-float button{display:flex;align-items:center;gap:10px;min-height:56px;border:1px solid #5a91c0;background:#0c3457;color:#fff;padding:8px 18px 8px 9px;border-radius:999px;box-shadow:0 12px 30px #0009;font-weight:700}
.whatsapp-float button:hover{background:#14507f}
.wa-icon{width:38px;height:38px;border-radius:50%;background:#f2eee7;color:#08223a;display:grid;place-items:center;font-size:12px;font-weight:800}
.whatsapp-menu{width:min(290px,calc(100vw - 32px));padding:17px;background:#07111df5;border:1px solid #386b98;box-shadow:0 14px 38px #000b}
.whatsapp-menu p{font-size:14px;color:#dce8f2;margin-bottom:11px}
.whatsapp-menu a{display:block;padding:12px;border-top:1px solid #244867;color:#fff;font-weight:700}
.whatsapp-menu a:hover{background:#102e49}
.whatsapp-menu[hidden]{display:none}
@media(max-width:1050px){.craft{grid-template-columns:1fr 1fr}.craft-copy{grid-column:1/-1;padding-right:0}.team-photo,.work-video{min-height:440px}}
@media(max-width:700px){nav{gap:19px;overflow-x:auto;justify-content:flex-start;padding-bottom:2px}.structural-section::before{width:270px;height:180px;right:-95px;top:-70px;opacity:.62}.structural-section::after{right:7vw;bottom:-.14em;font-size:7rem}.craft{grid-template-columns:1fr}.team-photo,.work-video{min-height:390px}.scripture{grid-template-columns:1fr;gap:22px}.plan-mark{font-size:4.8rem}.scripture blockquote{padding-left:22px}.whatsapp-float{right:14px;bottom:14px}.whatsapp-float button{min-height:52px;padding-right:15px}.wa-icon{width:34px;height:34px}}

/* Deep navy and electric-blue identity */
:root{--ink:#020713;--line:#0d4f91;--electric:#168cff;--electric-soft:#63baff;--navy:#001f4d}
body{background:#02050b}
header{background:#010611;border-bottom-color:#0b5aa8;box-shadow:0 12px 38px #000b}
.brand img{border-color:#157bd5;box-shadow:0 0 18px #168cff26}
.brand-sub{color:#b5d9f8}
nav a:hover{color:var(--electric-soft)}
.languages button{color:#8fbde4}
.languages button[aria-pressed=true]{border-color:var(--electric);color:#fff}
.hero{background:#020713;border-bottom-color:#0b65b9}
.hero-shade{background:linear-gradient(90deg,rgba(1,4,12,.97),rgba(0,24,61,.82) 52%,rgba(0,40,87,.18))}
.hero .eyebrow,.hero-note span{color:#65bdff}
.hero-note{border-top-color:#168cff}
.cream{background:linear-gradient(135deg,#075fb3,#168cff);border-color:#4fb1ff;box-shadow:0 10px 26px #087fe84a}
.cream:hover{background:linear-gradient(135deg,#0876d8,#36a4ff)}
.text-link{border-color:#48a9fa}
.intro{background:linear-gradient(120deg,#020713 0%,#06182f 56%,#00336d 100%);border-bottom-color:#0a5ca9}
.projects{background:linear-gradient(180deg,#02060d,#061427)}
.project{border-top-color:#1164ad}
.project:nth-of-type(even){background:linear-gradient(90deg,transparent,#06244a 48%,transparent)}
.eyebrow,.number,.service-grid span{color:#56b4ff}
.project-heading p,.section-heading>p,.intro p:not(.eyebrow),.service-grid p{color:#b9d0e3}
.photo{background:#020a15;border-color:#126bb8;box-shadow:0 16px 34px #000a}
.photo:hover{border-color:#42aaff;box-shadow:0 16px 38px #087fe83d}
.photo span{background:#021225ed;border-color:#168cff}
.services{background:linear-gradient(120deg,#01040a,#05152b 50%,#003269);border-block-color:#0e68b8}
.service-grid article{border-top-color:#168cff}
.contact{background:linear-gradient(120deg,#01040a 0%,#03152b 50%,#00346e 100%);border-bottom-color:#0b60ad}
.contact .eyebrow{color:#66bcff}
.contact>img{border-color:#168cff;box-shadow:18px 18px 0 #002a57}
.outline{border-color:#238edf;color:#f1f8ff}
.outline:hover{background:#06427c}
footer{background:#01050c;border-top-color:#0a447e;color:#9dc1df}
.structural-section::before{background:linear-gradient(135deg,transparent 0 36%,#00347a 36% 43%,transparent 43% 49%,#168cff 49% 54%,transparent 54% 60%,#001c46 60% 70%,transparent 70%);filter:drop-shadow(0 14px 24px #087fe86b)}
.structural-section::after{color:#168cff20;-webkit-text-stroke-color:#63baff4f}
.craft{background:linear-gradient(130deg,#020713,#061a35 57%,#003a78)}
.team-photo,.work-video{border-color:#147acb}
.team-photo figcaption,.work-video figcaption{border-color:#168cff;background:#020d1bed}
.scripture{background:linear-gradient(120deg,#020713,#04172e);border-block-color:#0d65b5}
.plan-mark{color:#08305b;-webkit-text-stroke-color:#299cff}
.scripture cite{color:#62b9ff}
.whatsapp-float button{border-color:#42aaff;background:linear-gradient(135deg,#064d91,#087fe8);box-shadow:0 12px 32px #006fd45c}
.whatsapp-float button:hover{background:linear-gradient(135deg,#0967bd,#168cff)}
.whatsapp-menu{background:#020b18f7;border-color:#168cff}
.whatsapp-menu a{border-top-color:#0f4f88}
.whatsapp-menu a:hover{background:#073666}
@media(max-width:600px){.hero-shade{background:linear-gradient(90deg,#01040cf5,#002958d1)}.contact>img{box-shadow:10px 10px 0 #002a57}}

/* Diagonal hero reveal: brand color on the copy side, natural project color on the other */
.hero-shade{background:linear-gradient(90deg,rgba(1,5,15,.98) 0%,rgba(0,29,70,.90) 58%,rgba(0,70,145,.62) 100%);clip-path:polygon(0 0,68% 0,52% 100%,0 100%)}
.hero-content{text-shadow:0 3px 20px #000b}
@media(max-width:600px){.hero-shade{background:linear-gradient(90deg,rgba(1,5,15,.98),rgba(0,35,78,.88));clip-path:polygon(0 0,84% 0,58% 100%,0 100%)}.hero-content{text-shadow:0 3px 18px #000d}}

/* Completed home and construction process alternate in the opening image */
.structural-section::after{content:none}
.hero-final{animation:heroFinal 14s ease-in-out infinite}
.hero-process{opacity:0;animation:heroProcess 14s ease-in-out infinite;object-position:center 48%}
@keyframes heroFinal{0%,42%,100%{opacity:1}50%,92%{opacity:0}}
@keyframes heroProcess{0%,42%,100%{opacity:0}50%,92%{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-final{animation:none}.hero-process{display:none;animation:none}}

/* Single finished-home cover with natural color and no diagonal split */
.hero-shade{clip-path:none;background:linear-gradient(90deg,rgba(1,5,15,.62) 0%,rgba(2,12,25,.28) 48%,rgba(2,12,25,.06) 76%,transparent 100%)}
.hero-image{animation:none;opacity:1}
@media(max-width:600px){.hero-shade{clip-path:none;background:linear-gradient(90deg,rgba(1,5,15,.67),rgba(2,12,25,.20) 78%,transparent)}}

/* Larger, clearer brand mark in the header */
.timber-frame{grid-template-columns:1fr 1fr}
.timber-frame .photo img{height:clamp(250px,30vw,440px)}
@media(max-width:600px){.timber-frame{grid-template-columns:1fr}.timber-frame .photo img{height:280px}}
header{height:116px;padding-block:8px}
.brand{gap:16px}
.brand img{width:92px;height:92px;padding:2px;border:2px solid #168cff;border-radius:8px;box-shadow:0 0 22px #168cff38}
.brand>span{font-size:2.05rem}
.brand-sub{font-size:13px;letter-spacing:.12em}
.hero{height:calc(100svh - 116px)}
@media(max-width:900px){header{height:108px}.brand img{width:80px;height:80px}.brand>span{font-size:1.8rem}.hero{height:calc(100svh - 108px)}}
@media(max-width:600px){header{height:auto;min-height:122px}.brand img{width:64px;height:64px}.brand>span{font-size:1.65rem}.brand-sub{font-size:12px}.hero{height:auto}}
