
    :root{color-scheme:light;--paper:#f3eee3;--paper-soft:#ebe3d5;--ink:#18352c;--muted:#68766e;--forest:#123d31;--forest-2:#0b2d24;--forest-glass:rgba(11,45,36,.9);--gold:#c6a35c;--coral:#b34f40;--rose:#ead3c9;--lavender:#c8becd;--line:rgba(24,53,44,.22);--white:#fffaf1;--display:"Newsreader",Georgia,serif;--body:"Manrope",sans-serif}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.65 var(--body);overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit}img{display:block;width:100%}button{font:inherit;color:inherit}::selection{background:var(--coral);color:white}.skip{position:fixed;top:-80px;left:18px;z-index:100;background:var(--forest-glass);color:white;padding:9px 13px;-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}.skip:focus{top:18px}
    .site-header{position:relative;z-index:30;background:var(--forest-glass);color:var(--white)}
    .site-header::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}
    .header-top{height:112px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:0 clamp(20px,4vw,64px);gap:38px}.brand{display:block;width:192px}.brand img{height:112px;object-fit:contain;object-position:left center}.header-note{font-size:10px;letter-spacing:.18em;text-transform:uppercase;opacity:.72}.header-note.right{text-align:right}
    .menu-toggle{display:none;width:48px;height:48px;border:0;background:transparent;padding:0;cursor:pointer;align-items:center;justify-content:center;position:relative;flex:none}
    .nav{display:flex;justify-content:center;align-items:center;gap:clamp(13px,1.8vw,27px);min-height:51px;padding:0 24px}.nav a{text-decoration:none;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:16px 0 13px;border-bottom:2px solid transparent;white-space:nowrap}.nav a:hover,.nav a:focus-visible,.nav a.active{border-color:var(--gold);color:#efd49d}.reserve{border:1px solid rgba(255,255,255,.42)!important;padding:8px 14px!important}.reserve:hover{background:var(--coral);border-color:var(--coral)!important;color:white!important}
    .page{display:none;min-height:calc(100vh - 163px)}.page.active{display:block}.page-head{padding:clamp(76px,9vw,130px) clamp(22px,8vw,120px) 62px;display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(30px,7vw,110px);align-items:end;border-bottom:1px solid var(--line)}.page-no,.eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral)}.page-head h1{font:300 clamp(54px,7.5vw,108px)/.92 var(--display);letter-spacing:-.045em;margin:22px 0 0}.page-head p{font:300 clamp(21px,2.5vw,35px)/1.34 var(--display);margin:0;max-width:31ch}.lead{font:300 clamp(22px,3vw,42px)/1.26 var(--display);letter-spacing:-.02em}.copy{max-width:700px;font-size:16px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid currentColor;padding:12px 19px;text-decoration:none;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.button.fill{background:var(--coral);border-color:var(--coral);color:white}.button:hover{background:var(--forest-glass);border-color:rgba(11,45,36,.9);color:white;-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}
    .hero{min-height:clamp(720px,82vh,940px);display:grid;grid-template-columns:58% 42%;background:var(--paper);position:relative}.hero-photo{position:relative;min-height:720px;overflow:hidden}.hero-photo img{height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.88) contrast(1.02)}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 70%,rgba(18,61,49,.18)),linear-gradient(0deg,rgba(18,61,49,.16),transparent 40%)}.hero-copy{padding:clamp(72px,8vw,130px) clamp(34px,6vw,96px);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,var(--paper),var(--paper-soft));position:relative;overflow:hidden}.mosaic-medallion{position:absolute;width:450px;height:410px;right:-178px;top:-88px;z-index:0;opacity:.82;filter:brightness(.96) saturate(.94)}.hero-copy>*:not(.mosaic-medallion){position:relative;z-index:1}.hero h1{font:300 clamp(60px,6.5vw,96px)/.88 var(--display);letter-spacing:-.052em;margin:25px 0 38px;max-width:7.8ch}.hero h1 em{font-weight:300;color:var(--coral)}.hero-copy p{max-width:430px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.vertical-note{position:absolute;left:20px;bottom:26px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:white;z-index:2}
    .manifesto{display:grid;grid-template-columns:1fr 1fr;min-height:660px}.manifesto-copy{padding:clamp(70px,9vw,140px);display:flex;flex-direction:column;justify-content:center}.manifesto-copy h2,.feature h2{font:300 clamp(48px,6vw,86px)/.98 var(--display);letter-spacing:-.04em;margin:20px 0 30px}.manifesto-photo{min-height:560px}.manifesto-photo img{height:100%;object-fit:cover}.color-rule{height:20px;overflow:hidden;background:var(--forest-glass);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}.color-rule svg{display:block;width:100%;height:100%;filter:brightness(.96) saturate(.94)}.quote-band{background:var(--forest-glass);color:var(--white);padding:clamp(78px,10vw,145px) clamp(22px,8vw,120px);position:relative;overflow:hidden;-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}.quote-band blockquote{font:300 clamp(35px,5vw,72px)/1.06 var(--display);letter-spacing:-.035em;margin:0;max-width:17ch;position:relative;z-index:1}.mosaic-echo{position:absolute;pointer-events:none;z-index:0;overflow:visible;filter:brightness(.93) saturate(.92)}.mosaic-echo--quote{width:410px;height:374px;right:-126px;bottom:-178px;opacity:.78;transform:rotate(-12deg);filter:brightness(.93) saturate(.92)}.mosaic-echo--recognition{width:300px;height:274px;left:-164px;top:-154px;opacity:.42;transform:rotate(92deg)}.mosaic-echo--inquiry{width:270px;height:246px;right:-142px;top:-130px;opacity:.34;transform:rotate(18deg)}.mosaic-echo--footer{width:180px;height:164px;right:-84px;bottom:-105px;opacity:.72;transform:rotate(-24deg)}
    .butterfly-library{position:absolute;width:0;height:0;overflow:hidden}.butterfly-lane{height:104px;position:relative;overflow:visible;background:var(--paper)}.butterfly-lane--home{height:148px}.butterfly-lane.paper-soft{background:var(--paper-soft)}.butterfly-lane.rose{background:var(--rose)}.butterfly{--r:0deg;--flip-x:1;--shape-y:1;--skew:0deg;--drift:6.8s;position:absolute;z-index:1;width:92px;height:104px;pointer-events:auto;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transform-origin:center;filter:drop-shadow(0 9px 7px rgba(44,28,21,.22));animation:butterflyDrift var(--drift) ease-in-out infinite alternate}.butterfly.soft{opacity:.74;filter:drop-shadow(0 7px 6px rgba(44,28,21,.16))}.butterfly.pale{opacity:.6;filter:sepia(.15) saturate(.78) drop-shadow(0 6px 5px rgba(44,28,21,.14))}.butterfly--hero{right:14%;top:9px;width:120px;height:130px;--r:-13deg;--flip-x:1.04;--drift:7.4s;opacity:.45}.butterfly--manifesto{left:11%;top:14px;width:58px;height:76px;--r:31deg;--flip-x:-.84;--shape-y:1.08;--skew:-4deg;--drift:6.1s}.butterfly--quote{right:21%;top:5px;width:88px;height:92px;--r:8deg;--flip-x:-1.08;--shape-y:.9;--skew:3deg;--drift:8.2s}.butterfly--page-head{width:76px;height:96px;top:4px;--drift:6.6s}.butterfly--head-about{left:18%;--r:24deg;--flip-x:-.84;--shape-y:1.08;--skew:2deg}.butterfly--head-menu{right:10%;--r:-34deg;--flip-x:.9;--shape-y:.92;--skew:-4deg}.butterfly--head-private{left:8%;--r:42deg;--flip-x:-1.03;--shape-y:.86;--skew:3deg}.butterfly--head-journal{right:24%;--r:-12deg;--flip-x:1.08;--shape-y:1.04;--skew:-2deg}.butterfly--about{right:8%;top:20px;width:54px;height:62px;--r:38deg;--flip-x:-1.02;--shape-y:.92;--drift:7.8s}.butterfly--menu{left:9%;top:9px;width:70px;height:86px;--r:-34deg;--flip-x:.88;--shape-y:1.06;--skew:4deg;--drift:6.3s}.butterfly--private{right:12%;top:15px;width:84px;height:74px;--r:17deg;--flip-x:-1.12;--shape-y:.82;--skew:-2deg;--drift:8.5s}.butterfly--gallery{left:31%;top:-7px;width:106px;height:118px;--r:-8deg;--flip-x:1.02;--shape-y:1.02;--drift:7s}.butterfly--journal{left:8%;top:7px;width:64px;height:90px;--r:27deg;--flip-x:-.9;--shape-y:1.1;--skew:3deg;--drift:7.7s}.hero-copy,.manifesto-copy,.menu-intro,.feature,.gallery,.journal{position:relative}.page-head{position:relative;overflow:hidden}@keyframes butterflyDrift{0%{transform:translate3d(-2px,5px,0) rotate(var(--r))}45%{transform:translate3d(3px,-4px,0) rotate(var(--r))}100%{transform:translate3d(-1px,-8px,0) rotate(var(--r))}}
    .split{display:grid;grid-template-columns:1fr 1fr}.split>div{padding:clamp(65px,8vw,120px)}.split .image{padding:0;min-height:690px}.split .image img{height:100%;object-fit:cover}.copy-panel{display:flex;flex-direction:column;justify-content:center}.statement{margin:0 0 28px;font:300 clamp(26px,3vw,42px)/1.3 var(--display)}.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pillar{padding:48px clamp(24px,4vw,60px);min-height:250px}.pillar+.pillar{border-left:1px solid var(--line)}.pillar b{display:block;font:400 30px var(--display);margin:14px 0}.pillar p{margin:0;color:var(--muted)}
    .feature{padding:clamp(72px,9vw,140px) clamp(22px,8vw,120px)}.feature-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,9vw,140px);align-items:center}.portrait{aspect-ratio:4/5;object-fit:cover}.recognition{background:var(--rose);padding:clamp(65px,8vw,110px) clamp(22px,8vw,120px);display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;align-items:center;position:relative;overflow:hidden}.recognition>*:not(.mosaic-echo){position:relative;z-index:1}.recognition strong{font:300 clamp(48px,7vw,96px)/.92 var(--display)}.michelin-flower{width:72px;height:72px;margin:0 0 20px;grid-column:1/-1;object-fit:contain}
    .menu-intro{padding:clamp(65px,8vw,110px) clamp(22px,8vw,120px) 42px}.menu-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-top:34px}.menu-tab{background:none;border:1px solid var(--line);padding:11px 15px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.menu-tab.active{background:var(--forest-glass);border-color:rgba(11,45,36,.9);color:white;-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08)}.menu-panel{display:none;padding:0 clamp(22px,8vw,120px) clamp(80px,9vw,130px)}.menu-panel.active{display:block}.menu-sheet{max-width:920px;margin:auto;border-top:1px solid var(--line)}.course{display:grid;grid-template-columns:.42fr 1.58fr;gap:30px;padding:27px 0;border-bottom:1px solid var(--line)}.course h2{margin:0;font:400 25px/1.1 var(--display)}.course p{margin:0;color:var(--muted)}.menu-cat{padding:34px 0 8px;border-bottom:none}.menu-cat h2{font:500 13px/1.4 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--coral)}.menu-note{margin-top:24px;color:var(--muted);font-size:12px}
    .occasion-list{columns:2;column-gap:45px;margin:20px 0 0;padding:0;list-style:none}.occasion-list li{break-inside:avoid;padding:13px 0;border-bottom:1px solid var(--line)}.inquiry-band{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:var(--coral);color:white;padding:55px clamp(22px,8vw,120px);position:relative;overflow:hidden}.inquiry-band>*:not(.mosaic-echo){position:relative;z-index:1}.inquiry-band h2{font:300 clamp(35px,5vw,68px)/1 var(--display);margin:0;max-width:14ch}.inquiry-band .button:hover{background:white;border-color:white;color:var(--coral)}
    .gallery{padding:clamp(70px,9vw,130px) clamp(18px,5vw,70px)}.gallery-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin:0 auto 42px;max-width:1380px}.gallery-intro h1{font:300 clamp(52px,7vw,96px)/1 var(--display);margin:15px 0 0}.gallery-intro p{max-width:430px}.gallery-grid{max-width:1380px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-button{border:0;padding:0;background:none;position:relative;aspect-ratio:.82;cursor:zoom-in;overflow:hidden}.gallery-button:nth-child(3n+2){transform:translateY(34px)}.gallery-button img{height:100%;object-fit:cover;transition:transform .5s}.gallery-button:hover img{transform:scale(1.025)}.gallery-label{position:absolute;inset:auto 14px 12px;color:white;font-size:10px;letter-spacing:.11em;text-transform:uppercase;text-shadow:0 2px 8px #000}
    .journal{padding:clamp(65px,8vw,120px) clamp(22px,7vw,100px)}.journal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.journal-card{background:var(--paper);display:grid;grid-template-columns:.9fr 1.1fr;text-decoration:none;min-height:320px}.journal-card img{height:100%;object-fit:cover}.journal-copy{padding:35px;display:flex;flex-direction:column;justify-content:space-between}.journal-card h2{font:300 clamp(28px,3vw,43px)/1.08 var(--display);letter-spacing:-.025em;margin:15px 0}.journal-card p{color:var(--muted);margin:0}.read-more{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--coral)}
    .footer{display:grid;grid-template-columns:1fr auto;gap:24px;padding:34px clamp(90px,9vw,132px) 34px clamp(22px,5vw,72px);border-top:1px solid var(--line);font-size:10px;letter-spacing:.12em;text-transform:uppercase;position:relative;overflow:hidden}.footer>*:not(.mosaic-echo){position:relative;z-index:1}.footer nav{display:flex;gap:20px;flex-wrap:wrap}.footer a{text-decoration:none}.lightbox{position:fixed;inset:0;z-index:80;background:var(--forest-glass);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08);display:none;align-items:center;justify-content:center;padding:28px}.lightbox.open{display:flex}.lightbox figure{margin:0;display:grid;gap:8px;max-width:min(1000px,92vw)}.lightbox img{max-height:82vh;object-fit:contain}.lightbox figcaption{color:white;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.lightbox-close{position:absolute;top:18px;right:18px;width:46px;height:46px;background:none;border:1px solid rgba(255,255,255,.5);color:white;font-size:24px;cursor:pointer}
    @media(max-width:1120px){.header-top{height:92px;grid-template-columns:1fr auto}.menu-open .site-header{position:fixed;top:0;left:0;right:0;bottom:0;height:100vh;height:100dvh;overflow-y:auto;z-index:60}.menu-open .header-top{position:sticky;top:0;z-index:1}.menu-open .nav{position:static;overflow:visible}.header-note{display:none}.brand{width:156px}.brand img{height:94px}.menu-toggle{display:flex}.nav{position:fixed;inset:0;background:var(--forest-glass);-webkit-backdrop-filter:blur(14px) saturate(1.08);backdrop-filter:blur(14px) saturate(1.08);display:none;flex-direction:column;gap:2px;padding:90px 24px 32px;overflow:auto}.menu-open .nav{display:flex}.nav a{font:300 28px var(--display);letter-spacing:-.01em;text-transform:none;padding:4px 0}.reserve{font:500 11px var(--body)!important;letter-spacing:.13em!important;text-transform:uppercase!important;margin-top:9px!important}.hero{grid-template-columns:1fr}.hero-photo{min-height:65vh}.hero-copy{min-height:560px}.page-head,.manifesto,.split,.feature-grid,.recognition{grid-template-columns:1fr}.manifesto-photo,.split .image{min-height:70vw}.pillars{grid-template-columns:1fr}.pillar{min-height:0}.pillar+.pillar{border-left:0;border-top:1px solid var(--line)}.journal-card{grid-template-columns:1fr}.journal-card img{aspect-ratio:16/10}}
    @media(max-width:650px){.header-top{height:78px;padding:0 16px}.brand{width:122px}.brand img{height:86px}.mosaic-medallion{width:260px;height:237px;right:-120px;top:-64px}.hero-photo{min-height:61vh}.hero-copy{padding:64px 22px;min-height:510px}.hero h1{font-size:clamp(56px,17vw,73px);max-width:none}.vertical-note{display:none}.page-head{padding:66px 22px 42px}.manifesto-copy,.split>div,.feature{padding:62px 22px}.manifesto-photo,.split .image{min-height:100vw}.course{grid-template-columns:1fr;gap:8px}.occasion-list{columns:1}.inquiry-band{grid-template-columns:1fr}.gallery-intro{align-items:start;flex-direction:column}.gallery-grid{grid-template-columns:1fr}.gallery-button:nth-child(3n+2){transform:none}.journal-grid{grid-template-columns:1fr}.mosaic-echo--quote{width:285px;height:260px;right:-132px;bottom:-132px}.mosaic-echo--recognition{width:220px;height:201px;left:-135px;top:-122px}.mosaic-echo--inquiry{width:220px;height:201px;right:-128px;top:-117px}.footer{grid-template-columns:1fr;padding-right:86px}.footer nav{gap:11px 18px}.mosaic-echo--footer{width:145px;height:132px;right:-72px;bottom:-82px}.butterfly-lane{height:80px}.butterfly-lane--home{height:112px}.butterfly--hero{right:11%;top:11px;width:82px;height:90px}.butterfly--manifesto{left:auto;right:8%;top:10px;width:46px;height:60px}.butterfly--quote{right:12%;top:9px;width:55px;height:58px}.butterfly--page-head{width:52px;height:72px;top:4px}.butterfly--head-about{left:auto;right:10%}.butterfly--head-menu{left:8%;right:auto}.butterfly--head-private{left:auto;right:8%}.butterfly--head-journal{left:12%;right:auto}.butterfly--about{right:12%;top:16px;width:43px;height:49px}.butterfly--private{right:13%;top:12px;width:58px;height:52px}.butterfly--gallery{left:auto;right:11%;top:2px;width:69px;height:76px}.butterfly--journal{left:10%;top:5px;width:48px;height:66px}.butterfly--menu{left:auto;right:9%;top:7px;width:50px;height:62px}}
    .butterfly svg{display:block;width:100%;height:100%;overflow:visible}.butterfly .wing{transform-box:fill-box;transform-origin:0% 50%;animation:flapR var(--flap,1.7s) ease-in-out infinite;animation-delay:var(--fd,0s)}.butterfly .wing-l{transform-box:fill-box;transform-origin:100% 50%;animation:flapL var(--flap,1.7s) ease-in-out infinite;animation-delay:var(--fd,0s)}@keyframes flapR{0%,100%{transform:perspective(480px) rotateY(6deg);filter:brightness(1)}28%{transform:perspective(480px) rotateY(64deg);filter:brightness(.74)}}@keyframes flapL{0%,100%{transform:perspective(480px) rotateY(-6deg);filter:brightness(1)}28%{transform:perspective(480px) rotateY(-64deg);filter:brightness(.74)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}.gallery-button:nth-child(3n+2){transform:none}.butterfly{animation:none}.butterfly .wing{animation:none}.menu-open .nav,.menu-open .nav a{animation:none}}
  .inquiry-band--form{grid-template-columns:1fr}
.form-eyebrow{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#fff;margin:0;position:relative;z-index:1}
#inquiry-form{display:grid;gap:20px;margin-top:6px;position:relative;z-index:1}
#inquiry-form .field{display:grid;gap:10px}
.field-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.9)}
.sub-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.65)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.phone-grid{grid-template-columns:200px 1fr}
#inquiry-form label{display:grid;gap:8px;align-content:start}
#inquiry-form input[type=text],#inquiry-form input[type=email],#inquiry-form input[type=tel],#inquiry-form input[type=date],#inquiry-form input[type=number],#inquiry-form select,#inquiry-form textarea{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.55);color:#fff;padding:13px 14px;font:400 16px/1.4 var(--body);border-radius:2px;width:100%;box-sizing:border-box}
#inquiry-form textarea::placeholder{color:rgba(255,255,255,.55)}
#inquiry-form input:focus,#inquiry-form select:focus,#inquiry-form textarea:focus{outline:none;border-color:#fff;background:rgba(255,255,255,.18)}
#inquiry-form select option{color:#111}
#inquiry-form .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.check-group{display:grid;gap:12px}
.check{display:grid !important;grid-template-columns:auto 1fr;gap:12px;align-items:center;cursor:pointer}
.check input{width:20px;height:20px;accent-color:#fff;cursor:pointer}
.check span{font-size:15px;letter-spacing:0;text-transform:none;color:#fff}
.field-desc{font-size:13px;letter-spacing:0;text-transform:none;color:rgba(255,255,255,.75)}
#inquiry-form .button{background:#fff;border-color:#fff;color:var(--coral);cursor:pointer;justify-self:start}
#inquiry-form .button:hover{background:transparent;color:#fff;border-color:#fff}
#inquiry-form .button:disabled{opacity:.6;cursor:wait}
.form-status{min-height:1.4em;margin:0;font-size:15px;color:#fff}
.form-note{margin:0;font-size:14px;color:rgba(255,255,255,.85)}
.form-note a{color:#fff}
@media(max-width:650px){.form-grid{grid-template-columns:1fr}.phone-grid{grid-template-columns:1fr}}

/* Butterfly wing flap: squash-and-stretch on the wing axis, varied tempo per butterfly */

.butterfly--hero{--flap:1.9s}.butterfly--manifesto,.butterfly--head-about,.butterfly--about{--flap:1.5s}.butterfly--quote,.butterfly--head-journal,.butterfly--journal{--flap:2.05s}.butterfly--head-menu,.butterfly--menu{--flap:1.7s}.butterfly--head-private,.butterfly--private{--flap:1.8s}.butterfly--gallery{--flap:1.6s}.butterfly:nth-of-type(2n){--fd:-.45s}.butterfly:nth-of-type(3n){--fd:-.9s}}
/* Mobile nav open animation: panel slides down, links stagger in */
@keyframes navPanelIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}
@keyframes navLinkIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1120px){.menu-open .nav{animation:navPanelIn .45s cubic-bezier(.22,.8,.3,1) both}.menu-open .nav a{animation:navLinkIn .55s cubic-bezier(.22,.8,.3,1) both}.menu-open .nav a:nth-child(1){animation-delay:.05s}.menu-open .nav a:nth-child(2){animation-delay:.1s}.menu-open .nav a:nth-child(3){animation-delay:.15s}.menu-open .nav a:nth-child(4){animation-delay:.2s}.menu-open .nav a:nth-child(5){animation-delay:.25s}.menu-open .nav a:nth-child(6){animation-delay:.3s}.menu-open .nav a:nth-child(7){animation-delay:.35s}.menu-open .nav a:nth-child(8){animation-delay:.4s}.menu-open .nav a:nth-child(9){animation-delay:.45s}}
/* first-visit intro: butterflies glide in from off-screen and land */
.intro-wrap{position:absolute;inset:0;pointer-events:none}




body.intro-flying .butterfly{--flap:.5s}
@media(prefers-reduced-motion:reduce){.intro-wrap{animation:none}}
.tapfly-wrap{position:absolute;inset:0;pointer-events:none}.butterfly-extra{position:fixed;left:0;top:0;z-index:70;pointer-events:none;cursor:default}
.menu-e{width:16px;height:auto;display:block;transition:opacity .25s ease,transform .32s ease}.menu-x{position:absolute;left:50%;top:50%;width:22px;height:22px;opacity:0;transform:translate(-50%,-50%) rotate(-90deg) scale(.5);transition:opacity .25s ease,transform .32s ease}.menu-x line{stroke:#d9b64a;stroke-width:1.7;stroke-linecap:round}.menu-open .menu-e{opacity:0;transform:rotate(90deg) scale(.6)}.menu-open .menu-x{opacity:1;transform:translate(-50%,-50%) rotate(0deg) scale(1)}@media(prefers-reduced-motion:reduce){.menu-e,.menu-x{transition:none}}
