:root {
  --cream:#f3efe6; --cream-light:#faf7f2; --ink:#2b231f; --espresso:#261f1b; --brown:#352b26; --plum:#49352f;
  --stone:#c5b6a9; --blush:#dec2b7; --line:#e3dbd0; --max:1320px;
  --sans:'Satoshi','DM Sans',Arial,sans-serif; --serif:'Playfair Display',Georgia,serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);font-family:var(--sans);font-weight:400;color:var(--ink);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}button,input,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:#d8aea2;color:#201916}:focus-visible{outline:2px solid #b98578;outline-offset:5px}.skip-link{position:absolute;top:-80px;left:20px;z-index:9999;background:white;padding:13px 20px}.skip-link:focus{top:10px}.page-wrap{max-width:1440px;margin:auto;overflow:hidden;position:relative}.site-header{position:absolute;z-index:30;top:0;left:0;right:0;display:flex;align-items:center;justify-content:center;padding:0 30px;pointer-events:none}.nav-shell{pointer-events:auto;background:var(--cream-light);border-radius:0 0 28px 28px;min-height:116px;width:min(1040px,100%);padding:18px 48px 20px;display:grid;grid-template-columns:90px 130px 1fr 180px;align-items:center;gap:24px;box-shadow:0 10px 20px #130d0909}.nav-item{font-size:16px;white-space:nowrap;transition:opacity .25s ease}.nav-item:hover{opacity:.55}.nav-consult{text-align:right}.brand-header{justify-self:center;position:relative;top:0}.brand-header img{width:230px;max-height:86px;object-fit:contain}.menu-toggle,.mobile-nav{display:none}.nocturne-surface{background-color:#211c19;background-image:linear-gradient(95deg,rgba(16,12,10,.3),rgba(45,35,30,.05),rgba(11,10,9,.45)),url('assets/nocturne-texture.svg');background-size:cover;background-position:center;position:relative;isolation:isolate}.nocturne-surface::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 48% 58%,transparent 20%,#1e1815a6 98%);z-index:-1}.hero{height:650px;border-radius:28px;margin:80px 60px 0;display:grid;place-items:center;color:#faf6f0;overflow:hidden}.hero-inner{text-align:center;transform:translateY(35px);position:relative;z-index:1}.hero-topline{font-size:11px;letter-spacing:.29em;color:#d5c9c0;margin:0 0 29px;opacity:.0}.hero h1{font-size:clamp(26px,3vw,45px);font-weight:500;letter-spacing:.145em;line-height:1.25;margin:0;white-space:nowrap}.hero-subtitle{font-size:13px;letter-spacing:.11em;margin:28px 0 49px;font-weight:500}.hero-cta{display:inline-flex;align-items:center;gap:10px;font-size:16px;transition:gap .25s,color .25s}.hero-cta:hover{gap:19px;color:var(--blush)}.hero-bottomline{position:absolute;display:flex;left:55px;right:55px;bottom:31px;justify-content:space-between;font-size:10px;letter-spacing:.16em;color:#c7bdb4;opacity:.68}.section-pad{padding-left:80px;padding-right:80px}.about{padding-top:122px;padding-bottom:122px;text-align:center}.about-inner{max-width:920px;margin:auto}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.22em;margin:0 0 22px}.eyebrow.soft{color:#9f8e83}.eyebrow.warm{color:#e5c8bc}.slash{margin:0 12px;opacity:.55}.section-title{font-size:clamp(25px,3vw,41px);font-weight:500;letter-spacing:.155em;line-height:1.25;margin:0}.about-title{font-size:clamp(24px,2.65vw,37px)}.about-prose{font-size:20px;line-height:1.75;max-width:820px;margin:53px auto 0}.about-prose p{margin:0 0 29px}.about-prose p:last-child{margin-bottom:0}
/* The new services section preserves the existing dark/cream brand palette. */
.services{margin:0 60px;border-radius:25px;background:var(--espresso);color:#f6f0e8;overflow:hidden}.services-inner{padding:88px 76px 77px}.services-title{font-family:var(--serif);font-size:clamp(40px,4.9vw,67px);line-height:1.13;letter-spacing:-.032em;font-weight:500;margin:0}.services-intro{max-width:1060px;font-size:19px;line-height:1.65;color:#d0c0b6;margin:30px 0 66px}.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.service-card{appearance:none;text-align:left;display:flex;flex-direction:column;position:relative;min-height:245px;background:var(--brown);color:#f4ede5;border:1px solid #66534a;border-radius:17px;padding:25px 28px 22px;overflow:hidden;transition:transform .35s ease,background .35s ease,border-color .35s ease,box-shadow .35s ease}.service-highlight{background:var(--plum)}.service-card:hover{transform:translateY(-5px);background:#48372f;border-color:#9e796c;box-shadow:0 20px 30px rgba(0,0,0,.14)}.service-card-top{display:flex;align-items:center;gap:27px;color:#e1c8bd;margin-bottom:25px}.service-index{font-size:18px}.service-kicker{font-size:12px;letter-spacing:.025em;font-weight:500}.service-name{display:block;font-family:var(--serif);font-size:clamp(22px,2.4vw,31px);font-weight:500;letter-spacing:-.018em;line-height:1.27;margin-bottom:15px}.service-desc{font-size:16px;line-height:1.5;max-width:450px;opacity:.94}.service-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:auto;padding-top:24px;gap:12px;font-size:11px;color:#ccbab0;letter-spacing:.015em}.card-arrow{font-size:30px;line-height:.7;color:#e2c5b9;display:block;transition:transform .25s ease}.service-card:hover .card-arrow{transform:translate(4px,-4px)}.services-footer{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:52px}.services-footer p{font-size:19px;margin:0;line-height:1.6}.services-footer p span{opacity:.83}.pill-cta{display:inline-flex;align-items:center;justify-content:center;background:#dfc1b5;color:#261d19;font-size:12px;font-weight:600;letter-spacing:.03em;padding:20px 27px;border-radius:60px;white-space:nowrap;transition:background .2s ease,transform .2s ease}.pill-cta:hover{background:#f8ded4;transform:translateY(-2px)}
.portfolio{padding-top:140px;padding-bottom:28px}.section-intro{text-align:center}.section-intro .section-title{margin-bottom:29px}.section-intro>p:last-child{font-size:21px;line-height:1.48;margin:0}.featured-work{margin-top:108px}.project{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;margin-bottom:112px}.project-copy{max-width:580px}.project-small{font-size:11px;letter-spacing:.17em;color:#998579;font-weight:600}.project-copy h3{font-family:var(--serif);font-size:39px;font-weight:500;line-height:1.2;margin:17px 0 25px}.project-copy p{font-size:17px;line-height:1.62;margin:0 0 27px}.text-link{font-size:16px;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;background:none;border:0;color:var(--ink);padding:0;display:inline-flex;align-items:center;gap:12px}.text-link span{display:inline-block;transition:transform .2s ease}.text-link:hover span{transform:translate(3px,-3px)}.project-art{height:470px;position:relative;display:grid;place-items:center;overflow:hidden}.art-office{background:#efe9e0}.art-volksco{background:#dedbd6}.art-semm{background:#d9d6d0}.mock-window{border:1px solid #ddd6cf;box-shadow:0 17px 36px #241a1730;background:white;border-radius:3px;position:absolute;overflow:hidden;width:60%;height:70%}.mock-toolbar{height:25px;background:#f7f7f7;display:flex;align-items:center;gap:5px;padding:0 11px}.mock-toolbar i{height:5px;width:5px;border-radius:50%;background:#c5c2bd}.mock-toolbar span{font:700 8px var(--sans);letter-spacing:.14em;color:#262222;margin-left:auto}.mock-offset{left:12%;top:12%;transform:rotate(-4deg)}.mock-front{right:8%;bottom:10%;transform:rotate(3deg)}.mock-black{height:100%;background:linear-gradient(140deg,#18181a,#2a2425);color:white;padding:40px 23px}.mock-black span{font-size:10px;letter-spacing:.26em;color:#e84c54}.mock-black strong{display:block;font-size:29px;line-height:1.08;margin:13px 0}.mock-black small{display:block;font-size:8px;letter-spacing:.1em;margin-top:35px}.mock-accent-bar{height:5px;width:55%;background:#dc0f36}.mock-red{height:100%;background:#ee0831;color:white;padding:35px 26px}.mock-red span{font-size:10px;letter-spacing:.12em}.mock-red strong{display:block;font-size:29px;margin:20px 0 26px}.mock-white-strip{height:38px;background:white}.mock-grid-shapes{display:flex;gap:12px;margin-top:19px}.mock-grid-shapes b{background:white;color:#ef1342;display:grid;place-items:center;width:45px;height:48px}.mock-volks-back{left:12%;top:9%;transform:rotate(4deg)}.mock-volks-front{right:11%;bottom:10%;transform:rotate(-3deg)}.volks-screen{height:100%;background:linear-gradient(145deg,#232832,#13151c 55%,#330d11);color:white;padding:46px 27px;position:relative}.volks-screen.alt{background:linear-gradient(145deg,#111924,#131b2b 60%,#253d49)}.volks-screen small{font-size:9px;letter-spacing:.13em;color:#dadce3}.volks-screen strong{font-size:26px;display:block;line-height:1.2;margin-top:22px}.volks-button{font-size:9px;display:inline-block;background:#e22f3f;padding:10px;margin-top:22px}.volks-streak,.volks-lines{position:absolute;height:64px;bottom:30px;right:10px;width:90%;background:repeating-linear-gradient(165deg,transparent,transparent 12px,rgba(242,49,66,.5) 14px,transparent 17px)}.volks-lines{background:repeating-linear-gradient(155deg,transparent,transparent 9px,rgba(121,168,195,.4) 12px,transparent 16px)}.mock-semm-back{width:71%;height:74%;right:5%;top:10%}.semm-screen{height:100%;padding:48px 25px;background:radial-gradient(ellipse at bottom right,#153c5e,#040d20 70%);color:#fff}.semm-screen small{color:#ff4951;font-size:10px;letter-spacing:.18em}.semm-screen strong{display:block;font-size:27px;margin-top:20px}.semm-freight-bars{height:70px;background:linear-gradient(0deg,#852131,#7a1e2c) left bottom/27% 64% no-repeat,linear-gradient(0deg,#ba223c,#a62035) 40% bottom/27% 88% no-repeat,linear-gradient(0deg,#e14751,#bb2b42) 85% bottom/29% 100% no-repeat;margin-top:20px}.semm-chip{font-size:9px;letter-spacing:.25em}.semm-phone{position:absolute;left:10%;bottom:4%;width:180px;height:340px;border:8px solid #111825;border-radius:20px;background:#fafafa;box-shadow:0 10px 30px #03050e4b;display:flex;flex-direction:column;align-items:center;padding:20px 10px 9px;overflow:hidden}.phone-notch{height:8px;width:60px;background:#151b29;border-radius:0 0 8px 8px;position:absolute;top:0}.phone-brand{font:bold 21px Arial;color:#c71732;letter-spacing:.12em}.phone-banner{width:100%;background:#091830;color:white;text-align:center;font-size:10px;line-height:1.6;padding:15px 5px;margin:15px 0 0}.phone-avatar{display:grid;place-items:center;border:2px solid #b91b34;width:45px;height:45px;border-radius:50%;background:#eff3f8;margin:-16px 0 10px;z-index:1;font-size:15px;font-weight:700;color:#09203b}.semm-phone strong{font-size:12px}.semm-phone small{font-size:7px;letter-spacing:.08em}.phone-contact-row{background:#f2f4f7;border-radius:5px;font-size:8px;width:100%;padding:8px;margin:8px 0 0}.phone-cta{background:#bd1d36;color:white;font-size:8px;margin-top:11px;padding:9px;border-radius:3px;width:100%;text-align:center}.more-link{margin:0 0 25px}
.other-work{padding:50px 0 95px}.other-head{display:flex;align-items:center;justify-content:space-between;padding:0 80px;margin-bottom:27px}.other-head h2{font-size:23px;font-weight:500;letter-spacing:.12em;margin:0}.carousel-controls,.quote-controls{display:flex;align-items:center;gap:9px}.carousel-controls button,.quote-controls button{width:43px;height:43px;display:grid;place-items:center;border:1px solid #b4aaa1;border-radius:50%;color:inherit;background:transparent;transition:background .2s ease}.carousel-controls button:hover{background:#e4d7c9}.other-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:3px 80px 16px;scrollbar-width:none}.other-track::-webkit-scrollbar,.quote-track::-webkit-scrollbar{display:none}.mini-project{flex:0 0 240px;scroll-snap-align:start}.mini-image{height:200px;background:#eae4db;display:grid;place-items:center;position:relative;overflow:hidden}.mini-image img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;z-index:1}.mini-fallback{text-align:center;font-size:25px;letter-spacing:.16em;line-height:1.3;font-weight:500}.mini-brc{background:#e8d9d5;color:#532e38}.mini-aye{background:#24415c;color:white}.mini-aye .mini-fallback{font-size:19px}.mini-made{background:#e7eada;color:#547255}.mini-amara{background:#e4ddd1;color:#484039;font-family:Georgia,serif;text-align:center;font-size:29px;letter-spacing:.05em}.mini-amara i{font-size:19px;letter-spacing:.04em}.mini-hennae{background:#e9d9bb;color:#99674a;font:25px Georgia,serif;text-align:center;letter-spacing:.12em}.mini-hennae i{font-size:19px;letter-spacing:.01em}.mini-aq{background:#072331;color:#fff;font:50px Georgia,serif}.mini-project h3{text-align:center;font-size:15px;font-weight:500;margin:17px 0 0}
.testimonials{background:var(--espresso);color:white;margin:0 60px;border-radius:24px;overflow:hidden}.testimonials-inner{padding:75px 67px 76px}.testimonials-header{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-bottom:34px}.testimonials-header .eyebrow{flex-basis:100%;margin:0}.testimonials h2{font-weight:500;letter-spacing:.16em;font-size:30px;margin:0}.quote-controls{margin-left:auto;color:#dfc1b5}.quote-controls button{border-color:#816c61}.quote-controls button:hover{background:#44352d}.quote-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0}.quote-item{flex:0 0 33.333%;padding:17px 34px 15px 0;margin:0 0 0 28px;border-right:1px solid #65564c;display:flex;flex-direction:column;scroll-snap-align:start}.quote-item:first-child{margin-left:0}.quote-item p{font-size:16px;line-height:1.68;flex:1;margin:0 0 30px;color:#ede3dd}.quote-item footer{font-size:12px;line-height:1.5;color:#dbbeb2}
.contact{text-align:center;padding-top:142px;padding-bottom:140px}.contact .section-title{margin-bottom:28px}.contact-lead{font-size:23px;line-height:1.5;margin:0}.contact-links{display:flex;justify-content:center;gap:85px;margin:78px 0 63px;font-size:18px}.contact-links a:hover,.contact-book:hover{text-decoration:underline;text-underline-offset:6px}.contact-book{font-size:20px;font-weight:500}.contact-book span{margin-left:5px;display:inline-block;transition:transform .25s}.contact-book:hover span{transform:translateX(5px)}
.footer{padding:0 60px 27px}.footer-panel{min-height:495px;border-radius:25px;color:white;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:45px 120px;gap:80px;box-shadow:0 7px 18px #180d0818}.footer-brand{text-align:center;max-width:390px}.footer-brand img{width:300px;margin:0 auto 18px}.footer-brand p{font-size:15px;letter-spacing:.18em;margin:0 0 8px}.footer-brand small{font-size:11px;letter-spacing:.18em}.footer-nav{display:flex;flex-direction:column;gap:26px;font-size:22px;letter-spacing:.1em}.footer-nav a{width:max-content;transition:color .25s}.footer-nav a:hover{color:var(--blush)}.copyright{font-size:11px;letter-spacing:.01em;text-align:center;margin:25px 0 0;color:#786e68}.copyright span{margin-left:15px}
.detail-dialog{border:none;padding:0;max-width:min(590px,calc(100% - 36px));width:100%;background:var(--cream-light);color:var(--ink);border-radius:20px;box-shadow:0 26px 80px #07040466}.detail-dialog::backdrop{background:#120d0bc2;backdrop-filter:blur(4px)}.dialog-content{position:relative;padding:53px 50px 48px}.dialog-close{position:absolute;right:26px;top:18px;border:none;background:none;font-size:33px;color:var(--ink)}.dialog-kicker{font-size:12px;letter-spacing:.18em;color:#977a70}.dialog-content h2{font:500 38px/1.2 var(--serif);margin:18px 0}.dialog-description{font-size:17px;line-height:1.6}.dialog-content h3{font-size:12px;letter-spacing:.14em;margin-top:30px}.dialog-content ul{padding-left:20px;line-height:1.8;font-size:15px;margin-bottom:34px}.dialog-contact{display:inline-flex;padding:15px 21px;border-radius:30px;background:var(--espresso);color:white;font-size:13px;letter-spacing:.04em}.dialog-contact:hover{background:#5a4038}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}[data-reveal].is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}[data-reveal]{opacity:1;transform:none}}
@media(max-width:1200px){.nav-shell{min-height:103px;width:min(960px,100%)}.hero h1{font-size:35px}.services-inner{padding:75px 54px}.service-card{padding:24px}.project{gap:35px}.project-copy p{font-size:16px}.footer-panel{padding:45px 65px}.footer-brand img{width:260px}}
@media(max-width:900px){.hero{margin:64px 30px 0;height:590px}.nav-shell{grid-template-columns:85px 95px 1fr 154px;padding:10px 28px;min-height:95px}.brand-header img{width:195px}.nav-item{font-size:14px}.hero h1{font-size:26px;letter-spacing:.08em}.section-pad{padding-left:45px;padding-right:45px}.about{padding-top:100px;padding-bottom:100px}.about-prose{font-size:18px}.services{margin:0 30px}.services-inner{padding:65px 38px 55px}.services-title{font-size:49px}.services-intro{margin-bottom:45px}.services-grid{gap:15px}.service-card{min-height:270px;padding:21px}.service-card-top{gap:15px}.service-kicker{font-size:10px}.service-name{font-size:25px}.service-desc{font-size:14px}.service-bottom{font-size:9px}.services-footer{flex-direction:column;align-items:flex-start;margin-top:35px}.portfolio{padding-top:110px}.project{gap:24px;margin-bottom:80px}.project-art{height:385px}.project-copy h3{font-size:31px}.project-copy p{font-size:14px}.mock-window{height:69%}.semm-phone{transform:scale(.83);transform-origin:bottom left}.other-head{padding:0 45px}.other-track{padding-left:45px;padding-right:45px}.testimonials{margin:0 30px}.testimonials-inner{padding:63px 40px}.quote-item{flex-basis:47%}.contact{padding-top:110px;padding-bottom:110px}.contact-links{gap:25px}.footer{padding-left:30px;padding-right:30px}.footer-panel{min-height:390px}.footer-brand img{width:210px}.footer-nav{font-size:19px}}
@media(max-width:650px){html{scroll-padding-top:65px}.site-header{padding:0 18px}.nav-shell{width:100%;min-height:78px;border-radius:0 0 20px 20px;display:flex;justify-content:space-between;gap:10px;padding:7px 23px}.nav-shell .nav-item{display:none}.brand-header{margin:0;position:static;justify-self:start}.brand-header img{width:170px;height:62px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:none;padding:11px;background:transparent}.menu-toggle span{height:2px;width:25px;background:#332722;border-radius:2px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;pointer-events:auto;position:absolute;z-index:60;left:18px;right:18px;top:77px;background:var(--cream-light);padding:13px 25px 22px;box-shadow:0 22px 30px #170e0a33;border-radius:0 0 18px 18px;flex-direction:column}.mobile-nav a{padding:12px 3px;border-top:1px solid #e9e0d7;font-size:16px}.hero{margin:54px 17px 0;min-height:570px;height:calc(84svh - 30px);max-height:740px;border-radius:20px}.hero-inner{padding:0 19px;transform:translateY(18px)}.hero-topline{display:none}.hero h1{font-size:clamp(23px,6.3vw,34px);line-height:1.4;white-space:normal;letter-spacing:.10em}.hero-subtitle{font-size:10px;letter-spacing:.1em;margin:19px 0 40px}.hero-cta{font-size:14px}.hero-bottomline{left:18px;right:18px;bottom:24px;font-size:8px}.section-pad{padding-left:25px;padding-right:25px}.about{padding-top:85px;padding-bottom:88px}.eyebrow{font-size:10px;letter-spacing:.2em}.section-title{font-size:26px;letter-spacing:.12em}.about-title{font-size:24px;line-height:1.5}.about-prose{margin-top:33px;font-size:16px;line-height:1.7}.about-prose p{margin-bottom:21px}.services{margin:0 17px;border-radius:19px}.services-inner{padding:51px 21px 42px}.services-title{font-size:clamp(34px,8.2vw,48px);line-height:1.22}.services-intro{font-size:15px;line-height:1.6;margin:20px 0 36px}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:234px;padding:22px 23px 20px}.service-card-top{margin-bottom:22px}.service-name{font-size:25px}.service-desc{font-size:15px}.service-bottom{font-size:10px}.services-footer{margin-top:31px;gap:22px}.services-footer p{font-size:15px}.pill-cta{font-size:10px;width:100%;text-align:center;padding:18px 10px}.portfolio{padding-top:85px}.section-intro .section-title{margin-bottom:21px}.section-intro>p:last-child{font-size:16px}.featured-work{margin-top:55px}.project,.project.project-two{display:flex;flex-direction:column;gap:30px;align-items:stretch;margin-bottom:65px}.project .project-art{order:0}.project .project-copy{order:1}.project-art{height:315px}.mock-window{width:63%;height:73%}.mock-black,.mock-red{padding:28px 15px}.mock-red strong,.mock-black strong,.volks-screen strong,.semm-screen strong{font-size:19px}.mock-toolbar{height:18px}.volks-screen,.semm-screen{padding:35px 17px}.semm-phone{transform:scale(.72)}.project-small{font-size:10px}.project-copy h3{font-size:29px;margin:12px 0 17px}.project-copy p{font-size:15px;line-height:1.65}.more-link{margin-bottom:0}.other-work{padding:35px 0 75px}.other-head{padding:0 25px}.other-head h2{font-size:18px}.carousel-controls button{width:35px;height:35px}.other-track{padding-left:25px;padding-right:25px;gap:14px}.mini-project{flex-basis:210px}.mini-image{height:172px}.testimonials{margin:0 17px;border-radius:19px}.testimonials-inner{padding:51px 24px}.testimonials h2{font-size:23px}.quote-controls button{width:37px;height:37px}.quote-item{flex-basis:83%;margin-left:18px;padding-right:21px}.quote-item p{font-size:14px}.contact{padding-top:90px;padding-bottom:94px}.contact-lead{font-size:17px}.desktop-break{display:none}.contact-links{flex-direction:column;gap:17px;margin:49px 0 42px;font-size:15px}.contact-book{font-size:17px}.footer{padding-left:17px;padding-right:17px}.footer-panel{min-height:570px;display:flex;flex-direction:column;justify-content:space-around;align-items:center;padding:49px 15px;gap:36px}.footer-brand img{width:226px}.footer-brand p{font-size:10px}.footer-brand small{font-size:9px}.footer-nav{align-items:center;gap:16px;font-size:17px}.copyright{font-size:8px;line-height:1.6;padding:0 10px;margin-top:18px}.copyright span{display:block;margin:4px 0 0}.dialog-content{padding:49px 25px 35px}.dialog-content h2{font-size:29px}}
@media(max-width:360px){.hero h1{font-size:22px}.service-name{font-size:22px}.services-inner{padding-left:17px;padding-right:17px}.project-art{height:265px}.semm-phone{transform:scale(.58)}}


/* ────────────────────────────────────────────────────────────────────────────
   October 2026 refinements — original Figma hero/navigation + project links
   Match the site's cream to the navigation (screenshot sample: #f2efe7).
   The client's supplied PNG/SVG filenames are used directly, without redrawing.
   ──────────────────────────────────────────────────────────────────────────── */
:root { --cream: #f3efe6; --cream-light: #f3efe6; }
.site-header { padding:0 30px; }
.nav-shell {
  background:var(--cream);
  border-radius:0 0 27px 27px;
  width:min(1087px,calc(100% - 140px));
  height:141px;
  min-height:141px;
  padding:10px 78px 16px 90px;
  grid-template-columns:95px 132px minmax(250px,1fr) 226px;
  gap:32px;
  box-shadow:none;
}
.nav-item {font-size:clamp(17px,1.86vw,30px);font-weight:400;letter-spacing:-.025em;color:#554638;}
.nav-consult {text-align:left;font-size:clamp(17px,1.75vw,28px);}
.nav-consult span {display:inline-block;font-size:1.05em;transition:transform .2s ease;}
.nav-consult:hover span {transform:translateX(5px);}
.brand-header img {width:329px;max-height:90px;height:auto;object-fit:contain;}
.hero {margin:81px 60px 0;height:650px;border-radius:28px;}
.hero-inner {transform:translateY(12px);}
.hero h1 {letter-spacing:.145em;}
.hero-subtitle {margin:28px 0 30px;}
/* The supplied original backgrounds are placed above the generated fallback texture. */
.hero.nocturne-surface {
  background-image:url('assets/optimized/Hero-bg.webp'), url('assets/nocturne-texture.svg');
  background-size:cover,cover;
  background-position:center,center;
}
.footer-panel.nocturne-surface {
  background-image:url('assets/optimized/Footer-bg.webp'),url('assets/nocturne-texture.svg');
  background-size:cover,cover;
  background-position:center,center;
}
.nocturne-surface::before {background:none;}
/* The original Figma project art takes priority once added to /assets. */
.project-real-image {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:5;}
.project-real-image[hidden],.mini-image img[hidden]{display:none!important;}
.project-art:has(>.project-real-image:not([hidden])) {background:transparent;}
/* Avoid 'card' popups; portfolio call-to-actions are actual hyperlinks. */
.mini-project-link {display:inline-flex;align-items:center;gap:7px;margin:12px auto 0;font-size:13px;letter-spacing:.01em;text-decoration:underline;text-underline-offset:4px;}
.mini-project-link span {transition:transform .2s ease;}
.mini-project-link:hover span {transform:translate(3px,-3px);}
.mini-project {text-align:center;}
.mini-no-link {display:inline-block;margin-top:12px;font-size:12px;color:#8a8076;}
.mini-image {position:relative;}
.mini-image img:not([hidden]) {z-index:2;position:relative;width:100%;height:100%;object-fit:contain;}
.mini-image img:not([hidden]) + .mini-fallback {display:none;}
.mini-fallback {display:grid;place-items:center;text-align:center;position:absolute;inset:0;font-family:var(--serif);font-size:21px;line-height:1.2;}
@media(max-width:1200px){
  .nav-shell {width:min(1030px,calc(100% - 60px));padding:10px 50px 16px;grid-template-columns:85px 113px minmax(205px,1fr) 185px;gap:25px;height:120px;min-height:120px;}
  .brand-header img{width:255px;max-height:85px;}
  .nav-item{font-size:20px}.nav-consult{font-size:19px}
  .hero {margin:70px 60px 0;}
}
@media(max-width:900px){
  .nav-shell {width:calc(100% - 30px);height:98px;min-height:98px;padding:8px 27px 12px;grid-template-columns:65px 95px minmax(155px,1fr) 165px;gap:14px;}
  .brand-header img{width:205px;max-height:72px}.nav-item,.nav-consult{font-size:16px}
  .hero{margin:64px 30px 0;height:590px}
}
@media(max-width:650px){
  .site-header{padding:0 17px;}
  .nav-shell{width:100%;height:82px;min-height:82px;border-radius:0 0 19px 19px;display:flex;justify-content:space-between;gap:10px;padding:7px 19px;}
  .brand-header img{width:179px;max-height:68px}
  .hero{margin:53px 17px 0;min-height:570px;height:calc(84svh - 30px);max-height:740px;border-radius:20px}
  .hero-inner{transform:translateY(7px)}
  .hero-subtitle{margin:19px 0 30px}
  .mobile-nav:not([hidden]) {left:17px;right:17px;top:80px;background:var(--cream);}
}
/* At typical laptop widths keep the original Figma inset: navigation ~76% of page width. */
@media (min-width:901px) and (max-width:1200px) {
  .nav-shell {
    width:75.5%;
    height:clamp(100px,9.8vw,118px);
    min-height:clamp(100px,9.8vw,118px);
    grid-template-columns:84px 119px minmax(270px,1fr) 185px;
    gap:20px;
    padding:9px 62px 14px 72px;
  }
  .brand-header {justify-self:start;}
  .brand-header img {width:265px;}
  .nav-item {font-size:clamp(18px,2.15vw,24px)}
  .nav-consult {font-size:clamp(18px,2.15vw,24px)}
}
@media (min-width:901px) and (max-width:1080px) {
  .nav-shell {width:91%;padding-left:45px;padding-right:40px;grid-template-columns:72px 105px minmax(230px,1fr) 160px;gap:14px;}
  .brand-header img{width:226px}
  .nav-item,.nav-consult{font-size:19px}
}

/* The actual brand artwork is bundled locally, no temporary Figma images or generated mockups. */
.project-art {background:transparent;}
.project-real-image {object-fit:contain;}
.mini-image {background:transparent;}
.mini-image img {object-fit:contain;}
/* Keep the original brand's navigation-tab colour identical to page background. */
.nav-shell,.mobile-nav:not([hidden]) {background:var(--cream);}
@media (min-width:901px) and (max-width:1080px){
 .nav-shell{width:min(1087px,calc(100% - 80px));grid-template-columns:minmax(55px,1fr) minmax(70px,1fr) minmax(190px,2.6fr) minmax(145px,1.4fr);padding:10px 34px;gap:10px;}
 .brand-header img {width:100%;min-width:175px;}
 .nav-consult{white-space:nowrap;}
}

/* Add an outer inset so the carousel stays away from the page edge when scrolled. */
.other-work {padding-left:60px;}
.other-head,
.other-track {padding-left:60px;}
@media (max-width:650px) {
  .other-work {padding-left:20px;}
  .other-head,
  .other-track {padding-left:20px;}
}
