/* Colourway per page: homes in pomegranate and saffron, stores in indigo and turquoise. ikat.js reads these too. */
body{--a:#A80F3A;--b:#F7B500;--c:#16145E;--d:#FFF4DC;--e:#00787A;--ink:#14102F;
  --disp:"Dela Gothic One","Arial Black",sans-serif;--sans:"Instrument Sans",system-ui,sans-serif;
  --pink:conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/18px 51% repeat-x,conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/18px 51% repeat-x;
  background:var(--d);color:var(--ink);font:500 1.0625rem/1.55 var(--sans)}
body.is-dokon{--a:#14126B;--b:#FFD21F;--c:#A3004E;--d:#FFF6E0;--e:#007E86;--ink:#0D0B3A}
.a-wrap{width:min(100% - 2.5rem,1240px);margin-inline:auto}
.a-cloth{position:relative;isolation:isolate;overflow:hidden}
.a-cloth>canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2;image-rendering:pixelated;image-rendering:crisp-edges;image-rendering:pixelated}
.a-cloth::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(20,16,47,.13) 0 1px,transparent 1px 3px)}

/* Hero */
.a-hero{background:var(--a);min-height:min(100vh,900px);padding-bottom:clamp(2rem,5vw,4rem)}
.a-top-strip{background:var(--d);color:var(--ink)}
.a-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0;--logo-h:54px}
.a-addr{display:flex;align-items:center;gap:.4rem;font-weight:600}
.a-phone{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-weight:700;font-size:1.1rem;text-decoration:none;white-space:nowrap}
.a-phone:hover{color:var(--a)}
.a-hero-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,4vw,3rem);margin-top:clamp(1.6rem,5vw,3.6rem)}
.a-label{position:relative;background:var(--c);color:var(--d);padding:clamp(1.6rem,4vw,3.2rem);box-shadow:0 0 0 10px var(--d)}
.a-label::before{content:"";position:absolute;inset:7px;border:2px dashed var(--b);pointer-events:none}
.a-chip{color:var(--b);font-weight:700;margin-bottom:.9rem}
.a-label h1{font:400 clamp(2.15rem,5vw,4.5rem)/1.04 var(--disp)}
.a-label h1 span{display:block}
.a-label h1 span:last-child{color:var(--b)}
.a-sub{margin:1.2rem 0 1.6rem;max-width:32rem;font-size:1.15rem}
.a-money{margin:1.3rem 0 1.6rem}
.a-money b{display:block;font:400 clamp(2.5rem,6vw,5rem)/1.05 var(--disp);color:var(--d)}
.a-money small{display:block;font-size:1.05rem;font-weight:500;max-width:32rem}
.a-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:0 2rem;background:var(--b);color:var(--ink);font-weight:700;font-size:1.1rem;text-decoration:none;box-shadow:5px 5px 0 var(--d);transition:transform .12s,box-shadow .12s}
.a-btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--d)}

/* Diamonds */
.a-dia{position:relative;aspect-ratio:1;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);background:var(--b);--t:3.4%}
.a-dia::after{content:"";position:absolute;inset:0;background:var(--d);clip-path:polygon(50% var(--t),calc(100% - var(--t)) 50%,50% calc(100% - var(--t)),var(--t) 50%,50% var(--t),50% calc(var(--t) + 2.6%),calc(var(--t) + 2.6%) 50%,50% calc(100% - var(--t) - 2.6%),calc(100% - var(--t) - 2.6%) 50%,50% calc(var(--t) + 2.6%))}
.a-dia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:polygon(50% 5.5%,94.5% 50%,50% 94.5%,5.5% 50%)}
.a-hero-dia{filter:drop-shadow(0 16px 0 rgba(20,16,47,.45))}
.a-dia-icon{display:grid;place-items:center;color:var(--ink)}
.a-dia-icon svg{width:30%;height:30%}

/* Intro and form */
.a-intro{background:var(--b);padding:clamp(3.2rem,7vw,6rem) 0}
.a-intro-in{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,6vw,5.5rem);align-items:center}
.a-lede{font:400 clamp(2rem,4.4vw,3.8rem)/1.08 var(--disp);margin-bottom:1.3rem}
.a-body{max-width:36rem;font-size:1.15rem}
.a-form{background:var(--c);color:var(--d);padding:clamp(2rem,4vw,3rem) clamp(1.4rem,3.4vw,2.6rem);-webkit-mask:var(--pink);mask:var(--pink)}
.a-form h2{font:400 clamp(1.8rem,3vw,2.5rem)/1.1 var(--disp);color:var(--b)}
.a-form>p{margin:.5rem 0 1.3rem}
.lf-field{margin-bottom:.9rem}
.lf-field label{display:block;margin-bottom:.3rem;font-weight:700}
.lf-field input{width:100%;height:54px;padding:0 1rem;border:0;background:var(--d);color:var(--ink);font-size:1.05rem;font-weight:600}
.lf-field input:focus{outline:3px solid var(--b);outline-offset:2px}
.lf-field input::placeholder{color:#6B6580}
.lf-phone{display:flex}
.lf-phone span{display:flex;align-items:center;padding:0 .8rem;background:var(--b);color:var(--ink);font-weight:700}
.lf-msg{font-weight:700;color:var(--b);margin-bottom:.5rem}
.lf-btn{width:100%;min-height:58px;border:0;background:var(--b);color:var(--ink);font-weight:700;font-size:1.1rem;cursor:pointer}
.lf-btn:hover{background:var(--d)}
.lf-done h3{font:400 2rem/1.1 var(--disp);color:var(--b)}
.lf-done p{margin-top:.5rem}

/* Gifts */
.a-gifts{padding-top:clamp(3.2rem,7vw,6rem)}
.a-h2{font:400 clamp(2rem,4.6vw,4rem)/1.08 var(--disp);max-width:24ch}
.a-gifts .a-h2{margin-bottom:clamp(1.8rem,4vw,3rem)}
.a-gift-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.a-gift{padding:clamp(1.4rem,2.4vw,2.2rem);display:flex;flex-direction:column}
.a-gift b{font:400 clamp(2.2rem,3.6vw,3.3rem)/1.05 var(--disp);margin-top:1.1rem}
.a-gift span{font-size:1.25rem;font-weight:600;line-height:1.25}
.a-gift-0{background:var(--a);color:var(--d)}
.a-gift-1{background:var(--e);color:#fff}
.a-gift-2{background:var(--c);color:var(--d)}
.a-gift-3{background:var(--b);color:var(--ink)}
.a-gift-3 .a-dia{background:var(--ink);color:var(--b)}
.a-gift-3 .a-dia::after{background:var(--b)}
.a-gift-3 .a-dia-icon svg{position:relative;z-index:1}

.a-band{height:clamp(6rem,14vw,11rem);background:var(--a)}

/* Coupons */
.a-coupons{padding:clamp(3.2rem,7vw,6rem) 0;background:var(--d)}
.a-steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:clamp(1.8rem,4vw,3rem) 0}
.a-steps li{counter-increment:s;display:grid;grid-template-columns:auto 1fr;column-gap:.9rem}
.a-steps li::before{content:counter(s);grid-row:1/3;font:400 3.2rem/1 var(--disp);color:var(--a)}
.a-steps b{font-size:1.2rem;line-height:1.25}
.a-steps span{grid-column:2}
.a-swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;align-items:stretch}
.a-swatch{display:flex;flex-direction:column;padding:2.2rem 1.5rem;-webkit-mask:var(--pink);mask:var(--pink)}
.a-swatch b{font:400 clamp(2.1rem,3.6vw,3.4rem)/1.05 var(--disp)}
.a-swatch strong{font-size:1.3rem;font-weight:700}
.a-swatch-1{background:var(--e);color:#fff}
.a-swatch-2{background:var(--c);color:var(--d)}
.a-swatch-3{background:var(--a);color:var(--d)}
.a-knots{display:flex;gap:.5rem;margin:1.6rem 0 .6rem}
.a-knots i{width:22px;height:30px;background:var(--b);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.a-rules{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 3rem;margin-top:clamp(1.8rem,4vw,3rem);font-size:1.1rem}

/* Date */
.a-day{background:var(--e);color:#fff;padding:clamp(2.6rem,6vw,4.6rem) 0}
.a-day-in{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem 3rem;justify-content:space-between}
.a-day-date{font:400 clamp(2.8rem,8vw,6.8rem)/1 var(--disp)}
.a-day-text{flex:1 1 18rem;max-width:26rem;font-size:1.25rem;font-weight:600;line-height:1.3}
.a-day .a-btn{box-shadow:5px 5px 0 var(--ink)}
.a-day .a-btn:hover{box-shadow:3px 3px 0 var(--ink)}

/* Footer */
.a-foot{background:var(--c);color:var(--d);padding:2.8rem 0}
.a-foot-in{display:flex;flex-wrap:wrap;gap:2rem 4rem;align-items:center;justify-content:space-between}
.a-foot-promo{margin-top:.7rem;font:400 1.5rem/1 var(--disp);color:var(--b)}
.a-foot-links{display:flex;flex-direction:column;gap:.3rem;font-weight:600}
.a-foot a{text-decoration:none}
.a-foot-links a:hover{color:var(--b)}
.cross u{color:var(--b);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
.a-label :focus-visible,.a-form :focus-visible,.a-foot :focus-visible{outline-color:var(--b)}

.dock{background:var(--c);color:var(--d)}
.dock-call{outline:2px solid var(--d);outline-offset:-2px}
.dock-cta{background:var(--b);color:var(--ink)}

@media (max-width:980px){
  .a-gift-grid{grid-template-columns:1fr 1fr}
  .a-intro-in{grid-template-columns:1fr}
  .a-addr{display:none}
}
@media (max-width:760px){
  .a-hero{min-height:0}
  .a-hero-in{grid-template-columns:1fr}
  .a-hero-dia{width:min(100%,380px);margin-inline:auto}
  .a-label{margin:10px}
  .a-steps,.a-rules,.a-swatches{grid-template-columns:1fr}
  .a-steps{gap:1.3rem}
}
@media (max-width:640px){
  .a-top{--logo-h:44px}
  .a-phone{font-size:1rem}
  .a-gift{padding:1.1rem}
  .a-gift span{font-size:1.05rem}
  .a-btn{width:100%}
}
