@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Italiana&display=swap');
:root{--paper:#f1eee8;--paper2:#faf8f3;--ink:#242722;--soft:#686b65;--line:rgba(38,42,36,.19);--accent:#9c6d4b;--serif:'Italiana','Baskerville','Times New Roman',serif;--sans:'DM Sans','Helvetica Neue',Arial,sans-serif;--edge:clamp(22px,4.3vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font:400 14px/1.6 var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}body.is-locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin-top:0}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.skip-link{position:absolute;left:12px;top:-80px;z-index:2000;padding:12px;background:white}.skip-link:focus{top:12px}
/* brand and navigation */
.site-header{position:relative;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;height:91px;padding:0 var(--edge);background:var(--paper);border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:12px;width:max-content;max-width:100%}.brand img{width:43px;height:52px;object-fit:contain}.brand span{font-size:16px;letter-spacing:.24em;font-weight:500}
.primary-nav{display:flex;align-items:center;gap:clamp(24px,2.7vw,46px);height:100%}.primary-nav>a,.nav-trigger{font-size:12px;font-weight:500;white-space:nowrap;letter-spacing:.015em;transition:opacity .2s}.primary-nav>a:hover,.nav-trigger:hover{opacity:.5}.nav-trigger{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:8px;height:100%;color:inherit}.chevron{font-size:14px;line-height:1;transform:translateY(-1px)}
.nav-projects{height:100%;position:relative;display:flex;align-items:center}.project-dropdown{position:absolute;left:-25px;top:calc(100% - 1px);width:285px;padding:25px 27px;background:var(--paper2);border:1px solid var(--line);box-shadow:0 18px 36px #00000018;opacity:0;visibility:hidden;transform:translateY(7px);pointer-events:none;transition:opacity .2s,transform .2s,visibility .2s}.nav-projects:hover .project-dropdown,.nav-projects:focus-within .project-dropdown,.nav-projects.is-open .project-dropdown{opacity:1;visibility:visible;transform:none;pointer-events:auto}.project-dropdown a{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:14px 0;border-bottom:1px solid var(--line);transition:padding-left .2s}.project-dropdown a:last-child{border:0}.project-dropdown a:hover{padding-left:6px;color:var(--accent)}.project-dropdown small{color:var(--soft);font-size:12px}
.book-link{justify-self:end;font-size:12px;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:8px;white-space:nowrap}.book-link span{padding-left:16px}.mobile-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:0;background:none;flex-direction:column;gap:7px}.mobile-toggle span{width:22px;height:1px;background:var(--ink)}.mobile-menu{display:none}
/* intro */
.intro-gate{position:fixed;inset:0;background:#1c201d;color:#f6f1e8;z-index:1200;display:grid;place-items:center;transition:opacity .8s cubic-bezier(.25,.8,.3,1),visibility .8s}.intro-gate.is-dismissing{opacity:0;visibility:hidden;pointer-events:none}.intro-hit{position:absolute;inset:0;border:0;background:none;color:inherit;cursor:pointer}.intro-center{pointer-events:none;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;padding:35px}.intro-name{display:flex;justify-content:center;gap:clamp(0px,.25vw,5px);font:400 clamp(68px,13vw,206px)/.86 var(--serif);letter-spacing:-.07em;white-space:nowrap;transform:translateX(-.02em)}
.intro-i-wrap{position:relative;display:inline-flex}
.intro-i-stem{position:relative;z-index:1}


.intro-gate.is-playing 
.intro-letter{display:inline-block;opacity:0;transform:translateY(-22px) scale(4);filter:blur(6px);transform-origin:center;animation:letter-land 1s cubic-bezier(.16,1,.3,1) forwards;animation-play-state:paused}.intro-gate.is-playing .intro-letter{animation-play-state:running}.intro-letter:nth-child(1){animation-delay:.08s}.intro-letter:nth-child(2){animation-delay:.24s}.intro-letter:nth-child(3){animation-delay:.4s}.intro-letter:nth-child(4){animation-delay:.56s}.intro-letter:nth-child(5){animation-delay:.72s}.intro-letter:nth-child(6){animation-delay:.88s}
@keyframes letter-land{0%{opacity:0;transform:translateY(-22px) scale(4);filter:blur(8px)}55%{opacity:1}100%{opacity:1;transform:none;filter:blur(0)}}

.intro-motto{margin:26px 0 0;padding-right:0;font:500 clamp(11px,1.15vw,15px)/1.3 var(--sans);letter-spacing:.34em;text-transform:uppercase;max-width:0;overflow:hidden;white-space:nowrap;opacity:0;border-right:1px solid rgba(246,241,232,.8);animation:typein 1.6s steps(17,end) 1.38s forwards,caret .8s step-end 1.38s 7;animation-play-state:paused}.intro-gate.is-playing .intro-motto{animation:typed 1.25s steps(17,end) 1.55s forwards,caret 600ms step-end 1.55s 4}.intro-bottom{position:absolute;bottom:clamp(30px,5vh,68px);left:0;right:0;text-align:center;font-size:10px;letter-spacing:.24em;text-transform:uppercase;opacity:0;animation:rise .6s ease 3.05s forwards;animation-play-state:paused}.intro-gate.is-playing .intro-bottom{animation-play-state:running}
@keyframes typed{0%{opacity:1;max-width:0}100%{opacity:1;max-width:20ch}}@keyframes caret{50%{border-color:#f7f1e8}}@keyframes rise{to{opacity:.68;transform:none}from{opacity:0;transform:translateY(12px)}}
/* homepage */
.home-stage{padding:clamp(25px,4.5vw,58px) var(--edge) clamp(45px,5vw,72px);min-height:calc(100svh - 91px);display:flex;flex-direction:column;justify-content:center}.home-photo{position:relative;width:100%;height:clamp(450px,67vh,830px);overflow:hidden;background:#898678}.home-photo img{width:100%;height:100%;object-fit:cover;object-position:center 52%;transition:transform 1.2s cubic-bezier(.15,.6,.35,1)}.home-photo:hover img{transform:scale(1.025)}.home-photo:after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.43));pointer-events:none}.home-caption{position:absolute;z-index:2;left:clamp(30px,5vw,82px);bottom:clamp(30px,5vw,72px);color:white}.home-caption .overline{display:block;font-size:10px;letter-spacing:.23em;font-weight:500;margin-bottom:18px}.home-caption h1{font:400 clamp(58px,7.5vw,130px)/.89 var(--serif);letter-spacing:-.045em;margin:0 0 24px}.home-caption a{font-size:12px;padding-bottom:9px;border-bottom:1px solid #fff;letter-spacing:.03em}.home-caption a span{padding-left:20px}.home-under{display:flex;justify-content:space-between;align-items:center;padding:19px 0 0;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.home-under span:last-child{color:var(--soft)}
/* inner page headers */
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin:0 auto;max-width:1780px;padding:clamp(62px,8vw,130px) var(--edge) clamp(35px,4vw,70px)}.page-heading .label{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin-bottom:22px}.page-heading h1{font:400 clamp(60px,7vw,126px)/.88 var(--serif);letter-spacing:-.04em;margin:0}.page-heading p{max-width:380px;font-size:13px;color:var(--soft);line-height:1.8;margin:0 0 6px}.page-heading.compact{padding-bottom:34px}
/* projects */
.category-bar{display:flex;gap:clamp(15px,3.4vw,50px);flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 var(--edge);padding:19px 0}.category-bar a{font-size:11px;white-space:nowrap;color:var(--soft);transition:color .2s}.category-bar a:hover,.category-bar a.active{color:var(--ink);font-weight:600}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2vw,34px);align-items:start;padding:40px var(--edge) 110px;max-width:1780px;margin:auto}.project-card{display:flex;flex-direction:column;min-width:0;align-self:start}.project-card-image{aspect-ratio:1.14/1;overflow:hidden;background:#d8d2c9}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.2,1)}.project-card:hover img{transform:scale(1.04)}.project-card-label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--soft);margin-top:19px}.project-card-title{font:400 clamp(27px,2.25vw,39px)/1.05 var(--serif);letter-spacing:-.015em;margin:8px 0 0;min-height:1.1em}.project-card-arrow{font-size:18px;margin-left:7px;opacity:0;transition:opacity .25s}.project-card:hover .project-card-arrow{opacity:1}.empty-results{grid-column:1/-1;padding:85px 0;text-align:center;font:35px var(--serif)}
/* project detail */
.project-story{padding:0 var(--edge) 110px}.project-back{display:inline-block;margin:45px 0 65px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:9px}.story-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:45px}.story-head h1{font:400 clamp(52px,7vw,120px)/.89 var(--serif);letter-spacing:-.05em;margin:0}.story-head .story-status{font-size:11px;color:var(--soft);text-transform:uppercase;letter-spacing:.16em;flex-shrink:0}.story-hero{height:clamp(450px,67vw,850px);overflow:hidden;background:#ddd}.story-hero img{width:100%;height:100%;object-fit:cover}.story-info{display:grid;grid-template-columns:1fr minmax(260px,460px);gap:60px;padding:58px 0 50px;border-bottom:1px solid var(--line)}.story-info p{font-size:15px;line-height:1.9;max-width:630px;color:var(--soft);margin:0}.story-specs{display:grid;grid-template-columns:1fr 1fr;gap:20px 40px}.story-specs div{border-top:1px solid var(--line);padding-top:15px}.story-specs small{display:block;color:var(--soft);font-size:10px;letter-spacing:.15em;text-transform:uppercase}.story-specs span{display:block;margin-top:5px;font-size:13px}.story-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.story-gallery figure{margin:0;overflow:hidden}.story-gallery figure:first-child:nth-last-child(odd){grid-column:1/-1}.story-gallery img{width:100%;height:clamp(360px,35vw,590px);object-fit:cover;cursor:zoom-in;transition:filter .25s}.story-gallery img:hover{filter:brightness(.92)}.study-note{font-size:11px;color:var(--soft);margin:36px 0 0}.lightbox{position:fixed;inset:0;z-index:1500;background:rgba(15,19,16,.96);display:none;align-items:center;justify-content:center;padding:60px 85px}.lightbox.open{display:flex}.lightbox img{max-height:88vh;max-width:90vw;object-fit:contain}.lightbox button{position:absolute;z-index:2;background:none;border:0;color:#fff;font-size:30px;padding:15px}.lightbox .close{top:20px;right:25px}.lightbox .prev{left:19px}.lightbox .next{right:19px}.lightbox .count{position:absolute;bottom:22px;color:#eee;font-size:11px;letter-spacing:.12em}
/* studio */
.studio-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(35px,6vw,105px);padding:0 var(--edge) 100px}.studio-image{height:clamp(480px,60vw,760px);overflow:hidden}.studio-image img{height:100%;width:100%;object-fit:cover}.studio-copy{padding:20px 5vw 20px 0}.studio-copy h2{font:400 clamp(48px,5.5vw,90px)/.99 var(--serif);letter-spacing:-.04em;margin:0 0 36px}.studio-copy p{font-size:15px;line-height:1.9;color:var(--soft);max-width:450px}.studio-values{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--line);padding:25px var(--edge) 85px}.studio-values span{font:400 clamp(25px,3vw,45px) var(--serif)}
/* expertise */
.expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,2vw,34px);padding:0 var(--edge) 120px}.expertise-card{display:flex;flex-direction:column}.expertise-card img{width:100%;aspect-ratio:4/5;object-fit:cover}.expertise-card h2{font:400 clamp(30px,3vw,49px)/1.05 var(--serif);margin:25px 0 13px}.expertise-card p{font-size:13px;line-height:1.75;max-width:370px;color:var(--soft)}.expertise-card a{display:inline-block;margin-top:auto;padding-top:10px;font-size:11px;border-bottom:1px solid var(--line);width:max-content;letter-spacing:.04em}
/* contact and booking */
.contact-stage{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,7vw,130px);padding:20px var(--edge) 135px;min-height:55vh}.contact-art{position:relative;background:#dfd8ce;min-height:520px;overflow:hidden}.contact-art img{width:100%;height:100%;object-fit:cover}.contact-body{display:flex;flex-direction:column;justify-content:center}.contact-line{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.contact-line small{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--soft)}.contact-line a,.contact-line span{font-size:clamp(17px,2.1vw,30px);font-family:var(--serif)}.contact-line a:hover{color:var(--accent)}.contact-book{display:block;margin-top:32px;font-size:13px;width:max-content;border-bottom:1px solid var(--ink);padding-bottom:8px}.book-stage{display:grid;grid-template-columns:1fr 1fr;gap:clamp(25px,7vw,100px);padding:20px var(--edge) 130px}.book-photo{height:660px;overflow:hidden}.book-photo img{width:100%;height:100%;object-fit:cover}.booking-panel{align-self:center;max-width:550px}.booking-panel h2{font:400 clamp(43px,4.3vw,74px)/1 var(--serif);margin-bottom:24px}.booking-panel p{font-size:13px;color:var(--soft);line-height:1.75}.hours-list{display:grid;gap:0;margin:35px 0}.hours-row{display:grid;grid-template-columns:1fr auto;gap:20px;border-top:1px solid var(--line);padding:14px 0}.hours-row b,.hours-row span{font-size:13px;font-weight:400}.hours-row span{color:var(--soft)}.booking-link{display:inline-flex;gap:28px;align-items:center;background:var(--ink);color:#fff;font-size:12px;padding:17px 24px;margin:14px 0 0;transition:background .2s}.booking-link:hover{background:#52574e}.booking-live{display:block;margin:5px 0;font-size:13px;text-decoration:underline}.booking-caveat{display:block;margin-top:22px;font-size:11px;color:var(--soft)}
/* universal short CTA */
.page-cta{border-top:1px solid var(--line);margin:0 var(--edge);padding:60px 0 95px;display:flex;justify-content:space-between;align-items:end;gap:24px}.page-cta h2{font:400 clamp(45px,5vw,84px)/1 var(--serif);margin:0}.page-cta a{font-size:12px;padding-bottom:11px;border-bottom:1px solid var(--ink);white-space:nowrap}
/* footer */
.footer{background:#202521;color:#f3f0e9;padding:72px var(--edge) 30px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:38px;align-items:start}.footer-logo{display:flex;align-items:center;gap:12px}.footer-logo img{width:42px;height:56px;object-fit:contain;filter:invert(1)}.footer-logo span{font-size:18px;letter-spacing:.24em}.footer-column{display:flex;flex-direction:column;gap:14px}.footer-column small{font-size:10px;letter-spacing:.19em;color:#b4b7ac;margin-bottom:10px}.footer-column a{font-size:13px;color:#efeee9}.footer-column a:hover{color:#c9a789}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:88px;border-top:1px solid #ffffff30;padding-top:25px;font-size:10px;color:#aaaead;letter-spacing:.12em;text-transform:uppercase}
/* responsive */
@media(max-width:930px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.page-heading h1{font-size:clamp(60px,8vw,100px)}}
@media(max-width:830px){.site-header{height:76px;grid-template-columns:1fr auto auto;gap:14px}.brand img{width:34px;height:44px}.brand span{font-size:14px}.primary-nav{display:none}.book-link{font-size:11px}.mobile-toggle{display:flex}.mobile-menu:not([hidden]){display:block;position:absolute;z-index:39;top:76px;left:0;right:0;background:var(--paper2);padding:25px var(--edge) 36px;border-bottom:1px solid var(--line);box-shadow:0 18px 24px #0002}.mobile-menu>a{display:block;padding:14px 0;font:30px var(--serif);border-bottom:1px solid var(--line)}.mobile-cats{display:grid;gap:10px;padding:15px 0 20px 23px}.mobile-cats a{font-size:13px}.home-stage{min-height:calc(100svh - 76px)}.home-photo{height:66vh}.home-caption h1{font-size:clamp(50px,9vw,85px)}.studio-grid,.contact-stage,.book-stage{grid-template-columns:1fr}.studio-image{height:520px}.studio-copy{padding:10px 0}.contact-art{min-height:420px;max-height:540px}.book-photo{height:480px}.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.story-info{grid-template-columns:1fr}.page-heading{display:block}}
@media(max-width:600px){:root{--edge:22px}.site-header{gap:10px}.brand{gap:8px}.brand span{font-size:12px}.book-link{font-size:10px}.book-link span{padding-left:8px}.intro-name{font-size:clamp(58px,16vw,95px)}.intro-motto{font-size:22px}.home-stage{padding-top:18px;padding-bottom:35px;min-height:auto}.home-photo{height:70vh;min-height:440px}.home-photo img{object-position:40%}.home-caption{left:26px;bottom:33px}.home-caption .overline{font-size:8px}.home-caption h1{font-size:clamp(54px,12vw,78px);margin-bottom:20px}.home-under{font-size:9px}.home-under span:last-child{display:none}.page-heading{padding:65px var(--edge) 34px}.page-heading h1{font-size:clamp(53px,13vw,84px)}.category-bar{gap:14px 22px;padding:16px 0}.category-bar a{font-size:10px}.project-grid{grid-template-columns:1fr;gap:44px;padding-top:26px;padding-bottom:75px}.project-card-image{aspect-ratio:1.12}.project-card-title{font-size:38px}.project-back{margin:30px 0 42px}.story-head{display:block}.story-head h1{font-size:clamp(48px,13vw,80px)}.story-head .story-status{display:block;margin-top:20px}.story-hero{height:50vh;min-height:350px}.story-info{padding:36px 0}.story-gallery{grid-template-columns:1fr;gap:14px}.story-gallery figure:first-child:nth-last-child(odd){grid-column:auto}.story-gallery img{height:380px}.story-specs{grid-template-columns:1fr 1fr}.studio-image{height:470px}.studio-grid{gap:25px;padding-bottom:65px}.studio-copy h2{font-size:59px}.studio-values{padding-bottom:60px}.expertise-grid{grid-template-columns:1fr;gap:65px;padding-bottom:70px}.expertise-card img{aspect-ratio:1.12}.expertise-card h2{font-size:46px}.contact-stage,.book-stage{padding-bottom:80px}.contact-art{min-height:320px}.contact-line{grid-template-columns:1fr;gap:6px;padding:20px 0}.contact-line a,.contact-line span{font-size:26px}.book-photo{height:360px}.page-cta{display:block;padding:50px 0 80px}.page-cta h2{font-size:55px;margin-bottom:24px}.footer{padding-top:57px}.footer-top{grid-template-columns:1fr 1fr;gap:40px 15px}.footer-logo{grid-column:1/-1}.footer-bottom{flex-direction:column;margin-top:65px}.lightbox{padding:40px}.lightbox .prev{left:0}.lightbox .next{right:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.intro-letter{opacity:1;transform:none;filter:none}.intro-motto{opacity:1;max-width:none;border:0}.intro-bottom{opacity:.8}}


/* ARCHZI WELCOME — ORIGINAL ARCH MARK SHELTERS NAME AND MOTTO */
.intro-gate{background:#f1eee8;color:#242722;isolation:isolate;overflow:hidden}
.welcome-glow{position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 34% 62% at 14% 92%,rgba(186,144,99,.095),transparent 83%),radial-gradient(ellipse 29% 50% at 87% 18%,rgba(245,237,223,.65),transparent 90%)}
.intro-center{min-height:100svh;display:grid;place-items:center;z-index:2;pointer-events:none;position:relative;padding:clamp(20px,4vw,65px) 18px 68px}
.intro-arch-home{position:relative;width:min(64vw,490px,calc(70svh * .974));aspect-ratio:1126/1156;margin:auto;opacity:0;transform:translateY(24px) scale(.965);transition:none;filter:drop-shadow(0 15px 30px rgba(51,40,34,.035))}
.intro-gate.is-playing .intro-arch-home{animation:arch-welcome 1.15s cubic-bezier(.16,1,.27,1) .1s forwards}
.intro-arch-mark{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.intro-inner{position:absolute;top:60%;left:50%;width:74%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;color:#242722}
.intro-name{font:500 clamp(26px,3.5vw,47px)/1 var(--sans);letter-spacing:.19em;display:flex;gap:0;margin:0;text-indent:.19em;white-space:nowrap;transform:none}
.intro-letter{transform:translateY(-25px) scale(3.1);filter:blur(5px);transform-origin:center;opacity:0;animation:letter-land 850ms cubic-bezier(.16,1,.3,1) forwards;animation-play-state:paused}
.intro-gate.is-playing .intro-letter{animation-play-state:running}
.intro-letter:nth-child(1){animation-delay:.77s}.intro-letter:nth-child(2){animation-delay:.91s}.intro-letter:nth-child(3){animation-delay:1.05s}.intro-letter:nth-child(4){animation-delay:1.19s}.intro-letter:nth-child(5){animation-delay:1.33s}.intro-letter:nth-child(6){animation-delay:1.47s}
.intro-motto{margin:0;padding:0 2px 5px;font:400 clamp(20px,2.65vw,34px)/1.2 var(--serif);letter-spacing:-.015em;max-width:0;white-space:nowrap;overflow:hidden;border-right:1px solid transparent;opacity:0}
.intro-gate.is-playing .intro-motto{animation:typed 1.22s steps(17,end) 2.14s forwards,caret 600ms step-end 2.14s 5}
.intro-bottom{position:absolute;bottom:clamp(29px,5vh,62px);left:0;right:0;margin:auto;display:flex;align-items:center;justify-content:center;gap:21px;letter-spacing:.18em;color:#73766d;font-size:10px;font-weight:600;opacity:0;animation:rise .65s ease 3.48s forwards;animation-play-state:paused}
.intro-bottom span:first-child,.intro-bottom span:last-child{width:33px;height:1px;background:#b4aa9c}
.intro-gate.is-playing .intro-bottom{animation-play-state:running}
@keyframes arch-welcome{from{opacity:0;transform:translateY(24px) scale(.965)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){.intro-arch-home{width:min(78vw,430px,calc(68svh * .974))}.intro-inner{top:60%;gap:8px;width:74%}.intro-name{font-size:clamp(26px,6.6vw,38px);letter-spacing:.14em;text-indent:.14em}.intro-motto{font-size:clamp(10px,2.8vw,13px)}.intro-center{padding-bottom:45px}.intro-bottom{font-size:9px;gap:12px}}
@media(max-width:380px){.intro-arch-home{width:min(88vw,calc(65svh * .974))}.intro-name{font-size:clamp(24px,6.8vw,30px)}.intro-motto{font-size:clamp(10px,3vw,12px)}}
@media(prefers-reduced-motion:reduce){.intro-arch-home{opacity:1;transform:none;animation:none!important}.intro-letter{opacity:1;transform:none;filter:none;animation:none!important}.intro-motto{max-width:none;opacity:1;border:0;animation:none!important}.intro-bottom{opacity:1;animation:none!important}}


/* -----------------------------------------------
   ARCHZI OFFICIAL SQUARE ANIMATION + NEW HERO
   Change the heading in index.html; animation here.
   ----------------------------------------------- */
.intro-arch-mark{width:100%;height:100%;object-fit:contain}
.intro-arch-home{isolation:isolate}
.intro-square{
  position:absolute;left:0;top:0;
  width:15.0089%;height:14.619%;object-fit:fill;
  z-index:5;opacity:0;
  /* Start above the I, hold as its dot, then move into the official logo. */
  transform:translate(var(--sq-dx,0px),var(--sq-dy,0px)) scale(.25);
  animation:archzi-square-return 1.9s cubic-bezier(.17,.78,.27,1) 2.28s both;
  animation-play-state:paused;
  pointer-events:none;
}
.intro-gate.is-playing .intro-square{animation-play-state:running}
@keyframes archzi-square-return{
  0%{opacity:0;transform:translate(var(--sq-dx,0px),var(--sq-dy,0px)) scale(.17)}
  12%{opacity:1;transform:translate(var(--sq-dx,0px),var(--sq-dy,0px)) scale(.25)}
  45%{opacity:1;transform:translate(var(--sq-dx,0px),var(--sq-dy,0px)) scale(.25)}
  100%{opacity:1;transform:translate(0,0) scale(1)}
}
.intro-motto{margin:0;padding:0 2px 5px;font:400 clamp(12px,1.35vw,17px)/1.35 var(--sans);letter-spacing:.13em;text-transform:none;max-width:0;white-space:nowrap;overflow:hidden;border-right:1px solid transparent;opacity:0}
.intro-gate.is-playing .intro-motto{animation:typed 1.3s steps(17,end) 4.05s forwards,caret 600ms step-end 4.05s 4}
.intro-bottom{animation:rise .65s ease 5.46s forwards;animation-play-state:paused}
.intro-gate.is-playing .intro-bottom{animation-play-state:running}
.home-caption h1{font-size:clamp(48px,6.3vw,100px);line-height:1.01;max-width:820px}
@media(max-width:600px){
 .intro-motto{font-size:clamp(11px,2.85vw,15px)}
 .home-caption h1{font-size:clamp(34px,7.7vw,57px);line-height:1.05}
}
@media(prefers-reduced-motion:reduce){
 .intro-square{opacity:1;transform:none;animation:none!important}
 .intro-motto{opacity:1;max-width:none;border:0;animation:none!important}
}
