*,*::before,*::after{box-sizing:border-box;}
:root{
  --ink:#1c1712;
  --ink-soft:#5a5044;
  --dusk:#2c2438;
  --dusk-2:#231d2c;
  --gold:#c68a2e;
  --gold-light:#e7b563;
  --gold-dim:#8a611f;
  --clay:#a8461f;
  --sand:#f1e6d2;
  --paper:#fbf7ef;
  --chip:#f5f3ee;
  --line:rgba(28,23,18,0.12);
}
html{scroll-behavior:smooth;}
body{
  font-family:'Public Sans',sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
.font-display{font-family:'Big Shoulders Display',sans-serif;}
.tracking-tightish{letter-spacing:-0.02em;}
.tracking-wideish{letter-spacing:0.14em;}

/* grain texture */
.grain{position:relative;}
.grain::after{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:0.05;mix-blend-mode:overlay;z-index:1;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)'/%3E%3C/svg%3E");
}

.shadow-card{box-shadow:0 1px 1px rgba(28,23,18,.04), 0 8px 20px -8px rgba(28,23,18,.16), 0 24px 48px -24px rgba(198,138,46,.28);}
.shadow-card-hover{box-shadow:0 1px 1px rgba(28,23,18,.05), 0 14px 28px -10px rgba(28,23,18,.22), 0 30px 56px -20px rgba(198,138,46,.38);}
.shadow-gold{box-shadow:0 10px 24px -8px rgba(198,138,46,.45), 0 2px 8px rgba(198,138,46,.28);}
.shadow-gold-hover{box-shadow:0 14px 30px -8px rgba(198,138,46,.55), 0 4px 12px rgba(198,138,46,.35);}
.shadow-header{box-shadow:0 1px 0 rgba(28,23,18,.06), 0 12px 24px -16px rgba(28,23,18,.18);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  font-weight:700;letter-spacing:.02em;border-radius:.6rem;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1), box-shadow .35s cubic-bezier(.34,1.56,.64,1), background-color .25s ease;
}
.btn-primary{background:linear-gradient(180deg,var(--gold-light),var(--gold));color:var(--ink);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(198,138,46,.55),0 4px 12px rgba(198,138,46,.35);}
.btn-primary:active{transform:translateY(0px) scale(.98);}
.btn-ghost{border:1.5px solid rgba(251,247,239,.4);color:var(--paper);background:rgba(251,247,239,.06);}
.btn-ghost:hover{transform:translateY(-2px);background:rgba(251,247,239,.14);border-color:rgba(251,247,239,.65);}
.btn-ghost:active{transform:translateY(0);}
.btn:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px;}

.navlink{position:relative;color:var(--ink-soft);transition:color .25s ease;}
.navlink::after{content:'';position:absolute;left:0;bottom:-4px;width:0%;height:2px;background:var(--gold);transition:width .3s cubic-bezier(.34,1.56,.64,1);}
.navlink:hover{color:var(--ink);}
.navlink:hover::after{width:100%;}
.navlink:focus-visible{outline:2px solid var(--gold);outline-offset:4px;border-radius:2px;}
.navlink.is-active{color:var(--ink);}
.navlink.is-active::after{width:100%;}

.card{
  background:var(--paper);border:1px solid var(--line);border-radius:1rem;
  transition:transform .4s cubic-bezier(.34,1.2,.64,1), box-shadow .4s cubic-bezier(.34,1.2,.64,1), border-color .4s ease;
}
.card:hover{transform:translateY(-6px);border-color:rgba(198,138,46,.35);}

.icon-badge{
  width:3.25rem;height:3.25rem;border-radius:.85rem;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(155deg,var(--sand),var(--chip));color:var(--gold-dim);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6), 0 6px 14px -8px rgba(28,23,18,.35);
  transition:background .4s ease, color .4s ease, transform .4s cubic-bezier(.34,1.56,.64,1);
}
.card:hover .icon-badge{background:linear-gradient(155deg,var(--gold),var(--gold-dim));color:var(--paper);transform:scale(1.06) rotate(-2deg);}

.logo-chip{background:var(--chip);border-radius:.85rem;box-shadow:0 4px 14px -6px rgba(28,23,18,.25), inset 0 0 0 1px rgba(28,23,18,.05);overflow:hidden;}

.horizon{display:block;width:100%;height:auto;position:relative;z-index:2;}

.field{
  width:100%;background:rgba(251,247,239,.06);border:1.5px solid rgba(251,247,239,.22);
  border-radius:.6rem;padding:.85rem 1rem;color:var(--paper);
  transition:border-color .25s ease, background-color .25s ease;
}
.field::placeholder{color:rgba(251,247,239,.45);}
.field:focus{outline:none;border-color:var(--gold-light);background:rgba(251,247,239,.1);}

.pill{
  display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);
  border-radius:999px;padding:.35rem .85rem;font-size:.78rem;font-weight:600;letter-spacing:.02em;
}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important;}
  [data-hero-reveal]{opacity:1;transform:none;}
  html{scroll-behavior:auto;}
}

#mobile-menu{transition:max-height .4s cubic-bezier(.16,1,.3,1), opacity .3s ease;}

.hero-sky{
  background:linear-gradient(180deg, #241a2e 0%, #3a2740 20%, #6b3a35 42%, #b56a35 62%, #d99a4a 76%, #e9b968 88%, #f0c67e 100%);
}

.hero-plane{
  background-image:linear-gradient(180deg, rgba(28,23,18,.55) 0%, rgba(28,23,18,.35) 45%, rgba(28,23,18,.75) 100%), url('ASSETS/360_F_1899785230_Jftr60j9Q839Qr9tXoB8MZPV01nxVMxF.jpg');
  background-size:cover;
  background-position:75% center;
  background-repeat:no-repeat;
}

.logo-mark{object-fit:cover;object-position:50% 12%;}

.site-header{background-color:rgba(251,247,239,.94);}

[data-hero-reveal]{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1);}
[data-hero-reveal].is-visible{opacity:1;transform:translateY(0);}

/* utility bar */
.util-bar{background:var(--ink);color:rgba(251,247,239,.75);font-size:.78rem;}
.util-bar a:hover{color:var(--gold-light);}

/* dropdown nav */
.has-dropdown{position:relative;}
.dropdown-panel{
  position:absolute;top:100%;left:50%;transform:translate(-50%,8px);min-width:15rem;
  background:var(--paper);border:1px solid var(--line);border-radius:1rem;padding:.6rem;
  box-shadow:0 1px 1px rgba(28,23,18,.04), 0 14px 28px -10px rgba(28,23,18,.22), 0 30px 56px -20px rgba(198,138,46,.3);
  opacity:0;pointer-events:none;transition:opacity .25s ease, transform .25s ease;
}
.has-dropdown:hover .dropdown-panel, .has-dropdown:focus-within .dropdown-panel{opacity:1;pointer-events:auto;transform:translate(-50%,4px);}
.dropdown-panel a{display:block;padding:.6rem .85rem;border-radius:.6rem;color:var(--ink-soft);font-weight:600;font-size:.9rem;transition:background .2s ease, color .2s ease;}
.dropdown-panel a:hover{background:var(--sand);color:var(--ink);}
.dropdown-caret{transition:transform .25s ease;}
.has-dropdown:hover .dropdown-caret{transform:rotate(180deg);}

/* carrier badge frames (no background/border — logos sit flush) */
.carrier-frame{display:flex;align-items:center;justify-content:center;overflow:hidden;}
.carrier-frame img{max-height:3.25rem;width:auto;object-fit:contain;}

/* footer hours table */
.hours-cell{border-radius:.85rem;padding:.6rem .4rem;text-align:center;background:rgba(251,247,239,.04);}
.hours-cell.is-today{background:linear-gradient(155deg,var(--gold),var(--gold-dim));color:var(--ink);}

/* light-background form fields (tracking widget) */
.field-light{background:var(--paper);border:1.5px solid var(--line);color:var(--ink);}
.field-light::placeholder{color:var(--ink-soft);}
.field-light:focus{outline:none;border-color:var(--gold);background:var(--paper);}

/* sub-page header band */
.page-hero{background:linear-gradient(160deg, var(--ink) 0%, var(--dusk) 60%, #3a2740 100%);}
