:root{--ink:#271e35;--brand:#633e78;--coral:#f0796b;--paper:#f7f1ea;--line:#e9ddda;--muted:#726a76;--white:#fffaf5}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{min-height:82px;max-width:1460px;margin:auto;padding:17px clamp(20px,5vw,72px);display:flex;align-items:center;gap:28px;position:relative;z-index:2}.brand{font:700 clamp(20px,2vw,25px) Georgia,serif;white-space:nowrap;letter-spacing:-.6px}.brand-mark{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--coral);color:var(--ink);border-radius:11px;margin-right:4px;font:normal 22px Arial}.site-header nav{display:flex;align-items:center;gap:26px;margin-left:auto;font-size:13px;font-weight:600}.site-header nav a{color:#675b6d;transition:color .2s}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--brand)}.header-cta{display:inline-flex;min-height:43px;align-items:center;justify-content:center;padding:0 20px;background:var(--ink);color:white;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}.header-cta:hover{background:var(--brand)}
.hero{max-width:1460px;margin:0 auto;min-height:575px;padding:45px clamp(20px,5vw,72px) 68px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:30px}.hero-copy{padding:15px 0 24px}.eyebrow{color:var(--brand);font-weight:800;font-size:10px;letter-spacing:2.2px;margin:0}.eyebrow-dot{display:inline-block;width:8px;height:8px;background:var(--coral);border-radius:50%;margin-right:7px}h1,h2,h3,p{overflow-wrap:break-word}h1{font:normal clamp(54px,5.6vw,90px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-4px;max-width:680px;margin:22px 0}h1 em,h2 em{color:var(--brand);font-weight:normal}.intro{max-width:500px;color:#63596b;font-size:16px;line-height:1.7;margin:22px 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 22px;border-radius:999px;font-size:13px;font-weight:800;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--brand);color:white;box-shadow:0 9px 22px #633e7830}.button-outline{border:1px solid #bcadbc;background:transparent;color:var(--ink)}.hero-proof{display:flex;gap:22px;flex-wrap:wrap;margin-top:27px;font-size:11px;color:#766d77;font-weight:600}.hero-proof i{color:var(--coral);margin-right:5px}
.hero-showcase{min-height:480px;position:relative;display:grid;place-items:center}.showcase-halo{position:absolute;width:min(100%,460px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 48% 48%,#f6ba9e 0 35%,#ecddcf 36% 63%,transparent 64%);filter:blur(.3px)}.showcase-phone{width:248px;height:446px;border:8px solid #2a2435;border-radius:35px;overflow:hidden;position:relative;box-shadow:0 30px 58px #3525384d;transform:rotate(5deg);background:#765d71}.showcase-phone video{width:100%;height:100%;object-fit:cover;display:block}.showcase-phone:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#21122a70,transparent 37%,#21122a5d)}.showcase-overlay{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;gap:16px;text-shadow:0 2px 13px #180e2180}.showcase-overlay>span:first-child{font-size:8px;letter-spacing:2px;font-weight:800}.showcase-overlay strong{font:italic 31px/1.1 Georgia,serif}.showcase-pill{border:1px solid #ffffffb0;border-radius:30px;font-size:10px;padding:8px 13px}.showcase-note{position:absolute;right:1%;bottom:55px;display:flex;align-items:center;gap:12px;padding:12px 18px 12px 10px;background:white;border-radius:18px;box-shadow:0 15px 34px #31223026;transform:rotate(-4deg);font-size:11px;line-height:1.5;color:#766979}.showcase-note strong{color:var(--ink);font-size:13px}.note-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:white;background:var(--coral)}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fffaf6}.steps>div{padding:30px clamp(20px,5vw,72px);min-width:0;border-right:1px solid var(--line)}.steps>div:last-child{border-right:0}.step-number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f6e1d8;color:#8b4f52;font-size:11px;font-weight:800;margin-right:9px}.steps strong{font:normal 19px Georgia,serif}.steps p{font-size:12px;color:#786e77;margin:12px 0 0;line-height:1.5}
.collection{max-width:1460px;margin:auto;padding:90px clamp(20px,5vw,72px) 115px;scroll-margin-top:20px}.collection-head{display:flex;align-items:end;justify-content:space-between;gap:24px}.collection h2{font:normal clamp(37px,4vw,58px)/1.1 Georgia,serif;letter-spacing:-1.8px;margin:12px 0}.collection h2 span{display:inline-grid;place-items:center;vertical-align:middle;width:31px;height:31px;background:#eee0e5;border-radius:50%;font:700 12px Inter,Arial,sans-serif;letter-spacing:0;color:var(--brand)}.collection-intro{font-size:14px;color:var(--muted);line-height:1.6}.search-wrap{display:flex;align-items:center;gap:10px;border:1px solid #ded0cf;border-radius:14px;padding:0 16px;color:#9c8395;background:#fffaf7;min-height:50px}.search-wrap input{border:0;outline:0;background:transparent;min-width:230px;padding:12px 0;font-size:14px;color:var(--ink)}.search-wrap:focus-within{outline:3px solid #d9c2df;border-color:var(--brand)}.occasion-control{display:flex;align-items:center;gap:13px;margin:28px 0 21px;color:#5c4c63;font-size:13px;font-weight:700}.occasion-control select{appearance:none;min-height:46px;min-width:230px;border:1px solid #ddcfcf;border-radius:11px;background:#fffaf7;color:var(--ink);font-size:13px;padding:0 40px 0 15px;background-image:linear-gradient(45deg,transparent 50%,var(--brand) 50%),linear-gradient(135deg,var(--brand) 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.filter-heading{display:flex;gap:12px;align-items:baseline;font-size:12px;font-weight:800;color:#5a4b61}.filter-hint{font-size:11px;font-weight:500;color:#8b7c89}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 31px}.filters button{min-height:42px;padding:9px 16px;border:1px solid #e1d3d1;background:#fffbf8;border-radius:24px;color:#61536a;cursor:pointer;font-size:12px;font-weight:700;transition:background .2s,border-color .2s,transform .2s}.filters button:hover{border-color:var(--brand);transform:translateY(-1px)}.filters button[aria-pressed=true]{background:var(--brand);color:white;border-color:var(--brand)}.occasion-control select:focus-visible,.filters button:focus-visible,.card-links a:focus-visible,.art:focus-visible,.button:focus-visible,.header-cta:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:33px 19px}.card{min-width:0;animation:rise .35s ease both}.art{height:320px;border-radius:15px;display:block;position:relative;overflow:hidden;background:var(--paper);box-shadow:0 12px 34px #32243816;transition:transform .3s,box-shadow .3s}.art:hover{transform:translateY(-5px);box-shadow:0 20px 38px #32243826}.art img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#21142c0a 35%,#21142cbd)}.art .art-label{position:absolute;top:14px;left:14px;z-index:1;border-radius:30px;background:#fffaf2e8;color:var(--ink);font-size:10px;font-weight:800;padding:8px 12px}.art .art-text{position:absolute;z-index:1;bottom:17px;left:17px;right:17px;color:white;text-shadow:0 2px 6px #21142c80}.art .art-text strong{display:block;font:normal 24px/1.08 Georgia,serif}.art .art-text small{font-size:10px;letter-spacing:.6px}.card h3{font:normal 20px Georgia,serif;margin:15px 0 6px}.card p{font-size:12px;line-height:1.5;color:#776c77;margin:0}.card-links{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.card-links a{display:inline-flex;align-items:center;min-height:42px;font-size:12px;font-weight:800;color:var(--brand);border-bottom:1px solid #bfa9be;padding:5px 0}.card-links a:hover{color:#8d4b62;border-color:#8d4b62}.card-links .card-buy{background:#ede0ed;border:0;border-radius:24px;padding:7px 13px;white-space:nowrap}.empty-state{padding:40px 10px;color:#746b76;text-align:center}
.closing{background:var(--ink);color:white;padding:48px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:24px}.closing .eyebrow{color:#f5b49e}.closing h2{font:normal clamp(30px,3.3vw,45px) Georgia,serif;margin:12px 0}.closing p:last-child{font-size:13px;color:#d3c8d8;line-height:1.6}.button-light{background:#fff5ed;color:var(--ink);white-space:nowrap}footer{padding:25px clamp(20px,5vw,72px);display:flex;justify-content:space-between;gap:15px;color:#786d79;font-size:11px}footer>span:first-child{font:700 16px Georgia,serif;color:var(--brand)}footer a{text-decoration:underline}
@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1100px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{grid-template-columns:1fr 400px}.hero-showcase{min-height:440px}.showcase-note{right:-1%}}@media(max-width:800px){.site-header{flex-wrap:wrap;gap:11px}.site-header nav{order:3;width:100%;justify-content:center;margin:0;padding-top:6px;gap:24px}.header-cta{margin-left:auto}.hero{grid-template-columns:1fr;padding-top:25px}.hero-copy{max-width:650px}.hero-showcase{min-height:375px}.showcase-phone{height:355px;width:200px}.showcase-halo{width:370px}.showcase-note{right:12%;bottom:15px}.steps{grid-template-columns:1fr 1fr}.steps>div:last-child{grid-column:span 2;border-top:1px solid var(--line)}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-head{align-items:stretch;flex-direction:column}.search-wrap{max-width:440px}.search-wrap input{width:100%}}@media(max-width:520px){.site-header{padding-top:14px}.brand{font-size:18px}.brand-mark{width:29px;height:29px;font-size:18px}.header-cta{font-size:11px;padding:0 15px;min-height:38px}.site-header nav{font-size:11px;gap:16px}.hero{padding-top:30px;padding-bottom:35px;gap:5px}h1{font-size:clamp(47px,12.5vw,62px);letter-spacing:-2.8px}.intro{font-size:14px}.hero-proof{gap:9px 16px}.hero-showcase{min-height:365px}.showcase-halo{width:330px}.showcase-note{right:0;bottom:24px}.steps{grid-template-columns:1fr}.steps>div{padding:18px 22px;border-right:0;border-bottom:1px solid var(--line)}.steps>div:last-child{grid-column:auto;border-top:0;border-bottom:0}.steps p{margin:6px 0 0}.collection{padding-top:55px;padding-bottom:70px}.collection h2{font-size:39px}.cards{grid-template-columns:1fr;gap:28px}.art{height:360px}.occasion-control{align-items:stretch;flex-direction:column;gap:7px}.occasion-control select{width:100%}.filter-heading{justify-content:space-between}.filters button{padding:9px 13px}.closing{flex-direction:column;align-items:flex-start}.closing .button{width:100%}footer{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}


/* Royal Wax Seal Brand Styling */
.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font: 700 clamp(20px, 2vw, 25px) Georgia, serif;
  white-space: nowrap;
  letter-spacing: -0.6px;
  text-decoration: none;
  color: var(--ink);
}
.brand-logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
  filter: drop-shadow(0 2px 5px rgba(0,0,0,0.22));
  vertical-align: middle;
  transition: transform 0.25s ease;
}
.brand:hover .brand-logo {
  transform: scale(1.08) rotate(-3deg);
}
.footer-seal {
  width: 20px;
  height: 20px;
  object-fit: contain;
  vertical-align: middle;
  margin-right: 6px;
  filter: drop-shadow(0 1px 3px rgba(0,0,0,0.25));
}
