*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:#070707;color:#ece8e1;font-family:Barlow,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}*::selection{background:#fff;color:#070707}:root{--font-display: "Cormorant Garamond", serif;--accent: #ffffff;--bg: #070707;--bg-alt: #0b0a09;--surface-hover: #100e0b;--text: #ece8e1;--text-muted: #bcb5a9;--text-dim: #9b958b;--heading: #f3efe8}.eyebrow{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.34em;font-size:12px;color:var(--accent);margin-bottom:18px}.section-title{font-family:var(--font-display);font-weight:400;margin:0;line-height:.96;color:var(--heading);font-size:clamp(40px,7vw,92px)}.btn-primary{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:13.5px;font-weight:500;color:#070707;background:var(--accent);padding:16px 34px;text-decoration:none;display:inline-block;transition:transform .25s ease,box-shadow .25s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ffffff40}.btn-outline{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:13.5px;font-weight:500;color:#ece8e1;border:1px solid rgba(255,255,255,.3);padding:16px 34px;text-decoration:none;display:inline-block;transition:border-color .25s ease,background .25s ease}.btn-outline:hover{border-color:#ece8e1;background:#ffffff0a}.nav-link-item{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:400;color:#9b958b;text-decoration:none;transition:color .2s ease}.nav-link-item:hover{color:#ece8e1}.nav-cta{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:500;color:var(--accent);text-decoration:none;border:1px solid var(--accent);padding:9px 18px;transition:background .25s ease,color .25s ease}.nav-cta:hover{background:var(--accent);color:#070707}.card-surface{background:var(--bg-alt);transition:background .4s ease}.card-surface:hover{background:var(--surface-hover)}.style-card{padding:clamp(34px,4vw,56px)}.contact-card{display:block;padding:clamp(26px,3vw,38px) 18px;text-decoration:none}.portfolio-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:clamp(40px,5vw,68px)}.portfolio-categories{display:flex;gap:10px;flex-wrap:wrap}.portfolio-category{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:11.5px;font-weight:400;color:var(--text-dim);border:1px solid rgba(255,255,255,.12);padding:7px 14px}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.4vw,22px);align-items:start;overflow:visible}.portfolio-mobile{display:none}.portfolio-tile{position:relative;z-index:1}.portfolio-tile-inner{position:relative;display:block;width:100%;padding:0;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;aspect-ratio:9/16;overflow:hidden;background:repeating-linear-gradient(135deg,#16140f,#16140f 9px,#100e0b 9px,#100e0b 19px);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s cubic-bezier(.2,.7,.2,1);transform:scale(1);transform-origin:center center;will-change:transform;color:inherit}.portfolio-tile-inner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;border:1px solid rgba(255,255,255,.06);pointer-events:none;transition:border-color .45s ease}.portfolio-tile-open{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;margin:0;padding:0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:zoom-in}.portfolio-tile-media{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.portfolio-tile-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(80% 70% at 50% 30%,rgba(255,255,255,.05),transparent 60%),linear-gradient(to top,rgba(0,0,0,.55),transparent 55%);transition:opacity .45s ease;pointer-events:none}.portfolio-tile-ig{position:absolute;left:0;right:0;bottom:0;z-index:4;display:flex;align-items:center;justify-content:center;gap:8px;padding:34px 14px 15px;color:#f3efe8;text-decoration:none;background:linear-gradient(to top,#070707d1,#07070700);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-mask-image:linear-gradient(to top,#000 58%,transparent);mask-image:linear-gradient(to top,#000 58%,transparent);opacity:0;transform:translateY(10px);transition:opacity .55s ease,transform .55s ease,color .25s ease;pointer-events:none}.portfolio-tile-ig--visible{opacity:1;transform:translateY(0);pointer-events:auto;cursor:pointer}.portfolio-tile-ig:hover,.portfolio-tile-ig:focus-visible{color:#fff}.portfolio-tile-ig:focus-visible{outline:1px solid rgba(255,255,255,.6);outline-offset:-3px}.portfolio-tile-ig-icon{display:block;flex-shrink:0}.portfolio-tile-ig-text{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:500;line-height:1}@media (prefers-reduced-motion: reduce){.portfolio-tile-ig{transition:opacity .2s ease;transform:none}}@media (hover: hover){.portfolio-tile:hover{z-index:20}.portfolio-tile:hover .portfolio-tile-inner{transform:scale(1.1);box-shadow:0 28px 70px #000000b8,0 0 0 1px #ffffff1a}.portfolio-tile:hover .portfolio-tile-inner:after{border-color:#ffffff2e}.portfolio-tile:hover .portfolio-tile-media{transform:scale(1.04)}.portfolio-tile:hover .portfolio-tile-vignette{opacity:.35}.portfolio-grid--desktop .portfolio-tile:hover .portfolio-tile-ig,.portfolio-grid--desktop .portfolio-tile:focus-within .portfolio-tile-ig{opacity:1;transform:translateY(0);pointer-events:auto}}.portfolio-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:clamp(20px,4vw,48px)}.portfolio-lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0707079e;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);animation:portfolio-lightbox-fade .35s ease}.portfolio-lightbox-content{position:relative;z-index:1;width:min(420px,92vw);aspect-ratio:9/16;animation:portfolio-lightbox-pop .4s cubic-bezier(.2,.7,.2,1);overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 32px 90px #000000d9;background:#070707}.media-loader{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;pointer-events:none}.media-loader-spinner{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.22);border-top-color:#ffffffe6;animation:media-loader-spin .8s linear infinite}@keyframes media-loader-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.media-loader-spinner{animation-duration:1.6s}}.portfolio-player{position:relative;width:100%;height:100%}.portfolio-player-video{width:100%;height:100%;object-fit:cover;display:block;background:#070707;cursor:pointer}.portfolio-player-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(7,7,7,.92) 0%,rgba(7,7,7,.35) 22%,transparent 45%);pointer-events:none}.portfolio-player-controls{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:center;gap:10px;padding:16px;min-height:34px}.portfolio-player-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;margin:0;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:#0707078c;color:#ece8e1;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .25s ease,border-color .25s ease,transform .25s ease}.portfolio-player-btn:hover{background:#ffffff14;border-color:#ffffff52;transform:translateY(-1px)}.portfolio-player-progress-wrap,.portfolio-player-volume-wrap{display:flex;align-items:center;height:34px}.portfolio-player-progress-wrap{flex:1;min-width:0}.portfolio-player-volume-wrap{width:68px;flex-shrink:0}.portfolio-player-progress,.portfolio-player-volume{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:4px;margin:0;padding:0;border:none;border-radius:999px;background:#ffffff24;cursor:pointer;vertical-align:middle}.portfolio-player-volume{width:100%;flex-shrink:0}.portfolio-player-progress::-webkit-slider-runnable-track,.portfolio-player-volume::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#ffffff24}.portfolio-player-progress::-moz-range-track,.portfolio-player-volume::-moz-range-track{height:4px;border-radius:999px;background:#ffffff24;border:none}.portfolio-player-progress::-webkit-slider-thumb,.portfolio-player-volume::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:-4px;border-radius:50%;background:var(--accent);border:2px solid #070707;box-shadow:0 0 10px #ffffff40}.portfolio-player-progress::-moz-range-thumb,.portfolio-player-volume::-moz-range-thumb{width:12px;height:12px;border:2px solid #070707;border-radius:50%;background:var(--accent);box-shadow:0 0 10px #ffffff40}.portfolio-player-time{flex-shrink:0;display:flex;align-items:center;height:34px;font-family:Oswald,sans-serif;font-size:10px;line-height:1;letter-spacing:.12em;text-transform:uppercase;color:#ece8e1b8;min-width:72px;text-align:right}.portfolio-lightbox-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:#070707b8;color:#ece8e1;font-size:22px;line-height:1;cursor:pointer;transition:background .25s ease,border-color .25s ease}.portfolio-lightbox-close:hover{background:#ffffff14;border-color:#ffffff59}@keyframes portfolio-lightbox-fade{0%{opacity:0}to{opacity:1}}@keyframes portfolio-lightbox-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.portfolio-tile-inner,.portfolio-tile-media,.portfolio-tile-vignette,.portfolio-lightbox-backdrop,.portfolio-lightbox-content{transition:none;animation:none}.portfolio-tile:hover .portfolio-tile-inner,.portfolio-tile:hover .portfolio-tile-media{transform:none}}.scroll-indicator{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;z-index:2;text-decoration:none;cursor:pointer;transition:opacity .25s ease}.scroll-indicator:hover{opacity:.85}.scroll-indicator:focus-visible{outline:1px solid rgba(255,255,255,.5);outline-offset:6px}.scroll-indicator-label{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.3em;font-size:10px;color:#ece8e173;animation:scroll-indicator-label 2.4s ease-in-out infinite}.scroll-indicator-track{position:relative;width:1px;height:46px;background:linear-gradient(to bottom,rgba(255,255,255,.55),rgba(255,255,255,.08) 70%,transparent);overflow:hidden}.scroll-indicator-dot{position:absolute;top:0;left:50%;width:3px;height:10px;margin-left:-1.5px;border-radius:999px;background:var(--accent);box-shadow:0 0 8px #ffffff59;animation:scroll-indicator-dot 2s cubic-bezier(.45,0,.25,1) infinite}@keyframes scroll-indicator-dot{0%{transform:translateY(0);opacity:0}15%{opacity:1}75%{transform:translateY(36px);opacity:0}to{transform:translateY(36px);opacity:0}}@keyframes scroll-indicator-label{0%,to{opacity:.45}50%{opacity:.75}}@media (prefers-reduced-motion: reduce){.scroll-indicator-label,.scroll-indicator-dot{animation:none}}@media (max-width: 900px){.about-grid,.styles-grid,.location-grid{grid-template-columns:1fr!important}.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 620px){.nav-links{flex-wrap:wrap;gap:10px 12px!important;row-gap:10px}.nav-link-item{font-size:10px;letter-spacing:.1em}.nav-cta{font-size:10px;padding:7px 12px}.contact-grid{grid-template-columns:1fr!important}.portfolio-head{flex-direction:column!important;align-items:center!important;text-align:center}.portfolio-head>div[data-delay]{justify-content:center}.about-grid,.location-info{text-align:center}.about-grid p,.location-info p{margin-left:auto!important;margin-right:auto!important}.about-stats,.location-actions{justify-content:center}.location-address{justify-content:center;text-align:left}.styles-grid,.process-head,.process-timeline{text-align:center}.style-card-head,.process-step-head{justify-content:center}.style-card-desc,.process-step-desc{margin-left:auto!important;margin-right:auto!important}.process-timeline{padding-left:0!important}.process-timeline-line,.process-timeline-dot,.portfolio-grid--desktop{display:none}.portfolio-mobile{display:flex;flex-direction:column;gap:clamp(40px,9vw,64px)}.portfolio-row{display:flex;align-items:center;gap:0;overflow-x:auto;overflow-y:clip;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x pan-y;overscroll-behavior-x:contain;padding:18px calc((100% - min(62vw,250px))/2);scroll-padding-inline:calc((100% - min(62vw,250px))/2)}.portfolio-row:before,.portfolio-row:after{content:"";flex:0 0 1px}.portfolio-row::-webkit-scrollbar{display:none}.portfolio-row .portfolio-tile{flex:0 0 min(62vw,250px);margin-inline:-16px;scroll-snap-align:center;scroll-snap-stop:always;z-index:1}.portfolio-row .portfolio-tile-inner{transition:transform .4s cubic-bezier(.2,.7,.2,1),opacity .4s ease,box-shadow .4s ease,border-color .4s ease}.portfolio-row .portfolio-tile--active{z-index:5}.portfolio-row .portfolio-tile--active .portfolio-tile-inner{transform:scale(1.06);box-shadow:0 22px 55px #000000ad}.portfolio-row .portfolio-tile--active .portfolio-tile-inner:after{border-color:#ffffff2e}.portfolio-row .portfolio-tile:not(.portfolio-tile--active) .portfolio-tile-inner{transform:scale(.78);opacity:.45}.portfolio-row .portfolio-tile--active+.portfolio-tile .portfolio-tile-inner,.portfolio-row .portfolio-tile:has(+.portfolio-tile--active) .portfolio-tile-inner{transform:scale(.84);opacity:.7}.portfolio-row .portfolio-tile--active+.portfolio-tile,.portfolio-row .portfolio-tile:has(+.portfolio-tile--active){z-index:2}.portfolio-row .portfolio-tile--active .portfolio-tile-vignette{opacity:.35}.portfolio-row .portfolio-tile-inner{cursor:default}.contact-title{font-size:38px!important;line-height:1.04!important}.site-footer{flex-direction:column!important;justify-content:center!important;text-align:center!important}.footer-credit{order:1}}.footer-social{display:inline-flex;align-items:center;justify-content:center;color:#ece8e1;transition:color .25s ease,transform .25s ease}.footer-social:hover{color:var(--accent);transform:translateY(-1px)}
