:root{--ink:#203c35;--text:#252d29;--muted:#6e736e;--paper:#fff;--wash:#f5f4f0;--line:#dedfd9;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--paper);font:14px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #8b6e38;outline-offset:4px}button{border:0;background:none}svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.4}.announcement{height:29px;background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 4.2%;font-size:10px;letter-spacing:.5px}header{height:100px;display:flex;justify-content:space-between;align-items:center;padding:0 4.2%;border-bottom:1px solid var(--line);position:relative;background:white;z-index:4}.wordmark{font:43px/1 var(--serif);letter-spacing:-2px;display:inline-flex;flex-direction:column;text-align:center;color:#192b25}.wordmark span{font:8px/1.4 Arial,sans-serif;letter-spacing:5px;margin-top:9px;padding-left:5px}header>.wordmark{position:absolute;left:50%;transform:translateX(-50%)}#search-form{display:flex;align-items:center;max-width:260px;border-bottom:1px solid var(--line);height:36px}#search-form button{padding:4px 10px 0 0}#search{border:0;outline:none;max-width:200px;font-size:12px;background:none;width:100%;padding:8px 0}.header-actions{display:flex;align-items:center;gap:30px;font-size:12px}#bag-button{display:flex;align-items:center;gap:7px}.main-nav{display:flex;justify-content:center;gap:54px;min-height:47px;align-items:center;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.3px}.main-nav a{padding:13px 0}.main-nav a:hover{box-shadow:inset 0 -1px var(--ink)}.hero{min-height:600px;height:calc(100svh - 176px);max-height:850px;position:relative;color:white;overflow:hidden;background:#2b3029}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 40%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,#0006 70%,#0009)}.hero-content{position:absolute;z-index:1;bottom:115px;text-align:center;width:100%;padding:0 20px}.eyebrow{font-size:10px;letter-spacing:2.2px;font-weight:600;display:block}.hero h1{font:italic clamp(50px,6.3vw,90px)/1.1 var(--serif);margin:18px 0 30px;font-weight:normal}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;border:1px solid var(--ink);min-height:47px;padding:12px 25px;font-size:11px;font-weight:600;letter-spacing:.5px;transition:.2s}.button:hover{background:var(--ink);color:white}.button.light{border-color:#fffa;color:white}.button.light:hover{background:white;color:var(--ink)}.button.solid{background:var(--ink);color:white}.button.solid:hover{background:#36544b}.hero-bottom{position:absolute;bottom:25px;left:4.2%;right:4.2%;border-top:1px solid #fff5;z-index:1;display:flex;justify-content:space-between;padding-top:16px;font-size:11px}.hero-controls{display:flex;gap:22px}.hero-controls button{color:white;font-size:18px}.section{padding:95px 4.2%}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:35px}.section-title h2,.bespoke h2,.service h1{font:46px/1.15 var(--serif);margin:13px 0 14px;font-weight:normal}.section-title h2 em,.bespoke h2 em{font-weight:normal}.section-title p{margin:0;color:var(--muted);font-size:13px}.subtle-link{font-size:11px;border-bottom:1px solid var(--ink);padding-bottom:6px}.category-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.category-card{background:var(--wash);display:block}.category-card .photo{aspect-ratio:1/1.05;overflow:hidden;display:block}.category-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.category-card:hover img{transform:scale(1.04)}.category-caption{display:flex;align-items:center;gap:15px;padding:20px 22px;border-top:1px solid #e7e7e1}.category-caption small{font-size:10px;color:var(--muted)}.category-caption h3{font:24px var(--serif);margin:0}.category-caption span:last-child{margin-left:auto}.category-pills{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:35px 0 0;font-size:11px}.category-pills a{border-bottom:1px solid #999;padding:4px 0}.edit{background:var(--wash)}.tabs{display:flex;gap:25px;margin-bottom:30px}.tabs button{font-size:11px;padding:5px 0;color:var(--muted)}.tabs button.active{border-bottom:1px solid var(--ink);color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 20px}.product-card{min-width:0}.product-card .product-image{aspect-ratio:1/1.15;position:relative;overflow:hidden;background:#f6f6f3;display:block}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover img{transform:scale(1.035)}.product-card .overlay{position:absolute;bottom:0;left:0;right:0;background:#fffE;padding:12px;text-align:center;font-size:10px;letter-spacing:.5px;opacity:0;transform:translateY(10px);transition:.2s}.product-card:hover .overlay,.product-card:focus-within .overlay{opacity:1;transform:none}.product-meta{padding:13px 2px}.product-meta h3{font-size:12px;font-weight:400;line-height:1.5;margin:0 0 5px}.product-meta .sku{font-size:10px;color:var(--muted);letter-spacing:1px}.product-meta .price{font-size:11px;margin-top:8px}.bespoke{display:grid;grid-template-columns:1fr 1fr;background:#eaece5}.bespoke-photo{min-height:660px}.bespoke-photo img{width:100%;height:100%;object-fit:cover}.bespoke-copy{padding:70px 12%;align-self:center}.bespoke-copy p{color:var(--muted);font-size:13px}.steps{list-style:none;padding:0;margin:30px 0}.steps li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #ccd1c6}.steps small{font-size:10px;color:var(--muted);padding-top:3px}.steps strong{font-weight:500;font-size:12px}.steps p{font-size:11px;margin:4px 0 0}.collection-head{text-align:center;padding:55px 4.2% 30px}.breadcrumb{font-size:10px;color:var(--muted);margin-bottom:25px}.collection-head h1{font:48px/1.1 var(--serif);font-weight:normal;margin:15px 0 28px}.category-nav{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;font-size:11px}.category-nav a{padding-bottom:6px;color:var(--muted)}.category-nav a.active{border-bottom:1px solid var(--ink);color:var(--ink)}.collection-body{padding:10px 4.2% 90px}.filterbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;margin:0 0 30px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px}.filterbar>div{display:flex;gap:18px}.filterbar select{border:0;background:white;max-width:180px;font-size:11px;padding:5px}.loadmore{text-align:center;margin:45px 0 0}.loadmore p{font-size:11px;color:var(--muted)}.empty{text-align:center;padding:75px 20px}.empty h2{font:32px var(--serif);font-weight:normal}.empty p{color:var(--muted);max-width:420px;margin:15px auto 25px}.product-page{padding:28px 4.2% 80px}.product-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:7%}.product-gallery{min-width:0}.main-photo{width:100%;background:var(--wash);aspect-ratio:1;display:block;padding:0}.main-photo img{width:100%;height:100%;object-fit:contain}.thumbnails{display:flex;gap:10px;overflow:auto;padding:15px 0}.thumbnail{width:75px;flex:0 0 75px;height:80px;border:1px solid transparent;padding:0}.thumbnail.active{border-color:var(--ink)}.thumbnail img{width:100%;height:100%;object-fit:cover}.product-info{padding-top:35px;align-self:start}.product-info h1{font:38px/1.2 var(--serif);font-weight:normal;margin:15px 0}.product-info .sku{font-size:11px;color:var(--muted)}.product-price{font-size:21px;margin:24px 0 5px}.product-price small{font-size:10px;color:var(--muted);margin-left:8px}.product-note{font-size:12px;color:var(--muted);margin:0 0 28px}.product-info label{font-size:11px;display:block;margin-top:14px}.product-info select,.product-info input,.product-info textarea{border:1px solid var(--line);padding:11px;width:100%;margin-top:7px;background:white;border-radius:0}.product-info textarea{resize:vertical}.product-info .button{width:100%;margin:20px 0 10px}.quantity-field{max-width:110px}.details{border-top:1px solid var(--line);margin-top:30px;padding-top:18px}.details h2{font:22px var(--serif);font-weight:normal}.details p{font-size:12px;color:var(--muted)}dl{font-size:12px}dl>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #eee;padding:9px 0}dt{color:var(--muted)}dd{margin:0;text-align:right}details{border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}summary{cursor:pointer}details p{color:var(--muted);line-height:1.8}.service{max-width:1100px;margin:auto;padding:80px 5% 100px}.service-intro{max-width:650px;margin:0 auto 60px;text-align:center}.service-intro p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.service-grid section{border-top:1px solid var(--line);padding-top:20px}.service-grid h2{font:25px var(--serif);font-weight:normal}.service-grid p{font-size:13px;color:var(--muted)}footer{background:#203a32;color:#e4e9e3;padding:65px 4.2% 25px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer .wordmark{color:#fff;text-align:left}footer .wordmark span{text-align:center}footer p{font-size:11px;color:#c3cfc6}footer>div:not(:first-child):not(.footer-bottom){display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:11px}footer .eyebrow{color:#9cad9e;margin-bottom:6px}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #ffffff25;padding-top:24px;margin-top:30px;font-size:10px;color:#b9c8bd}.text-button{padding:0;text-align:left;font-size:inherit}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}dialog{border:0;padding:28px;max-height:90svh;width:min(680px,95vw);color:var(--text);box-shadow:0 20px 80px #0003}dialog::backdrop{background:#16241e77}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:20px}.dialog-top h2{font:30px var(--serif);font-weight:normal;margin:8px 0 0}.close{font-size:30px;line-height:1;padding:0 4px}.bag-item{display:grid;grid-template-columns:85px 1fr auto;gap:17px;border-bottom:1px solid var(--line);padding:20px 0;align-items:start}.bag-item img{width:85px;height:95px;object-fit:cover}.bag-item h3{font-size:13px;font-weight:normal;margin:0}.bag-item p{font-size:11px;margin:5px 0;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.bag-item input{width:60px;border:1px solid var(--line);padding:6px;margin-top:5px}.remove{font-size:10px;text-decoration:underline}.bag-total{font-size:14px;display:flex;justify-content:space-between;padding:20px 0}.bag-info{font-size:12px;color:var(--muted);background:var(--wash);padding:15px}.bag-actions{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap}#image-dialog{width:min(1000px,96vw);height:min(900px,94svh);padding:20px}#image-dialog .close{position:absolute;right:20px;top:20px;background:white;z-index:1}#large-image{width:100%;height:100%;object-fit:contain}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,30px);background:var(--ink);color:white;padding:13px 23px;z-index:100;font-size:12px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}.loading{padding:100px;text-align:center}.error{padding:80px;text-align:center}
@media(min-width:1600px){.section,.collection-body,.product-page{max-width:1600px;margin:auto}.hero-content{bottom:140px}}
@media(max-width:900px){header{height:90px}#search-form{max-width:180px}.header-actions{gap:14px}.care{display:none}.main-nav{gap:25px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{min-height:540px;height:72svh}.section{padding:65px 5%}.section-title h2,.bespoke h2{font-size:36px}.bespoke-copy{padding:40px 10%}.bespoke-photo{min-height:530px}.product-layout{gap:5%;grid-template-columns:1.1fr 1fr}.product-info h1{font-size:30px}.product-info{padding-top:10px}.category-caption{padding:16px}.category-caption h3{font-size:21px}.category-caption small{display:none}}
@media(max-width:600px){.announcement{padding:0 5%;height:26px;font-size:9px}.announcement a{display:none}header{height:90px;padding:0 5%;align-items:center}.wordmark{font-size:34px}.wordmark span{font-size:7px;letter-spacing:4px;margin-top:6px}header>.wordmark{top:17px}#search-form{border:0;width:24px}#search-form input{position:absolute;left:5%;right:5%;top:90px;max-width:none;width:90%;padding:12px;background:white;box-shadow:0 5px 10px #0001;display:none}#search-form:focus-within input{display:block}#bag-button{gap:4px}#bag-count{font-size:10px}.main-nav{gap:22px;justify-content:flex-start;overflow:auto;padding:0 5%;white-space:nowrap;font-size:10px;min-height:42px}.main-nav a{padding:12px 0}.hero{min-height:530px;height:72svh}.hero>img{object-position:52% center}.hero-content{bottom:105px}.hero h1{font-size:51px;margin:18px 0 25px}.hero .eyebrow{font-size:8px;letter-spacing:1.8px}.hero-bottom{left:5%;right:5%;bottom:23px}.section{padding:55px 5%}.section-title{display:block;margin-bottom:25px}.section-title h2{font-size:34px}.section-title .subtle-link{display:inline-block;margin-top:15px}.section-title p{font-size:12px}.category-cards{gap:12px;grid-template-columns:1fr 1fr}.category-card:last-child{grid-column:1/-1}.category-card:last-child .photo{aspect-ratio:1.7}.category-caption{padding:14px 12px}.category-caption h3{font-size:20px}.category-pills{gap:15px;font-size:10px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 12px}.product-meta h3{font-size:11px}.product-card .product-image{aspect-ratio:1/1.13}.bespoke{grid-template-columns:1fr}.bespoke-photo{min-height:0;height:420px}.bespoke-copy{padding:45px 7%}.bespoke h2{font-size:37px}.collection-head{padding:38px 5% 20px}.collection-head h1{font-size:37px}.category-nav{justify-content:flex-start;gap:16px;overflow:auto;flex-wrap:nowrap;white-space:nowrap;margin:0 -5.5%;padding:0 5.5% 10px}.collection-body{padding:10px 5% 55px}.filterbar{gap:10px;align-items:flex-start}.filterbar>div{gap:4px;flex-direction:column}.filterbar select{max-width:150px}.product-page{padding:22px 5% 55px}.product-layout{grid-template-columns:1fr;gap:25px}.product-info{padding:0}.product-info h1{font-size:34px}.thumbnail{width:65px;height:70px;flex-basis:65px}.product-info .button{min-height:50px}.service{padding:50px 6% 65px}.service h1{font-size:37px}.service-grid{grid-template-columns:1fr;gap:20px}.service-intro{margin-bottom:35px}footer{grid-template-columns:1fr 1fr;padding:45px 6% 20px;gap:35px}footer>div:first-child{grid-column:1/-1}.footer-bottom{margin-top:0;gap:20px;font-size:9px}dialog{padding:22px 18px}.bag-item{gap:12px;grid-template-columns:65px 1fr auto}.bag-item img{width:65px;height:80px}.bag-actions .button{width:100%}.loading{padding:80px 10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.announcement { min-height: 34px; height: auto; gap: 12px; }
.announcement-copy { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.announcement-actions { display: flex; align-items: center; gap: 22px; flex: 0 0 auto; }
.site-language { font-size: 12px; padding: 3px 6px; color: inherit; background: transparent; border: 1px solid #ffffff60; border-radius: 3px; cursor: pointer; }
.site-language option { color: var(--text); background: var(--paper); }
.site-language:focus-visible { outline: 2px solid white; outline-offset: 2px; }
@media (max-width: 600px) {
  .announcement { min-height: 38px; }
  .site-language { min-height: 30px; }
  .main-nav { justify-content: flex-start; overflow-x: auto; }
  .main-nav a { flex: 0 0 auto; }
}

.payment{max-width:1200px}.payment .service-intro{margin-bottom:35px}.demo-notice{border:1px solid #c9ad65;background:#fbf6e8;padding:20px 24px;margin-bottom:35px;color:#624b16}.demo-notice strong{font-size:12px;letter-spacing:1px}.demo-notice p{font-size:12px;margin:8px 0 0}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px}.payment-grid h2,.payment-followup h2{font:27px var(--serif);font-weight:normal}.payment-grid p,.payment-followup p{font-size:13px;color:var(--muted)}.payment-grid .button{margin:15px 0 0}.bank-example{background:var(--wash);padding:28px}.quote-status{padding:28px 0}.bank-example dl>div{display:block}.bank-example dd{text-align:left;margin-top:4px;overflow-wrap:anywhere;font-size:12px}.bank-example dt{font-size:10px}.payment .email-note{font-size:11px}.payment-followup{border-top:1px solid var(--line);margin-top:45px;padding-top:25px}.payment-followup a:not(.subtle-link){text-decoration:underline}@media(max-width:700px){.payment-grid{grid-template-columns:1fr;gap:15px}.quote-status{padding:10px 0 20px}.bank-example{padding:22px}.demo-notice{padding:18px}}

/* Supplied LOQIN artwork is used unchanged; crop its surrounding whitespace in layout. */
.wordmark{display:block;letter-spacing:normal}.wordmark .brand-crop{display:block;position:relative;overflow:hidden;width:300px;height:108px;margin:0;padding:0;background:white}.brand-crop img{position:absolute;width:355px;height:auto;max-width:none;left:-26px;top:-44px}header{height:130px}header>.wordmark{top:11px}footer .wordmark{width:max-content}footer .wordmark .brand-crop{width:270px;height:98px}footer .brand-crop img{width:320px;left:-24px;top:-40px}.hero{height:calc(100svh - 206px)}@media(max-width:900px){header{height:118px}header>.wordmark{top:7px}.wordmark .brand-crop{width:270px;height:98px}.brand-crop img{width:320px;left:-24px;top:-40px}}@media(max-width:600px){header{height:105px}header>.wordmark{top:12px}.wordmark .brand-crop{width:220px;height:79px}.brand-crop img{width:260px;left:-19px;top:-33px}#search-form input{top:105px}.hero{height:72svh}footer .wordmark .brand-crop{width:250px;height:90px}footer .brand-crop img{width:296px;left:-22px;top:-37px}}
.hero-content { bottom: 88px; }
@media (min-width: 1600px) {
  .hero-content { bottom: 116px; }
}
@media (max-width: 600px) {
  .hero-content { bottom: 86px; }
  .hero h1 { font-size: clamp(38px, 10.5vw, 51px); margin: 10px 0 15px; }
}

/* Editorial home and collection introductions. Catalog and purchase controls use the existing styles above. */
.loqin-home,
.loqin-occasion {
  --editorial-navy: #101b30;
  --editorial-ivory: #f3eee5;
  --editorial-paper: #fcfaf6;
  --editorial-line: #ded7cb;
  --editorial-brass: #8b6641;
  --editorial-muted: #625f59;
  --editorial-gutter: clamp(18px, 4.25vw, 66px);
  --editorial-content: 1312px;
  background: var(--editorial-paper);
}

.loqin-home { padding-top: clamp(15px, 1.7vw, 28px); }

.loqin-home .campaign-grid,
.loqin-home .section,
.loqin-occasion .section,
.loqin-occasion .story {
  width: min(calc(100% - var(--editorial-gutter) * 2), var(--editorial-content));
  margin-inline: auto;
}

.loqin-home .section,
.loqin-occasion .section { padding: clamp(45px, 6.4vw, 90px) 0; }

.loqin-home .section + .section,
.loqin-occasion .section + .section { padding-top: 0; }

.loqin-home .campaign-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(12px, 1.8vw, 26px);
}

.loqin-home .campaign {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: var(--editorial-ivory);
}

.loqin-home .campaign-photo {
  position: relative;
  display: block;
  height: clamp(248px, 26vw, 430px);
  overflow: hidden;
  background: #e3d9cc;
}

.loqin-home .campaign-photo img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 41%;
}

.loqin-home .campaign.evening .campaign-photo { background: #232435; }
.loqin-home .campaign.evening .campaign-photo img { object-position: 52% 38%; }
.loqin-home .campaign-photo:focus-visible { outline-offset: -4px; z-index: 1; }

.loqin-home .campaign-copy {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(20px, 2.1vw, 32px);
}

.loqin-home .campaign-copy :is(h1, h2),
.loqin-occasion .story-copy h1 {
  margin: 0;
  color: var(--editorial-navy);
  font: 400 clamp(33px, 3.5vw, 58px)/1.1 var(--serif);
  overflow-wrap: anywhere;
}

.loqin-home .kicker,
.loqin-occasion .kicker {
  display: block;
  margin: 0 0 11px;
  color: #745336;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1.4;
  text-transform: uppercase;
}

.loqin-home .campaign-copy p:not(.kicker),
.loqin-occasion .story-copy p:not(.kicker) {
  max-width: 45ch;
  margin: 13px 0 21px;
  color: var(--editorial-muted);
  font-size: 14px;
}

.loqin-home .campaign-copy .button { margin-top: auto; }

.loqin-home .campaign-copy .button,
.loqin-occasion :is(.story-copy, .occasion-actions, .notice) .button {
  min-height: 44px;
  padding-inline: 19px;
  border-color: var(--editorial-navy);
  background: var(--editorial-navy);
  color: #fffaf1;
  text-align: center;
}

.loqin-home .campaign-copy .button:hover,
.loqin-occasion :is(.story-copy, .occasion-actions, .notice) .button:hover {
  border-color: #324564;
  background: #324564;
}

.loqin-home .campaign.evening .campaign-copy,
.loqin-occasion .story-evening .story-copy { background: var(--editorial-navy); }

.loqin-home .campaign.evening .campaign-copy :is(h1, h2),
.loqin-occasion .story-evening .story-copy h1 { color: #fdf8ef; }

.loqin-home .campaign.evening .campaign-copy p:not(.kicker),
.loqin-occasion .story-evening .story-copy p:not(.kicker) { color: #e6dfd4; }

.loqin-home .campaign.evening .kicker,
.loqin-occasion .story-evening .kicker { color: #d7ba95; }

.loqin-home .campaign.evening .campaign-copy .button,
.loqin-occasion .story-evening .story-copy .button {
  border-color: #eee1ce;
  background: transparent;
  color: #fcf5e8;
}

.loqin-home .campaign.evening .campaign-copy .button:hover,
.loqin-occasion .story-evening .story-copy .button:hover { background: #fcf5e8; color: var(--editorial-navy); }

.loqin-home .campaign.evening :focus-visible,
.loqin-occasion .story-evening :focus-visible { outline-color: #ead8b7; }

.loqin-home .section-title h2,
.loqin-occasion .section-title :is(h1, h2) { color: var(--editorial-navy); }

.loqin-home .category-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.8vw, 25px);
}

.loqin-home .category-grid .category-card {
  min-width: 0;
  grid-column: auto;
  background: #f8f4ed;
  color: var(--editorial-navy);
}

.loqin-home .category-grid .category-card .photo { aspect-ratio: 1; }
.loqin-home .category-grid .category-card img { object-fit: contain; }
.loqin-home .category-caption { gap: 10px; padding: clamp(12px, 1.5vw, 19px); }
.loqin-home .category-caption h3 {
  margin: 0;
  font-size: clamp(17px, 1.8vw, 23px);
  line-height: 1.25;
  hyphens: auto;
  overflow-wrap: anywhere;
}

.loqin-home .product-card .product-image img,
.loqin-occasion .product-card .product-image img { object-fit: contain; }

.loqin-home .paths,
.loqin-occasion .paths {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 15px;
}

.loqin-home .path-card,
.loqin-occasion .path-card {
  display: block;
  padding: clamp(20px, 2.7vw, 37px);
  border: 1px solid var(--editorial-line);
  background: #fffdf9;
  color: var(--editorial-navy);
}

.loqin-home .path-card h3,
.loqin-occasion .path-card h3 { margin: 0; font: 400 clamp(22px, 2.15vw, 30px)/1.2 var(--serif); }

.loqin-home .path-card p,
.loqin-occasion .path-card p { margin: 12px 0 0; color: var(--editorial-muted); }

.loqin-home a.path-card:hover,
.loqin-occasion a.path-card:hover,
.loqin-occasion .path-card[aria-current='page'] { border-color: var(--editorial-brass); }

.loqin-occasion .path-card[aria-current='page'] { background: var(--editorial-ivory); }

.loqin-occasion .story {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  background: var(--editorial-ivory);
}

.loqin-occasion .story img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: clamp(330px, 32vw, 480px);
  object-fit: cover;
  object-position: 52% 41%;
}

.loqin-occasion .story-custom img { object-fit: contain; }
.loqin-occasion .story-copy { padding: clamp(25px, 4.5vw, 68px); align-content: center; }
.loqin-occasion .occasion-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 20px; }
.loqin-occasion .occasion-disclaimer { max-width: 65ch; margin: 17px 0 0; color: var(--editorial-muted); font-size: 12px; }
.loqin-occasion .notice {
  margin-top: 21px;
  padding: clamp(17px, 2vw, 28px);
  border: 1px solid var(--editorial-line);
  border-left: 2px solid var(--editorial-brass);
  background: var(--editorial-ivory);
}

.loqin-occasion .notice > :first-child { margin-top: 0; }
.loqin-occasion .notice > :last-child { margin-bottom: 0; }

/* The live shell retains its search, language, inquiry bag, and logo layout. */
.announcement, footer { background: #101b30; }
.main-nav {
  min-height: 47px;
  flex-wrap: wrap;
  column-gap: clamp(15px, 3.7vw, 55px);
  row-gap: 0;
  padding-inline: clamp(16px, 4.2vw, 55px);
  color: #16243b;
}

.main-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding-block: 9px;
  line-height: 1.3;
  text-align: center;
}

.main-nav a[aria-current='page'] { box-shadow: inset 0 -1px #8b6641; }

@media (min-width: 901px) and (max-height: 850px) {
  body:has(.loqin-home) header { height: 100px; }
  body:has(.loqin-home) header > .wordmark { top: 8px; }
  body:has(.loqin-home) header .brand-crop { width: 230px; height: 83px; }
  body:has(.loqin-home) header .brand-crop img { width: 272px; left: -20px; top: -34px; }
}

@media (max-width: 860px) {
  .main-nav { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; overscroll-behavior-inline: contain; }
  .main-nav a { flex: 0 0 auto; white-space: nowrap; }
  .main-nav a:focus-visible { outline-offset: -3px; }
}

@media (max-width: 800px) {
  .loqin-home .category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .loqin-home .campaign-copy { padding: 23px; }
}

@media (max-width: 600px) {
  .loqin-home .campaign-grid,
  .loqin-occasion .story { grid-template-columns: minmax(0, 1fr); }

  .loqin-home .campaign-photo { height: auto; aspect-ratio: 1.18; }
  .loqin-home .campaign-copy :is(h1, h2),
  .loqin-occasion .story-copy h1 { font-size: clamp(29px, 8.6vw, 43px); }

  .loqin-occasion .story img { height: auto; min-height: 0; aspect-ratio: 1.18; }
  .loqin-occasion .story-copy { padding: 25px; }
}
