@property --paper{syntax:"<color>";inherits:true;initial-value:#e6efe9}@property --paper-deep{syntax:"<color>";inherits:true;initial-value:#d0e0d6}@property --glow-a{syntax:"<color>";inherits:true;initial-value:#14635429}@property --glow-b{syntax:"<color>";inherits:true;initial-value:#c45c261a}:root{--ink:#14201c;--ink-soft:#3a4a44;--paper:#e6efe9;--paper-deep:#d0e0d6;--glow-a:#14635429;--glow-b:#c45c261a;--deep:#0b3d32;--deep-mid:#146354;--copper:#c45c26;--copper-hot:#e06d2f;--gold:#c9a227;--cream-glow:#ffecc81f;--line:#14201c1f;--shadow:0 24px 60px #0b3d322e;--radius:4px;--font-display:"Bricolage Grotesque", Georgia, serif;--font-body:"Figtree", "Segoe UI", sans-serif;--space:clamp(1rem, 2.5vw, 2rem);--max:1120px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(ellipse 80% 50% at 10% 0%, var(--glow-a), transparent 55%), radial-gradient(ellipse 60% 40% at 90% 20%, var(--glow-b), transparent 50%), linear-gradient(180deg, var(--paper) 0%, var(--paper-deep) 100%);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;margin:0;font-size:1.0625rem;line-height:1.6;animation:15s ease-in-out infinite chameleon-skin}@keyframes chameleon-skin{0%,to{--paper:#e6efe9;--paper-deep:#cfe0d4;--glow-a:#14635433;--glow-b:#c45c2614}20%{--paper:#e2f0f2;--paper-deep:#c5dde3;--glow-a:#12788238;--glow-b:#288c6e1f}40%{--paper:#f0ebe3;--paper-deep:#e2d4c4;--glow-a:#c45c2629;--glow-b:#c9a22724}60%{--paper:#efe8f0;--paper-deep:#ddd0e2;--glow-a:#78468c24;--glow-b:#c45c261a}80%{--paper:#e8f2e6;--paper-deep:#cfe6c8;--glow-a:#508c322e;--glow-b:#c9a2271f}}@media (prefers-reduced-motion:reduce){body{animation:none}}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}:focus-visible{outline:2px solid var(--copper);outline-offset:3px}.site-header{z-index:40;padding:1rem var(--space);transition:background .35s var(--ease), backdrop-filter .35s var(--ease);justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{font-family:var(--font-display);letter-spacing:-.03em;color:var(--deep);font-size:1.35rem;font-weight:800;text-decoration:none}.nav{align-items:center;gap:1.5rem;display:none}.nav a{color:var(--ink-soft);font-size:.95rem;font-weight:600;text-decoration:none}.nav a:hover{color:var(--deep)}.nav a.nav-cta{background:var(--deep);border-radius:var(--radius);padding:.55rem 1rem;display:inline-flex;color:#fff!important}@media (width>=768px){.nav{display:flex}}.hero{color:#f4f7f5;align-items:end;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-media{animation:hero-drift 18s var(--ease) infinite alternate;background:linear-gradient(#0b3d3240 0%,#0b3d32d9 100%),url(/images/hero.svg) 50%/cover no-repeat;position:absolute;inset:0;transform:scale(1.04)}@keyframes hero-drift{0%{transform:scale(1.04)translate(0,0)}to{transform:scale(1.1)translate(-1.5%,-1%)}}.hero-content{z-index:1;width:min(100% - 2 * var(--space), var(--max));margin:0 auto;padding:6rem 0 4rem;position:relative}.hero-brand{font-family:var(--font-display);letter-spacing:-.04em;animation:rise .9s var(--ease) both;margin:0 0 .75rem;font-size:clamp(3.5rem,14vw,8.5rem);font-weight:800;line-height:.9}.hero-tagline{color:#f4f7f5e6;max-width:28rem;animation:rise .9s var(--ease) .12s both;margin:0 0 1.75rem;font-size:clamp(1.1rem,2.4vw,1.35rem)}.hero-actions{animation:rise .9s var(--ease) .22s both;flex-wrap:wrap;gap:.75rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.btn{border-radius:var(--radius);cursor:pointer;transition:transform .25s var(--ease), background .25s var(--ease);border:none;justify-content:center;align-items:center;gap:.4rem;padding:.85rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--copper);color:#fff}.btn-primary:hover{background:var(--copper-hot)}.btn-ghost{color:#f4f7f5;background:0 0;border:1px solid #f4f7f573}.btn-ghost:hover{background:#f4f7f51a}.section{width:min(100% - 2 * var(--space), var(--max));margin:0 auto;padding:clamp(3.5rem,8vw,6rem) 0}.section-head{max-width:36rem;margin-bottom:2.5rem}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--copper);margin:0 0 .5rem;font-size:.8rem;font-weight:700;display:inline-block}.section-head h2{font-family:var(--font-display);letter-spacing:-.03em;color:var(--deep);margin:0 0 .75rem;font-size:clamp(2rem,5vw,3rem);line-height:1.05}.section-head p{color:var(--ink-soft);margin:0}.about-grid{gap:2rem;display:grid}@media (width>=860px){.about-grid{grid-template-columns:1.1fr .9fr;align-items:center}}.about-copy p{color:var(--ink-soft);margin:0 0 1rem}.about-photo{border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:4/5;background:var(--deep);overflow:hidden}.about-photo img{object-fit:cover;width:100%;height:100%}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:.65rem;display:grid}@media (width>=720px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:.85rem}}.gallery-item{cursor:zoom-in;border-radius:var(--radius);aspect-ratio:1;background:0 0;border:none;margin:0;padding:0;overflow:hidden}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease)}.gallery-item:hover img{transform:scale(1.06)}.video-grid{gap:1.25rem;display:grid}@media (width>=800px){.video-grid{grid-template-columns:1fr 1fr}}.video-card h3{color:var(--deep);margin:.75rem 0 0;font-size:1rem;font-weight:600}.video-frame{aspect-ratio:16/9;border-radius:var(--radius);background:var(--deep);box-shadow:var(--shadow);position:relative;overflow:hidden}.video-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.video-placeholder{text-align:center;color:#f4f7f5d9;background:radial-gradient(circle at 30% 30%, #c45c2659, transparent 50%), var(--deep);place-items:center;padding:1.5rem;display:grid;position:absolute;inset:0}.video-placeholder strong{font-family:var(--font-display);margin-bottom:.35rem;font-size:1.25rem;display:block}.video-placeholder span{opacity:.8;font-size:.9rem}.contact-layout{gap:2.5rem;display:grid}@media (width>=860px){.contact-layout{grid-template-columns:.9fr 1.1fr;align-items:start}}.contact-aside p{color:var(--ink-soft);margin:0 0 1.25rem}.contact-links{flex-direction:column;gap:.65rem;display:flex}.contact-links a{color:var(--deep);font-weight:700;text-decoration:none}.contact-links a:hover{color:var(--copper)}.contact-form{gap:.9rem;display:grid}.field{gap:.35rem;display:grid}.field label{color:var(--deep);font-size:.85rem;font-weight:700}.field input,.field textarea{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--ink);background:#ffffffa6;padding:.75rem .85rem}.field textarea{resize:vertical;min-height:7rem}.hp{opacity:0;width:0;height:0;position:absolute;left:-9999px;overflow:hidden}.form-status{min-height:1.4rem;margin:0;font-size:.95rem;font-weight:600}.form-status.is-ok{color:var(--deep-mid)}.form-status.is-err{color:#a33a1a}.form-row{gap:.9rem;display:grid}@media (width>=560px){.form-row{grid-template-columns:1fr 1fr}}.site-footer{border-top:1px solid var(--line);padding:2rem var(--space) 2.5rem;color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;font-size:.95rem;display:flex}.footer-brand{font-family:var(--font-display);color:var(--deep);font-weight:800}.footer-social{gap:1rem;display:flex}.footer-social a{font-weight:600;text-decoration:none}.lightbox{z-index:60;opacity:0;pointer-events:none;transition:opacity .3s var(--ease);background:#0a1c18e0;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox img{border-radius:var(--radius);max-width:min(92vw,1100px);max-height:min(85vh,900px);box-shadow:var(--shadow)}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1.75rem;line-height:1;position:absolute;top:1rem;right:1rem}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}
