@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@400;500;600;700;800&family=DM+Mono:wght@400;500&display=swap');
:root{--forest:#18352e;--deep:#10271f;--sage:#849b79;--mint:#dbe4d7;--sand:#eeeae1;--paper:#f8f6f0;--white:#fffefa;--gold:#c7a266;--ink:#24312c;--muted:#6c7771;--line:rgba(36,49,44,.15);--arabic:"Alexandria",Tahoma,Arial,sans-serif;--mono:"DM Mono",monospace;--shadow:0 24px 60px rgba(17,39,31,.15)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--arabic);font-size:14px;line-height:1.8;overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;z-index:30;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}.gold-line{height:4px;background:linear-gradient(90deg,var(--gold),#ecd9aa,var(--gold))}a{text-decoration:none;color:inherit}.header{height:90px;padding:0 max(6vw,30px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(248,246,240,.92);position:relative;z-index:10;backdrop-filter:blur(10px)}.brand{display:inline-flex;align-items:center;gap:11px;line-height:1}.brand-emblem{width:41px;height:41px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center}.brand-emblem svg{width:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.brand>span:last-child{display:flex;flex-direction:column;gap:6px}.brand b{font-size:14px}.brand small{font:9px var(--mono);letter-spacing:1.15px;color:var(--sage)}.nav{display:flex;gap:32px;margin-right:42px}.nav a{font-size:11px;color:#56635c;transition:.25s}.nav a:hover{color:var(--forest)}.header-wa{font-size:10px;border:1px solid var(--line);padding:9px 13px;display:flex;gap:8px;align-items:center;transition:.3s}.header-wa:hover{background:var(--forest);color:white}.header-wa i{width:6px;height:6px;border-radius:50%;background:#42a765;box-shadow:0 0 0 5px rgba(66,167,101,.14)}.menu{display:none;border:0;background:none;padding:5px}.menu span{display:block;width:25px;height:1px;background:var(--forest);margin:6px}.pad{padding:122px max(6vw,30px)}.hero{min-height:650px;padding:88px max(6vw,30px) 100px;display:grid;grid-template-columns:.98fr 1.02fr;gap:7vw;align-items:center;position:relative}.hero-copy{z-index:1}.eyebrow{color:var(--sage);font:10px var(--mono);letter-spacing:1.6px;margin:0 0 17px;display:flex;gap:9px;align-items:center}.eyebrow span{height:1px;width:26px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(39px,5vw,74px);line-height:1.3;letter-spacing:-2.5px;margin:0 0 20px}h1 em,h2 em{font-style:normal;font-weight:400;color:var(--sage)}.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:2.1;max-width:480px;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:28px}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:15px 19px;font-size:11px;font-weight:600;cursor:pointer;transition:.3s}.button.primary{background:var(--forest);color:white;box-shadow:6px 6px 0 var(--gold)}.button:hover{transform:translate(-2px,-2px);box-shadow:10px 10px 0 var(--gold)}.button b{font-size:18px;font-weight:400;line-height:1}.under-link{font-size:10px;border-bottom:1px solid var(--forest);padding-bottom:4px}.under-link span{color:var(--gold);margin-right:8px}.hero-points{margin-top:70px;display:flex;gap:25px}.hero-points div{border-right:1px solid var(--line);padding-right:13px;display:flex;flex-direction:column;line-height:1.6}.hero-points b{font-size:10px;color:var(--forest)}.hero-points small{font-size:9px;color:#818b85}.hero-visual{height:505px;position:relative}.hero-visual figure{position:absolute;inset:0 22px 0 0;margin:0;overflow:hidden;box-shadow:var(--shadow);background:var(--forest)}.hero-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(.74) contrast(1.04)}.overlay{position:absolute;inset:0;background:linear-gradient(155deg,transparent 37%,rgba(11,36,26,.72))}.hero-visual figcaption{position:absolute;z-index:1;bottom:25px;right:25px;color:white;display:flex;flex-direction:column}.hero-visual figcaption span{font:9px var(--mono);color:#e7d6af;letter-spacing:1px}.hero-visual figcaption b{font-size:15px}.circle{position:absolute;border:1px solid rgba(199,162,102,.6);border-radius:50%;z-index:-1}.c1{height:270px;width:270px;left:-100px;bottom:-89px}.c2{height:110px;width:110px;left:-23px;bottom:-13px}.hero-tag{position:absolute;left:-10px;top:38px;background:var(--white);padding:12px 16px 12px 12px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 24px rgba(16,39,31,.18)}.hero-tag>span{width:31px;height:31px;display:grid;place-items:center;background:var(--gold);color:white}.hero-tag div{line-height:1.55}.hero-tag small{display:block;font-size:8px;color:var(--muted)}.hero-tag b{display:block;font-size:10px}.ticker{overflow:hidden;background:var(--forest);color:#e8e4d8;white-space:nowrap;padding:17px 0}.ticker div{display:inline-flex;gap:30px;align-items:center;font-size:11px;animation:scroll 24s linear infinite}.ticker i{font-style:normal;color:var(--gold)}@keyframes scroll{to{transform:translateX(50%)}}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:52px}.section-head h2{font-size:clamp(31px,4vw,53px);line-height:1.35;letter-spacing:-1.7px;margin:0}.section-head>p{max-width:330px;margin:0;color:var(--muted);font-size:11px;line-height:2}.services{background:var(--sand)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-right:1px solid var(--line)}.service-card{min-height:245px;padding:28px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden;transition:.35s}.service-card:before{content:"";position:absolute;inset:100% 0 0;background:var(--forest);transition:.35s}.service-card>*{position:relative;z-index:1}.service-card:hover:before{inset:0}.service-card:hover{color:white}.service-card:hover p{color:#d0dbd2}.service-card:hover a{color:#e8d9b8}.service-card>span{position:absolute;top:22px;left:22px;color:#87918a;font:10px var(--mono)}.service-card h3{font-size:15px;line-height:1.7;margin:50px 0 8px;max-width:230px}.service-card p{font-size:10px;line-height:1.95;color:var(--muted);margin-bottom:18px;max-width:240px}.service-card a{font-size:9px;font-weight:600}.service-card a b{font-size:15px;color:var(--gold);margin-right:7px}.statement{background:var(--forest);color:white;display:grid;grid-template-columns:.65fr 1.35fr;gap:12vw;align-items:center}.statement-number{font:clamp(115px,17vw,215px)/1 var(--mono);color:#d7c99f;letter-spacing:-14px}.pale{color:#d7c99f}.statement h2{font-size:clamp(31px,4vw,55px);line-height:1.4;margin:0 0 18px;letter-spacing:-1.5px}.statement h2 em{color:#d7c99f}.statement-copy>p:not(.eyebrow){font-size:12px;line-height:2;color:#c3ccc6;max-width:510px}.steps{border-top:1px solid rgba(255,255,255,.18);margin-top:31px}.steps div{display:flex;align-items:center;gap:19px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.18)}.steps b{font-size:11px;color:#e4d2a8;width:55px}.steps span{font-size:10px;color:#c7d0ca}.projects{background:var(--paper)}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}.project-card{border:0;padding:0;margin:0;overflow:hidden;background:var(--forest);position:relative;text-align:right;cursor:pointer}.project-card.featured{grid-column:span 2;grid-row:span 2}.project-card img,.project-card video{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72) contrast(1.03);transition:.65s}.project-card:hover img,.project-card:hover video{transform:scale(1.06);filter:saturate(1)}.project-shade{position:absolute;inset:0;background:linear-gradient(transparent 38%,rgba(8,31,22,.82))}.project-caption{position:absolute;bottom:18px;right:19px;color:white;display:flex;flex-direction:column;line-height:1.55}.project-caption small{font:9px var(--mono);color:#e7d6ad;letter-spacing:.6px}.project-caption b{font-size:12px}.play{position:absolute;z-index:2;top:50%;right:50%;transform:translate(50%,-50%);width:45px;height:45px;border-radius:50%;background:rgba(255,255,255,.9);color:var(--forest);display:grid;place-items:center;font-size:15px;padding-right:2px}.gallery-hint{font-size:9px;color:var(--muted);margin:19px 0 0}.reviews{background:#ebe8df}.reviews .section-head{margin-bottom:28px}.reviews-label{display:flex;align-items:center;gap:9px;margin-bottom:19px}.reviews-label span{font-size:16px;color:var(--gold)}.reviews-label b{font-size:13px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.review-card{background:var(--white);padding:26px;min-height:225px;display:flex;flex-direction:column;border-top:2px solid transparent;transition:.3s}.review-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:var(--shadow)}.stars{color:var(--gold);font-size:13px;letter-spacing:2px;direction:ltr;text-align:right}.stars span{color:#deded7}.review-card blockquote{font-size:11px;line-height:2.05;color:#425049;margin:20px 0}.review-card footer{border-top:1px solid var(--line);padding-top:13px;margin-top:auto;display:flex;align-items:center;gap:9px}.review-card footer i{font-style:normal;width:31px;height:31px;display:grid;place-items:center;background:var(--forest);color:#e4d2a8;font-size:11px}.review-card footer div{display:flex;flex-direction:column;line-height:1.6}.review-card footer b{font-size:10px}.review-card footer small{font-size:8px;color:#8d958f}.alert{padding:11px 15px;background:#fff0ea;border-right:3px solid #be6b45;color:#8d4c30;font-size:10px;margin:-15px 0 22px}.contact{background:var(--forest);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;align-items:center}.contact h2{font-size:clamp(37px,4.4vw,62px);line-height:1.35;letter-spacing:-2px;margin:0 0 18px}.contact h2 em{color:#dcc796;font-style:normal;font-weight:400}.contact-copy>p:not(.eyebrow){max-width:330px;color:#c0cbc4;font-size:12px;line-height:2;margin-bottom:35px}.wa-box{display:flex;align-items:center;gap:11px;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);padding:13px 0;max-width:365px}.wa-box>i{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#2d9956;font-style:normal;font-size:23px}.wa-box span{display:flex;flex-direction:column;line-height:1.6}.wa-box small{font-size:8px;color:#bac5be}.wa-box b{font:12px var(--mono)}.wa-box strong{font-weight:400;color:#dfc997;font-size:17px;margin-right:auto}.contact-form{background:var(--white);padding:33px;color:var(--ink)}.contact-form form>p{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;font-size:12px;font-weight:600}.contact-form form>p span{font:10px var(--mono);color:var(--gold)}label{display:flex;flex-direction:column;gap:5px;font-size:9px;font-weight:600;margin-bottom:14px}label small{font-weight:400;color:#939a95}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,textarea,select{font:inherit;font-size:10px;width:100%;border:0;border-bottom:1px solid #cbd1ca;background:#fafaf7;padding:10px 8px;color:var(--ink);outline:none;transition:.2s}input:focus,textarea:focus,select:focus{background:#fffef9;border-color:var(--gold)}textarea{resize:vertical;min-height:76px}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#61716a 50%),linear-gradient(135deg,#61716a 50%,transparent 50%);background-position:12px 50%,7px 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-left:24px}.gold{background:var(--gold);color:white;width:100%;box-shadow:none;margin-top:3px}.gold:hover{background:#ad8549;box-shadow:5px 5px 0 var(--forest)}.form-note{display:block;text-align:center;color:#8a928c;font-size:8px;margin-top:10px}.form-result{display:none;margin-top:12px;font-size:10px;padding:9px 11px;line-height:1.8}.form-result.success{display:block;background:#e5f2e7;color:#27663b}.form-result.error{display:block;background:#fff0ea;color:#98482c}.form-result a{text-decoration:underline;font-weight:700}button:disabled{opacity:.7;cursor:wait}footer{background:#0e251d;color:#c6d0ca;padding:52px max(6vw,30px) 18px}.footer-main{display:grid;grid-template-columns:1.3fr 1.2fr 1fr;align-items:center;padding-bottom:44px}.footer-main .brand{color:white}.footer-main p{font-size:10px;color:#a9b6ae;max-width:250px;margin:0}.footer-main>a:last-child{justify-self:end;font-size:10px;color:#e0c999;border-bottom:1px solid currentColor;padding-bottom:3px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:16px;display:flex;justify-content:space-between;color:#87958d;font:9px var(--mono)}.footer-bottom a{color:#e0c999}.floating-wa{position:fixed;bottom:18px;left:19px;z-index:15;border-radius:25px;background:#269a58;color:white;padding:10px 14px;box-shadow:0 9px 23px rgba(0,0,0,.22);display:flex;align-items:center;gap:8px;font-size:10px}.floating-wa span{font-size:19px}.media-modal{display:none;position:fixed;z-index:50;inset:0;background:rgba(5,19,14,.9);padding:60px 6vw 35px;align-items:center;justify-content:center;flex-direction:column}.media-modal.open{display:flex}.modal-media{max-width:min(1100px,100%);max-height:75vh;display:flex;justify-content:center}.modal-media img,.modal-media video{max-width:100%;max-height:75vh;object-fit:contain;box-shadow:0 16px 55px rgba(0,0,0,.35)}.modal-close{position:absolute;top:17px;left:20px;background:transparent;color:white;border:0;font-size:37px;line-height:1;cursor:pointer}.modal-caption{color:white;font-size:12px;margin:13px 0 0}.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s,transform .65s}.reveal.visible{opacity:1;transform:none}.delay{transition-delay:.12s}.delay-2{transition-delay:.23s}@media(max-width:850px){.nav{display:none;position:absolute;top:90px;left:0;right:0;background:var(--paper);padding:8px max(6vw,24px) 17px;margin:0;flex-direction:column;gap:0;border-bottom:1px solid var(--line);box-shadow:0 10px 15px rgba(0,0,0,.06)}.nav.open{display:flex}.nav a{padding:11px 0;border-bottom:1px solid var(--line)}.menu{display:block}.header-wa{font-size:0;padding:10px;border-radius:50%;margin-right:auto;margin-left:11px}.header-wa i{width:8px;height:8px}.hero{grid-template-columns:1fr;padding-top:63px;min-height:auto}.hero-visual{height:440px;max-width:620px;width:100%;margin-right:auto}.section-head{gap:23px}.service-grid{grid-template-columns:repeat(2,1fr)}.statement{grid-template-columns:1fr;gap:50px}.project-grid{grid-template-columns:1.2fr .8fr;grid-auto-rows:210px}.reviews-grid{grid-template-columns:1fr 1fr}.contact{grid-template-columns:1fr;gap:50px}.footer-main{grid-template-columns:1fr 1fr;gap:23px}.footer-main p{grid-row:2}.footer-main>a:last-child{justify-self:start}}@media(max-width:560px){.header{height:75px}.nav{top:75px}.brand b{font-size:12px}.brand-emblem{width:35px;height:35px}.hero{padding:49px 22px 72px}.hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.hero-points{margin-top:52px;gap:13px}.hero-points div{padding-right:9px}.hero-points small{font-size:8px}.hero-visual{height:325px}.hero-visual figure{right:12px}.hero-tag{left:-2px;top:16px;padding:9px}.hero-tag b{font-size:8px}.hero-tag small{font-size:7px}.pad{padding:78px 22px}.section-head{display:block;margin-bottom:36px}.section-head>p{margin-top:14px}.service-grid{grid-template-columns:1fr}.service-card{min-height:210px}.statement{padding-top:72px;padding-bottom:72px}.statement-number{font-size:130px}.project-grid{grid-template-columns:1fr;grid-auto-rows:265px;gap:11px}.project-card.featured{grid-column:auto;grid-row:auto}.reviews-grid{grid-template-columns:1fr}.fields{grid-template-columns:1fr;gap:0}.contact-form{padding:25px 18px}.footer-main{grid-template-columns:1fr}.footer-main p{grid-row:auto}.footer-bottom{flex-direction:column;gap:7px}.floating-wa{width:45px;height:45px;justify-content:center;padding:0;left:13px;bottom:13px}.floating-wa b{display:none}.media-modal{padding:60px 14px 22px}.modal-close{top:15px;left:14px}}
/* Admin, uploads and review links */
.admin-body,.review-body{min-height:100vh;background:var(--paper)}.admin-header{height:82px;padding:0 max(6vw,30px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.admin-header>a:last-child{font-size:10px;color:#a14d31;border-bottom:1px solid currentColor}.login-page{min-height:calc(100vh - 86px);display:grid;place-items:center;padding:55px 22px;background:radial-gradient(circle at 80% 20%,rgba(199,162,102,.18),transparent 29%),var(--sand)}.login-card{width:min(100%,510px);padding:43px;background:var(--white);box-shadow:var(--shadow);border-top:3px solid var(--gold)}.login-card h1{font-size:42px;margin:0 0 14px}.login-card>p{font-size:11px;line-height:2;color:var(--muted);margin-bottom:23px}.login-card>small{display:block;font-size:9px;color:#89928c;margin-top:18px}.login-card .button{margin-top:5px}.admin-main{max-width:1240px;margin:auto;padding:58px max(4vw,22px) 90px}.admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:30px}.admin-title h1{font-size:clamp(36px,4.7vw,64px);margin:0}.admin-title>a{font-size:10px;color:var(--sage);border-bottom:1px solid currentColor;padding-bottom:3px}.admin-alert{font-size:10px;padding:12px 14px;line-height:1.8;margin:0 0 19px}.admin-alert.success{background:#e5f1e6;color:#2d693d;border-right:3px solid #5b9d69}.admin-alert.error{background:#fff0ea;color:#98492e;border-right:3px solid #cf7653}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:19px}.admin-stats>div{background:var(--forest);color:white;padding:19px 20px;border-bottom:2px solid var(--gold)}.admin-stats small{display:block;font-size:9px;color:#b9c4bc}.admin-stats b{display:block;font:28px var(--mono);color:#e5d19e;margin-top:4px}.admin-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:19px;margin-bottom:19px}.panel{background:var(--white);padding:27px;margin-bottom:19px}.admin-grid .panel{margin:0}.panel-heading{display:flex;gap:13px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:18px}.panel-heading>span{font:10px var(--mono);color:var(--gold)}.panel-heading h2{font-size:15px;margin:0 0 2px}.panel-heading p{font-size:9px;color:var(--muted);margin:0}.upload-note{font-size:8px;line-height:1.9;color:#748078;background:#f1f2ec;border-right:2px solid var(--sage);padding:10px 11px;margin:15px 0 0}.upload-note b{color:var(--forest)}.new-link{margin-top:17px;background:#f3eee2;padding:12px;border-right:2px solid var(--gold);display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.new-link small{font-size:8px;color:#7b715e;grid-column:1/-1}.new-link code{font:9px var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:ltr;text-align:right}.copy{font:9px var(--arabic);border:1px solid var(--gold);color:#947139;background:transparent;padding:5px 8px;cursor:pointer;white-space:nowrap}.new-link a{font-size:9px;border-bottom:1px solid var(--forest);padding-bottom:2px}.table-panel{padding-bottom:11px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:710px}th{text-align:right;color:#7f8a83;font-size:9px;font-weight:500;padding:0 8px 10px;border-bottom:1px solid var(--line)}td{vertical-align:top;font-size:10px;color:#5d6b63;padding:12px 8px;border-bottom:1px solid rgba(25,53,45,.09)}td b{font-size:10px;color:var(--ink);display:block}td small{display:block;font-size:8px;color:#929a95;margin-top:3px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty{text-align:center;padding:26px;color:#9aa19c}.chip,.status{font-size:8px;padding:3px 6px}.chip{background:#e7eee5;color:#47634b}.status.open{background:#e5f2e7;color:#2e7040}.status.used{background:#f5eedb;color:#81652e}.status.revoked{background:#faebe5;color:#98513a}.danger{border:0;background:transparent;color:#a44e34;font:9px var(--arabic);padding:0;cursor:pointer}.request-text{max-width:230px;line-height:1.8}
/* Public customer review form */.review-page{min-height:100vh;padding:34px max(6vw,24px) 70px;background:radial-gradient(circle at 15% 90%,rgba(199,162,102,.18),transparent 28%),var(--sand)}.review-page>.brand{margin-bottom:37px}.review-shell{max-width:890px;margin:auto;background:var(--white);box-shadow:var(--shadow);display:grid;grid-template-columns:.9fr 1.1fr;min-height:530px}.review-intro{background:var(--forest);color:white;padding:46px 42px;position:relative;overflow:hidden}.review-intro:after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(223,201,151,.37);border-radius:50%;left:-115px;bottom:-155px}.review-intro h1{font-size:39px;line-height:1.4;margin:0 0 14px}.review-intro h1 em{color:#e0ca95;font-weight:400}.review-intro>p:not(.eyebrow){color:#bdc9c0;font-size:11px;line-height:2}.review-intro>div{position:relative;z-index:1;margin-top:40px;padding-top:14px;border-top:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;gap:3px}.review-intro>div small{font-size:8px;color:#e1cf9e}.review-intro>div b{font-size:11px}.review-form{padding:43px 40px;align-self:center}.review-form fieldset{border:0;padding:0;margin:0 0 15px}.review-form legend{font-size:9px;font-weight:600;margin-bottom:6px}.rating{display:flex;direction:ltr;justify-content:flex-end;width:max-content}.rating input{position:absolute;opacity:0}.rating label{font-size:31px;color:#d8dcd7;line-height:1;width:auto;margin:0;cursor:pointer;transition:.15s}.rating label:hover,.rating label:hover~label,.rating input:checked~label{color:var(--gold)}.review-form>small{display:block;font-size:8px;color:#8b958e;line-height:1.8;text-align:center;margin-top:10px}.thank-you{grid-column:1/-1;text-align:center;max-width:650px;margin:auto;padding:65px 40px}.thank-you>span{margin:0 auto 18px;width:47px;height:47px;border-radius:50%;background:#e3f1e5;color:#318044;display:grid;place-items:center;font-size:22px}.thank-you.unavailable>span{background:#fff0ea;color:#b65d3c}.thank-you .eyebrow{justify-content:center}.thank-you .eyebrow i{height:1px;width:24px;background:var(--gold)}.thank-you h1{font-size:43px;line-height:1.4;margin:0 0 14px}.thank-you>p:not(.eyebrow){font-size:11px;color:var(--muted);max-width:410px;margin:0 auto 25px;line-height:2}.thank-you .button{margin:auto}
@media(max-width:760px){.admin-main{padding-top:37px}.admin-title{align-items:flex-start;flex-direction:column}.admin-stats{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.panel{padding:20px}.new-link{grid-template-columns:1fr auto}.new-link a{grid-column:1/-1;justify-self:start}.review-shell{grid-template-columns:1fr}.review-intro,.review-form{padding:35px 25px}.thank-you{padding:55px 23px}.thank-you h1{font-size:37px}}@media(max-width:400px){.admin-stats{grid-template-columns:1fr}.admin-header{padding:0 19px}.admin-header .brand small{display:none}}

/* Paginated work gallery: five compact cards per page */
.media-group{margin-top:56px}.media-group:first-of-type{margin-top:0}.video-group{padding-top:55px;border-top:1px solid var(--line)}.media-group-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.media-group-title>div{display:flex;align-items:center;gap:10px}.media-group-title span{font:10px var(--mono);color:var(--gold)}.media-group-title h3{font-size:16px;margin:0}.media-group-title>small{font:9px var(--mono);color:var(--sage)}.work-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:195px;gap:13px}.work-card{border:0;padding:0;margin:0;overflow:hidden;background:var(--forest);position:relative;text-align:right;cursor:pointer;min-width:0}.work-card img,.work-card video{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.72) contrast(1.03);transition:transform .65s,filter .4s}.work-card:hover img,.work-card:hover video{transform:scale(1.065);filter:saturate(1)}.work-card .project-caption{bottom:13px;right:13px;left:13px}.work-card .project-caption small{font-size:8px}.work-card .project-caption b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work-card .play{width:39px;height:39px;font-size:13px}.gallery-pages{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:20px;direction:ltr}.gallery-pages a{width:31px;height:31px;display:grid;place-items:center;border:1px solid var(--line);font:10px var(--mono);color:var(--muted);transition:.2s}.gallery-pages a:hover,.gallery-pages a.active{background:var(--forest);color:var(--white);border-color:var(--forest)}.empty-work{min-height:130px;display:flex;align-items:center;justify-content:center;gap:10px;background:#efeee8;color:#7a847e;font-size:10px}.empty-work span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:white;font-size:10px}.empty-work p{margin:0}.projects .gallery-hint{margin-top:22px}
@media(max-width:1000px){.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:205px}}@media(max-width:560px){.media-group{margin-top:40px}.video-group{padding-top:40px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:185px;gap:10px}.work-card .project-caption{bottom:10px;right:10px;left:10px}.media-group-title h3{font-size:14px}.gallery-pages{margin-top:15px}}
/* Force compact gallery layout even when an old cached stylesheet was previously used. */
.projects .work-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;grid-auto-rows:175px!important;gap:12px!important}.projects .work-card{display:block!important;height:175px!important;min-width:0!important;position:relative!important}.projects .work-card img,.projects .work-card video{height:175px!important;width:100%!important;object-fit:cover!important}@media(max-width:1000px){.projects .work-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:175px!important}.projects .work-card,.projects .work-card img,.projects .work-card video{height:175px!important}}@media(max-width:560px){.projects .work-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:135px!important;gap:9px!important}.projects .work-card,.projects .work-card img,.projects .work-card video{height:135px!important}.projects .work-card .project-caption b{font-size:9px!important}}

/* Optional media attached to customer testimonials */
.optional-upload{margin-top:4px;padding:11px 12px;background:#f1f3ed;border-right:2px solid var(--sage);font-size:9px}.optional-upload small{font-size:8px;line-height:1.8}.optional-upload input[type=file]{background:transparent;border:0;padding:8px 0 0;font-size:9px;color:var(--muted)}.review-media{width:100%;height:96px;border:0;margin:0 0 15px;padding:0;overflow:hidden;background:var(--forest);position:relative;cursor:pointer;text-align:right}.review-media img,.review-media video{width:100%;height:100%;display:block;object-fit:cover;filter:saturate(.78)}.review-media>span{position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--forest);font-size:12px}.review-media>small{position:absolute;bottom:7px;right:9px;color:white;font-size:8px;text-shadow:0 1px 5px rgba(0,0,0,.5)}.review-media:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(7,27,19,.5));pointer-events:none}.review-media>span,.review-media>small{z-index:1}.review-card:has(.review-media){min-height:325px}@media(max-width:560px){.review-media{height:88px}.review-card:has(.review-media){min-height:0}}

/* Collapsible, scrollable management of published testimonials */
.admin-fold{padding:0;overflow:hidden}.admin-fold summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:22px 27px;background:var(--white);user-select:none}.admin-fold summary::-webkit-details-marker{display:none}.admin-fold summary>span{display:grid;grid-template-columns:30px 1fr;column-gap:11px;align-items:center}.admin-fold summary i{grid-row:span 2;font:10px var(--mono);font-style:normal;color:var(--gold);align-self:start;padding-top:3px}.admin-fold summary b{font-size:15px;color:var(--ink)}.admin-fold summary small{font-size:9px;color:var(--muted)}.admin-fold summary em{font-style:normal;font:10px var(--mono);color:var(--sage);border:1px solid rgba(132,155,121,.45);padding:4px 7px}.admin-fold[open] summary{border-bottom:1px solid var(--line)}.fold-content{padding:18px 27px 12px}.fold-note{font-size:9px;color:var(--muted);line-height:1.9;margin:0 0 12px}.review-scroll{max-height:390px;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.review-scroll table{min-width:850px}.admin-stars{color:var(--gold);letter-spacing:1px;direction:ltr;white-space:nowrap}.review-text{max-width:290px;line-height:1.85}.danger.permanent{border:1px solid #d69a84;padding:4px 7px;color:#9c4027}.danger.permanent:hover{background:#fff0ea}@media(max-width:760px){.admin-fold summary{padding:18px}.fold-content{padding:15px 18px 10px}.review-scroll{max-height:320px}.fold-note{font-size:8px}}

/* Readable public-site typography on phones and tablets */
.public-site footer{padding-bottom:102px}.public-site .floating-wa{width:62px;height:62px;left:20px;bottom:20px;padding:0;justify-content:center;border-radius:50%;background:#25a45a;border:3px solid rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(7,42,25,.3)}.public-site .floating-wa svg{width:31px;height:31px;color:white}.public-site .floating-wa span,.public-site .floating-wa b{display:none}
@media(max-width:850px){.public-site{font-size:16px}.public-site .hero-copy>p:not(.eyebrow){font-size:15px;line-height:2.15}.public-site .section-head>p{font-size:13px;line-height:2.05}.public-site .service-card h3{font-size:17px}.public-site .service-card p{font-size:12px;line-height:2}.public-site .statement-copy>p:not(.eyebrow){font-size:13px}.public-site .steps b{font-size:12px}.public-site .steps span{font-size:11px}.public-site .project-caption b{font-size:13px}.public-site .gallery-hint{font-size:11px}.public-site .review-card blockquote{font-size:13px}.public-site .contact-copy>p:not(.eyebrow){font-size:13px}.public-site .footer-main p{font-size:12px}.public-site .footer-bottom{font-size:10px}}
@media(max-width:560px){.public-site{padding-bottom:0}.public-site .header{height:80px}.public-site .nav{top:80px}.public-site .eyebrow{font-size:11px;letter-spacing:1px}.public-site h1{font-size:45px;line-height:1.32}.public-site .hero-copy>p:not(.eyebrow){font-size:15px;line-height:2.2}.public-site .hero-points b{font-size:11px}.public-site .hero-points small{font-size:9px}.public-site .section-head h2{font-size:36px}.public-site .section-head>p{font-size:13px}.public-site .service-card h3{font-size:17px}.public-site .service-card p{font-size:12px}.public-site .service-card a{font-size:11px}.public-site .statement h2{font-size:34px}.public-site .statement-copy>p:not(.eyebrow){font-size:13px}.public-site .media-group-title h3{font-size:17px}.public-site .work-card .project-caption b{font-size:10px!important}.public-site .reviews-label b{font-size:15px}.public-site .review-card blockquote{font-size:13px}.public-site .contact h2{font-size:42px}.public-site .contact-copy>p:not(.eyebrow){font-size:13px}.public-site .wa-box small{font-size:10px}.public-site .wa-box b{font-size:13px}.public-site .contact-form form>p{font-size:14px}.public-site label{font-size:11px}.public-site input,.public-site textarea,.public-site select{font-size:12px}.public-site .form-note{font-size:9px}.public-site .footer-main p{font-size:12px}.public-site .floating-wa{width:66px;height:66px;left:16px;bottom:16px}.public-site .floating-wa svg{width:34px;height:34px}}

/* Hard mobile/tablet fit: prevents desktop-width sections being clipped on narrow devices. */
.public-site{max-width:100%;overflow-x:hidden}@media screen and (max-width:900px),screen and (max-device-width:900px){.public-site,.public-site main,.public-site section,.public-site header,.public-site footer{max-width:100%!important}.public-site .hero{width:100%!important;min-width:0!important;grid-template-columns:minmax(0,1fr)!important;gap:34px!important;padding:48px 22px 78px!important;overflow:hidden}.public-site .hero-copy,.public-site .hero-visual{width:100%!important;min-width:0!important;margin:0!important}.public-site .hero-visual{height:390px!important}.public-site .hero-visual figure{inset:0!important}.public-site .hero-tag{left:0!important;top:18px!important;max-width:calc(100% - 8px)}.public-site .hero-index{display:none!important}.public-site .hero-points{flex-wrap:wrap}.public-site .ticker{width:100%!important;max-width:100vw!important;overflow:hidden!important}.public-site .services,.public-site .projects,.public-site .reviews,.public-site .contact,.public-site .statement{width:100%!important;min-width:0!important}.public-site .section-head,.public-site .project-grid,.public-site .work-grid,.public-site .reviews-grid{min-width:0!important}.public-site .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-width:0!important}.public-site .service-card{min-width:0!important;padding:22px 17px!important}.public-site .service-card h3{font-size:15px!important;overflow-wrap:anywhere}.public-site .service-card p{font-size:11px!important;overflow-wrap:anywhere}.public-site .statement{grid-template-columns:minmax(0,1fr)!important}.public-site .statement-number{font-size:120px!important}.public-site .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.public-site .gallery-pages{flex-wrap:wrap}.public-site .footer-main{grid-template-columns:minmax(0,1fr)!important}.public-site .footer-bottom{flex-wrap:wrap;gap:8px}.public-site .floating-wa{z-index:25}}
@media screen and (max-width:560px),screen and (max-device-width:560px){.public-site .hero{padding-right:18px!important;padding-left:18px!important}.public-site .hero-visual{height:335px!important}.public-site .hero-tag{transform:scale(.94);transform-origin:left top}.public-site .service-grid{grid-template-columns:minmax(0,1fr)!important}.public-site .service-card{min-height:205px!important;padding:23px 21px!important}.public-site .service-card h3{font-size:18px!important}.public-site .service-card p{font-size:13px!important}.public-site .project-grid{grid-template-columns:minmax(0,1fr)!important}.public-site .section-head{width:100%!important}.public-site .hero-points{gap:12px!important}}

/* Progress feedback for optional review uploads and lightweight video download cards */
.review-upload-progress{display:none;margin:10px 0 12px}.review-upload-progress.active{display:block}.review-upload-progress>div{height:7px;background:#dde3da;overflow:hidden}.review-upload-progress span{display:block;width:0;height:100%;background:var(--sage);transition:width .2s}.review-upload-progress small{display:block;margin-top:5px;color:#66806a;font-size:9px}.review-result{display:none;margin:10px 0;padding:9px 10px;font-size:10px;line-height:1.8}.review-result.error{display:block;background:#fff0ea;color:#963f27;border-right:2px solid #cf7350}.review-video-download{min-height:66px;margin:0 0 15px;padding:10px 12px;background:#e5eee4;border-right:3px solid var(--sage);display:flex;align-items:center;gap:10px;transition:.25s}.review-video-download:hover{background:#d9e7d9;transform:translateX(-2px)}.review-video-download>span{width:34px;height:34px;border-radius:50%;background:var(--forest);color:white;display:grid;place-items:center;font-size:19px;line-height:1}.review-video-download div{display:flex;flex-direction:column;line-height:1.65}.review-video-download b{font-size:10px;color:var(--forest)}.review-video-download small{font-size:8px;color:#64746a}@media(max-width:560px){.review-upload-progress small{font-size:9px}.review-video-download b{font-size:11px}.review-video-download small{font-size:9px}}

/* Real review summary strip and five-review pagination */
.review-trust-strip{background:var(--forest);color:white;display:flex;align-items:center;gap:22px;padding:20px 24px;margin:-3px 0 26px;border-bottom:2px solid var(--gold)}.review-trust-strip>i{width:1px;height:37px;background:rgba(255,255,255,.2)}.trust-stars{color:#e4c681;font-size:17px;letter-spacing:2px;direction:ltr;white-space:nowrap}.trust-stars span{color:rgba(255,255,255,.22)}.review-trust-strip>div:not(.trust-stars){line-height:1.55}.review-trust-strip b{display:block;font-size:15px;color:white}.review-trust-strip b small{font-size:9px;color:#d8ddcf}.review-trust-strip p{font-size:9px;color:#c5d0c6;margin:2px 0 0}.trust-copy{margin-right:auto}.trust-copy b{font-size:11px;color:#e7d19e}.reviews-label small{font:9px var(--mono);color:var(--sage);margin-right:8px}.review-pages{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:27px;direction:ltr}.review-pages a{height:32px;min-width:32px;display:grid;place-items:center;padding:0 9px;border:1px solid var(--line);font:10px var(--mono);color:var(--muted);transition:.2s}.review-pages a:hover,.review-pages a.active{background:var(--forest);color:white;border-color:var(--forest)}.review-pages .page-arrow{font:10px var(--arabic);direction:rtl}.empty-public-reviews{min-height:130px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--white);border-top:2px solid var(--gold);font-size:11px;color:var(--muted)}.empty-public-reviews span{color:var(--gold);font-size:19px}.empty-public-reviews p{margin:0}@media(max-width:700px){.review-trust-strip{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:17px}.review-trust-strip>i{display:none}.trust-copy{grid-column:1/-1;margin:3px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.17)}.review-trust-strip p{font-size:10px}.review-pages{gap:5px;flex-wrap:wrap}.review-pages a{min-width:30px;height:30px;font-size:9px}.review-pages .page-arrow{padding:0 8px}}

/* Large project video upload progress and full-video download action */
.admin-upload-progress{display:none;margin:13px 0 11px}.admin-upload-progress.active{display:block}.admin-upload-progress>div{height:8px;background:#dbe3da;overflow:hidden}.admin-upload-progress span{display:block;width:0;height:100%;background:var(--sage);transition:width .18s}.admin-upload-progress small{display:block;font-size:9px;color:#5f7965;margin-top:5px}.admin-upload-result{display:none;margin:9px 0;padding:9px 10px;font-size:10px;line-height:1.8}.admin-upload-result.error{display:block;background:#fff0ea;color:#9c462c;border-right:2px solid #cd7150}.modal-download{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;padding:9px 14px;background:var(--gold);color:white;font-size:10px;font-weight:600}.modal-download:hover{background:#af874a}.work-card video.video-preview{background:var(--forest)}@media(max-width:560px){.admin-upload-progress small{font-size:10px}.modal-download{font-size:11px;padding:10px 15px}}
