*{box-sizing:border-box;margin:0;padding:0}:root{--ink: #151517;--paper: #f2f0eb;--white: #fbfaf7;--blue: #2459ff;--lime: #d8f45b;--muted: #6f7075;--line: rgba(21, 21, 23, .16);--serif: "Instrument Serif", Georgia, serif;--sans: "Space Grotesk", "Trebuchet MS", sans-serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--paper);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.site{overflow:hidden}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1)}.reveal--left{transform:translate(-34px)}.reveal--right{transform:translate(34px)}.reveal.is-visible{opacity:1;transform:none}.service-card:nth-child(2),.gallery-item:nth-child(2){transition-delay:.08s}.service-card:nth-child(3),.gallery-item:nth-child(3){transition-delay:.16s}.service-card:nth-child(4),.gallery-item:nth-child(4){transition-delay:.24s}.nav{position:fixed;z-index:50;inset:0 0 auto;height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;transition:.35s ease}.nav--scrolled{height:70px;background:#f2f0ebe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 8px 30px #15151714}.brand{display:inline-flex;flex-direction:column;line-height:.9;position:relative;z-index:2}.brand-main{font-family:var(--sans);font-size:25px;font-weight:700;letter-spacing:.19em}.brand-sub{margin-top:6px;color:var(--blue);font-size:9px;font-weight:600;letter-spacing:.04em;text-align:right}.nav-links{display:flex;align-items:center;gap:30px;text-transform:uppercase;font-size:10px;font-weight:600;letter-spacing:.13em}.nav-links a{position:relative;transition:color .25s ease}.nav-links a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--blue);transition:width .25s ease}.nav-links a:hover{color:var(--blue)}.nav-links a:hover:after{width:100%}.menu-button{display:none;color:var(--ink);background:none;border:0;cursor:pointer}.hero{min-height:100vh;position:relative;display:flex;align-items:center;background:var(--paper);isolation:isolate}.hero:before{content:"SAVIORE";position:absolute;z-index:-1;right:-8vw;top:18%;color:transparent;-webkit-text-stroke:1px rgba(36,89,255,.22);font-size:clamp(150px,25vw,390px);font-weight:700;letter-spacing:-.09em;line-height:.8;transform:rotate(-10deg);pointer-events:none}.hero:after{content:"";position:absolute;z-index:-1;right:9vw;bottom:10%;width:23vw;max-width:310px;aspect-ratio:1;background:var(--lime);border-radius:50%;opacity:.8}.hero-overlay{position:absolute;right:9vw;top:15%;width:min(32vw,470px);height:70%;background:url(/images/welcome-mirror.webp) center/cover;mix-blend-mode:multiply;opacity:.78;filter:saturate(.7);clip-path:polygon(13% 0,100% 7%,86% 100%,0 92%);z-index:-1;animation:hero-image 1.2s .15s both cubic-bezier(.2,.8,.2,1)}@keyframes hero-image{0%{opacity:0;transform:translate(35px) rotate(3deg)}to{opacity:.78;transform:none}}.hero-content{width:min(740px,88%);margin-left:9vw;padding-top:55px;animation:hero-arrival .9s both cubic-bezier(.2,.8,.2,1)}@keyframes hero-arrival{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.eyebrow,.section-kicker{color:var(--blue);text-transform:uppercase;letter-spacing:.2em;font-size:10px;font-weight:700}.eyebrow{display:flex;align-items:center;gap:11px;margin-bottom:23px}.eyebrow span{width:30px;height:2px;background:var(--blue)}.hero h1{max-width:800px;font-size:clamp(61px,9vw,132px);line-height:.79;letter-spacing:-.07em;font-weight:700;text-transform:uppercase}.hero h1 em,h2 em{color:var(--blue);font-family:var(--serif);font-weight:400;letter-spacing:-.04em}.hero p{max-width:475px;margin:34px 0 27px;color:var(--muted);font-size:13px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700;transition:transform .25s ease,background .25s ease,color .25s ease}.button--gold{background:var(--blue);border-color:var(--blue);color:#fff}.button--gold:hover{background:var(--ink);border-color:var(--ink);transform:translateY(-3px)}.button--large{padding:17px 28px}.text-link{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.1em;border-bottom:1px solid var(--ink);padding-bottom:4px}.text-link span{color:var(--blue);margin-left:7px}.hero-scroll{position:absolute;bottom:30px;left:9vw;color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.2em;display:flex;align-items:center;gap:10px}.hero-scroll span{width:42px;height:2px;background:var(--blue);animation:scroll-line 1.8s ease-in-out infinite;transform-origin:left}@keyframes scroll-line{0%,to{transform:scaleX(.35);opacity:.35}50%{transform:scaleX(1);opacity:1}}.section{padding:130px 8vw}.about{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(400px,1.15fr);gap:9vw;align-items:center;background:var(--white)}.about-image{position:relative;padding:0 18px 18px 0}.about-image img{width:100%;height:600px;display:block;object-fit:cover;filter:saturate(.7);transition:filter .6s ease,transform .6s ease}.about-image:hover img{filter:saturate(1);transform:translate(6px,-6px)}.image-frame{position:absolute;top:18px;right:0;bottom:0;left:18px;border:1px solid var(--blue);pointer-events:none}.image-caption{position:absolute;left:25px;bottom:0;padding:9px 14px;background:var(--lime);font-family:var(--serif);font-size:16px}.about-copy h2,.section-heading h2,.event-copy h2,.contact-section h2{margin:15px 0 25px;font-size:clamp(46px,5.8vw,82px);line-height:.86;letter-spacing:-.06em;font-weight:700}.about-copy p,.event-copy p{max-width:660px;color:var(--muted);font-size:14px;line-height:1.85}.about-copy .lead,.event-copy .lead{margin-bottom:15px;color:var(--ink);font-size:17px;line-height:1.5}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}.values div{display:flex;flex-direction:column;gap:4px;padding-top:14px;border-top:2px solid var(--ink)}.values svg{width:22px;color:var(--blue);margin-bottom:7px}.values strong{font-size:14px}.values span{color:var(--muted);font-size:9px}.services{background:var(--ink);color:var(--white)}.section-heading.centered{max-width:700px;margin:0 auto 55px;text-align:center}.section-heading.centered .section-kicker{color:var(--lime)}.section-heading.centered p{max-width:550px;margin:0 auto;color:#a8a8ab;font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}.service-card{position:relative;min-height:330px;padding:32px 28px;border-right:1px solid rgba(255,255,255,.2);transition:background .3s ease,transform .3s ease}.service-card:last-child{border-right:0}.service-card:hover{background:var(--blue);transform:translateY(-8px)}.service-number{position:absolute;top:24px;right:24px;color:var(--lime);font-size:12px;font-weight:700}.service-icon{margin-top:50px;color:var(--lime)}.service-card h3{max-width:180px;margin:23px 0 14px;font-family:var(--serif);font-size:30px;font-weight:400;line-height:.9}.service-card p{color:#aaa9ad;font-size:12px;line-height:1.7}.service-card:hover p{color:#fff}.service-line{position:absolute;bottom:27px;left:28px;width:35px;height:2px;background:var(--lime);transition:width .3s ease}.service-card:hover .service-line{width:70px}.event-section{display:grid;grid-template-columns:1.05fr .95fr;background:var(--lime)}.event-visual{position:relative;min-height:700px;overflow:hidden}.event-visual img{width:100%;height:100%;min-height:700px;display:block;object-fit:cover;filter:saturate(.8) contrast(1.05);transition:transform 1s ease}.event-visual:hover img{transform:scale(1.05)}.event-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 60%,rgba(216,244,91,.8))}.event-badge{position:absolute;z-index:2;left:40px;bottom:40px;padding:12px 15px;border:1px solid var(--ink);color:var(--ink);font-size:18px;font-weight:700;letter-spacing:.1em}.event-badge small{display:block;margin-top:3px;font-size:7px;letter-spacing:.2em}.event-copy{align-self:center;padding:100px 8vw 90px 5vw}.event-copy .section-kicker{color:var(--ink)}.event-copy ul{display:grid;gap:10px;margin:28px 0 32px;list-style:none}.event-copy li{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600}.event-copy li svg{color:var(--blue)}.event-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:520px}.event-mini-grid img{width:100%;height:150px;object-fit:cover;filter:saturate(.75)}.gallery-section{background:var(--paper)}.gallery-section .section-heading{margin-bottom:38px}.gallery-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr 1.15fr;gap:12px}.gallery-item{position:relative;min-height:280px;padding:0;overflow:hidden;border:0;background:var(--ink);cursor:pointer;text-align:left}.gallery-item--1,.gallery-item--4{min-height:380px}.gallery-item img{width:100%;height:100%;display:block;object-fit:cover;filter:grayscale(.15);transition:transform .6s ease,filter .6s ease}.gallery-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 35%,rgba(21,21,23,.9))}.gallery-item span{position:absolute;z-index:2;left:18px;right:18px;bottom:17px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.gallery-item:hover img{transform:scale(1.08);filter:grayscale(0)}.contact-section{position:relative;padding:145px 7vw;text-align:center;background:var(--blue);color:#fff}.contact-glow{width:240px;height:2px;margin:0 auto 30px;background:var(--lime)}.contact-section .section-kicker{color:var(--lime)}.contact-section h2{font-size:clamp(52px,6vw,90px)}.contact-section h2 em{color:var(--lime)}.contact-section>p{max-width:560px;margin:0 auto 30px;color:#ffffffc2;font-size:14px}.contact-section .button--gold{background:var(--lime);border-color:var(--lime);color:var(--ink)}.contact-section .button--gold:hover{background:var(--white);border-color:var(--white)}.contact-note{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:20px;color:#ffffffb3;font-size:10px}.contact-note svg{color:var(--lime)}.footer{display:grid;grid-template-columns:1fr auto auto;gap:30px;align-items:center;padding:38px 7vw;background:var(--ink);color:#fff}.footer .brand-sub{color:var(--lime)}.footer p{color:#a8a8ab;font-family:var(--serif);font-size:18px}.instagram{color:var(--lime)}.footer small{grid-column:1 / -1;color:#77777b;font-size:9px;letter-spacing:.08em}.lightbox{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:6vh 7vw;background:#151517f2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:lightbox-in .3s ease both}@keyframes lightbox-in{0%{opacity:0}to{opacity:1}}.lightbox img{max-width:90vw;max-height:80vh;object-fit:contain;box-shadow:0 20px 80px #0006}.lightbox p{margin-top:15px;color:var(--lime);font-family:var(--serif);font-size:20px}.lightbox-close{position:absolute;top:25px;right:30px;color:#fff;background:none;border:0;cursor:pointer}.floating-top{position:fixed;z-index:40;right:22px;bottom:22px;width:42px;height:42px;display:grid;place-items:center;background:var(--lime);color:var(--ink);transform:rotate(180deg);transition:transform .3s ease,background .3s ease}.floating-top:hover{background:#fff;transform:rotate(180deg) translateY(5px)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}@media (max-width: 980px){.nav-links{gap:17px}.hero-overlay{right:3vw;width:34vw}.about{grid-template-columns:1fr;gap:55px}.about-image{max-width:650px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.2)}.event-section{grid-template-columns:1fr}.event-visual,.event-visual img{min-height:570px}.event-copy{padding:80px 8vw}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item,.gallery-item--1,.gallery-item--4{min-height:330px}}@media (max-width: 720px){.nav{height:68px;padding:0 6vw}.nav--scrolled{height:60px}.nav-links{display:none;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;background:var(--lime);flex-direction:column;justify-content:center;gap:27px;font-size:13px}.nav-links--open{display:flex}.menu-button{display:block}.hero{min-height:820px;align-items:flex-start;padding-top:170px}.hero:before{right:-40vw;top:28%;font-size:170px}.hero:after{right:8vw;bottom:8%;width:130px}.hero-overlay{right:-10vw;top:38%;width:58vw;height:48%;opacity:.34}.hero-content{width:88%;margin-left:7vw;padding-top:0}.hero h1{font-size:clamp(52px,15vw,84px)}.hero p{max-width:330px;margin-top:29px;font-size:12px}.hero-scroll{left:7vw;bottom:24px}.section{padding:85px 7vw}.about-image img{height:470px}.values{grid-template-columns:1fr 1fr;gap:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px;border-right:0;border-bottom:1px solid rgba(255,255,255,.2)}.service-card:last-child{border-bottom:0}.event-visual,.event-visual img{min-height:430px}.event-copy{padding:70px 7vw}.event-mini-grid img{height:125px}.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item--1,.gallery-item--4{min-height:350px}.footer{grid-template-columns:1fr auto}.footer p{grid-column:1 / -1;order:3}}@media (max-width: 450px){.brand-main{font-size:21px}.hero-actions{align-items:flex-start;flex-direction:column}}
