@font-face{font-family:"TT Supermolot";src:url("../fonts/TT-Supermolot-Regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"TT Supermolot";src:url("../fonts/TT-Supermolot-Bold.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@import url("https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&display=swap");

:root{
--green-900:#213531;--green-800:#2b453f;--green-700:#3c605a;--green-600:#4d7871;--green-500:#6b948c;--green-100:#dbe6e2;--green-50:#eef3f1;
--gold-700:#96702f;--gold-600:#ba8948;--gold-400:#dcb877;--gold-200:#f4e0ae;--gold-100:#fef5a5;
--blue-600:#4a9ea3;--blue-500:#71c7cb;--blue-200:#c3e8ea;--blue-100:#e3f4f5;
--gray-700:#8b8c8c;--gray-500:#b6b7b7;--gray-300:#dcdcdc;--gray-100:#eeeeec;
--clay-600:#a8734f;--clay-400:#c99a72;--bark-900:#2c2622;--sand-200:#e8dcc7;--sand-100:#f4ede2;--cream-50:#faf6ee;
--white:#ffffff;--black:#1c1c1a;
--surface-page:var(--cream-50);--surface-card:var(--white);--surface-sunken:var(--sand-100);--surface-inverse:var(--green-900);
--text-primary:var(--bark-900);--text-secondary:#5c5750;--text-muted:var(--gray-700);--text-on-dark:var(--cream-50);--text-on-accent:var(--white);
--accent-primary:var(--green-700);--accent-primary-hover:var(--green-800);--accent-gold:var(--gold-600);--accent-blue:var(--blue-500);
--border-subtle:var(--sand-200);--border-default:var(--gray-300);--border-strong:var(--gray-500);
--gradient-gold:linear-gradient(135deg,var(--gold-600) 0%,var(--gold-100) 100%);
--focus-ring:var(--blue-500);

--font-display:"TT Supermolot","Nunito Sans",-apple-system,sans-serif;
--font-heading:"Nunito Sans",-apple-system,BlinkMacSystemFont,sans-serif;
--font-body:"Nunito Sans",-apple-system,BlinkMacSystemFont,sans-serif;
--text-xs:0.8125rem;--text-sm:0.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;
--text-2xl:1.875rem;--text-3xl:2.375rem;--text-4xl:3rem;--text-5xl:4rem;--text-6xl:5.25rem;
--leading-tight:1.08;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.7;
--tracking-tight:-0.01em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-wider:0.12em;
--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-bold:700;--weight-black:900;

--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-xl:32px;--radius-pill:999px;
--shadow-sm:0 1px 2px rgba(44,38,34,0.06);
--shadow-md:0 4px 16px rgba(44,38,34,0.08);
--shadow-lg:0 12px 32px rgba(44,38,34,0.10);
--ease-standard:cubic-bezier(0.4,0,0.2,1);
--duration-fast:150ms;--duration-base:220ms;--duration-slow:400ms;
--site-max:1600px;
}

*{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);color:var(--text-primary);background:var(--surface-page);font-size:var(--text-base);line-height:var(--leading-normal);max-width:100vw;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);margin:0}
a{color:var(--accent-primary);text-decoration:none}
a:hover{color:var(--accent-primary-hover)}
img{max-width:100%}

/* ---------- Nav ---------- */
.ah-header{position:sticky;top:0;z-index:20;background:var(--green-700)}
.ah-header-inner{max-width:var(--site-max);margin:0 auto;display:flex;flex-wrap:wrap;row-gap:12px;align-items:center;justify-content:space-between;padding:20px 48px}
.ah-logo{height:38px;width:auto;display:block}
.ah-nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap;row-gap:10px}
.ah-nav-link{white-space:nowrap;padding:10px 14px;border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-xs);color:var(--cream-50);cursor:pointer;transition:background var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}
.ah-nav-link:hover{background:rgba(250,246,238,0.16);color:#fff}
.ah-nav-link.is-current{color:#fff;background:rgba(250,246,238,0.16)}
.ah-etsy{white-space:nowrap;display:inline-flex;align-items:center;gap:6px;margin-left:10px;padding:10px 16px;border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-xs);color:var(--bark-900);background:var(--gradient-gold);transition:filter var(--duration-base) var(--ease-standard);flex-shrink:0}
.ah-etsy:hover{filter:brightness(1.06);color:var(--bark-900)}

/* ---------- Hero ---------- */
.ah-hero-wrap{padding:32px 48px 0;display:flex;justify-content:center}
.ah-hero{position:relative;height:600px;max-width:var(--site-max);width:100%;border-radius:150px 0 150px 0;overflow:hidden}
.ah-hero > img,.ah-hero > .ah-ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ah-hero-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(33,53,49,0) 35%,rgba(33,53,49,0.55) 100%);pointer-events:none}
.ah-hero-copy{position:absolute;left:56px;bottom:56px;right:56px;max-width:640px;pointer-events:none}
.ah-hero-eyebrow{font-size:var(--text-sm);font-weight:700;letter-spacing:0.14em;white-space:nowrap;text-transform:uppercase;color:var(--gold-100);margin-bottom:14px}
.ah-hero-title{font-family:var(--font-display);font-weight:700;font-size:var(--text-5xl);color:#fff;line-height:var(--leading-tight);margin:0}
.ah-hero-sub{color:rgba(255,255,255,0.9);font-size:var(--text-lg);margin:18px 0 0;line-height:var(--leading-relaxed)}

/* ---------- Sections ---------- */
.ah-section{padding:88px 48px 96px;display:flex;justify-content:center}
.ah-inner{max-width:var(--site-max);width:100%}
.ah-sunken{background:var(--surface-sunken)}
.ah-eyebrow{font-weight:700;font-size:var(--text-sm);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--accent-gold);margin-bottom:12px}
.ah-h2{font-size:var(--text-3xl);margin:0 0 16px;line-height:var(--leading-tight)}
.ah-body{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0 0 24px;text-wrap:pretty}
.ah-intro{max-width:680px;margin-bottom:40px}

/* ---------- Value props ---------- */
.ah-valueprops{display:grid;grid-template-columns:repeat(4,minmax(160px,220px));gap:40px}
.ah-vp{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.ah-vp svg{width:32px;height:32px;color:var(--green-700)}
.ah-vp span{font-family:var(--font-heading);font-weight:600;font-size:var(--text-sm)}

/* ---------- About row ---------- */
.ah-about-grid{max-width:var(--site-max);width:100%;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:56px;align-items:center}
.ah-about-img{min-width:0;width:100%;height:340px;border-radius:22px;overflow:hidden}
.ah-about-img img,.ah-about-img .ah-ph{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- Galleries ---------- */
.ah-award-scroll{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y;overscroll-behavior-x:contain;cursor:grab}
.ah-award-scroll > .ah-tile{flex:0 0 700px;scroll-snap-align:start}
.ah-tile{position:relative;border-radius:var(--radius-lg);overflow:hidden}
.ah-tile img,.ah-tile .ah-ph{display:block;width:100%;object-fit:cover}
.ah-tile-label{position:absolute;left:16px;bottom:16px;background:var(--surface-card);padding:8px 18px;border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);font-size:var(--text-xs);font-weight:600;color:var(--text-primary)}
.ah-h-award img,.ah-h-award .ah-ph{height:340px}
.ah-h-gift img,.ah-h-gift .ah-ph{height:280px}
.ah-h-photo img,.ah-h-photo .ah-ph{height:460px}
.ah-two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.ah-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

/* image placeholder, replace with a real <img> */
.ah-ph{background:repeating-linear-gradient(45deg,var(--sand-100),var(--sand-100) 12px,var(--sand-200) 12px,var(--sand-200) 24px);display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;font-size:var(--text-xs);font-weight:600;color:var(--text-muted)}

/* ---------- Buttons ---------- */
.ah-btn{font-family:var(--font-heading);font-weight:700;font-size:var(--text-base);padding:12px 24px;border:none;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background var(--duration-base) var(--ease-standard),filter var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}
.ah-btn:hover{filter:brightness(0.94)}
.ah-btn:active{transform:scale(0.98)}
.ah-btn-primary{background:var(--accent-primary);color:var(--text-on-accent)}
.ah-btn-primary:hover{color:var(--text-on-accent)}
.ah-btn-secondary{background:transparent;color:var(--accent-primary);border:1.5px solid var(--accent-primary)}
.ah-btn-secondary:hover{color:var(--accent-primary)}
.ah-btn-row{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- Community card ---------- */
.ah-community{background:var(--surface-sunken);border-radius:var(--radius-lg);padding:48px 56px;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.ah-community p{font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0;flex:1 1 320px;text-wrap:pretty}
.ah-community svg{width:36px;height:36px;color:var(--green-700);flex-shrink:0}

/* ---------- Footer ---------- */
.ah-footer{background:var(--green-900);color:var(--cream-50)}
.ah-footer-grid{max-width:var(--site-max);margin:0 auto;padding:72px 48px 40px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:48px}
.ah-footer p{font-size:var(--text-sm);color:rgba(250,246,238,0.75);line-height:var(--leading-relaxed);max-width:320px;margin:0}
.ah-footer-col{display:flex;flex-direction:column;gap:12px;font-size:var(--text-sm)}
.ah-footer-head{font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;font-size:var(--text-xs);color:var(--gold-100);margin-bottom:4px}
.ah-footer a{color:var(--cream-50);opacity:0.85}
.ah-footer a:hover{color:#fff;opacity:1}
.ah-footer a.gold{color:var(--gold-100);opacity:1}
.ah-social{display:flex;gap:16px;margin-top:8px}
.ah-copyright{border-top:1px solid rgba(250,246,238,0.15);padding:20px 48px;text-align:center;font-size:var(--text-xs);color:rgba(250,246,238,0.6)}

/* ---------- Contact modal ---------- */
.ah-modal{position:fixed;inset:0;z-index:100;background:rgba(33,53,49,0.55);display:flex;align-items:center;justify-content:center;padding:24px}
[hidden]{display:none !important}
.ah-modal[hidden]{display:none !important}
.ah-modal-box{background:var(--surface-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:36px 36px 32px;width:100%;max-width:520px;max-height:88vh;overflow-y:auto}
.ah-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px}
.ah-modal-head h3{font-size:var(--text-2xl);margin:0;line-height:var(--leading-tight)}
.ah-modal-close{border:none;background:none;cursor:pointer;font-size:26px;line-height:1;color:var(--text-muted);padding:0}
.ah-form{display:flex;flex-direction:column;gap:18px}
.ah-form p{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}
.ah-field{display:flex;flex-direction:column;gap:6px}
.ah-field span{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500}
.ah-field input,.ah-field textarea{font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 16px;background:var(--surface-card);outline:none;width:100%;resize:vertical}
.ah-field input:focus,.ah-field textarea:focus{border-color:var(--focus-ring)}
.ah-sent{display:flex;flex-direction:column;gap:20px;padding:12px 0 4px}
.ah-sent p{font-size:var(--text-base);color:var(--text-secondary);line-height:var(--leading-relaxed);margin:0}

/* ---------- Responsive ---------- */
@media (max-width:860px){
  .ah-header-inner{padding:14px 20px}
  .ah-logo{height:30px}
  .ah-nav-link{padding:8px 10px;font-size:11px}
  .ah-etsy{margin-left:4px;padding:8px 12px;font-size:11px}
  .ah-hero-wrap{padding:16px 16px 0}
  .ah-hero{height:420px;border-radius:70px 0 70px 0}
  .ah-hero-copy{left:24px;bottom:28px;right:24px}
  .ah-hero-eyebrow{font-size:11px}
  .ah-hero-title{font-size:32px}
  .ah-hero-sub{font-size:15px}
  .ah-section{padding-left:20px;padding-right:20px}
  .ah-valueprops{grid-template-columns:repeat(2,1fr);gap:28px}
  .ah-about-grid{grid-template-columns:1fr;gap:28px}
  .ah-about-img{height:260px}
  .ah-two-col,.ah-three-col{grid-template-columns:1fr}
  .ah-award-scroll > .ah-tile{flex:0 0 82%}
  .ah-h-photo img,.ah-h-photo .ah-ph{height:300px}
  .ah-community{padding:32px 24px}
  .ah-footer-grid{grid-template-columns:1fr;gap:32px;padding:48px 20px 32px}
}
@media (max-width:480px){
  .ah-hero{height:340px}
  .ah-hero-title{font-size:26px}
}
