:root{--ink:#211b17;--ink-soft:#302720;--cedar:#76513b;--gold:#c49a6b;--cream:#f2eadc;--muted:#b9a995;--line:rgba(222,195,160,.2);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 50% 0%,#3a2d23 0,#241e19 38rem,#1d1916 100%);color:var(--cream);font-family:var(--sans);min-height:100vh}.site-header{height:78px;padding:0 clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(25,21,18,.68)}.wordmark{display:flex;align-items:center;gap:12px;color:var(--cream);font-size:11px;letter-spacing:.22em;text-decoration:none;font-weight:700}.wordmark-mark{color:var(--gold);font-size:21px}.back-link{color:#d3c2ae;text-decoration:none;font-size:12px;letter-spacing:.04em}.back-link:hover{color:#fff}.intro{max-width:1000px;margin:0 auto;padding:88px 24px 66px;text-align:center}.eyebrow{margin:0 0 15px;color:var(--gold);font-size:10px;letter-spacing:.25em;font-weight:700}.intro h1{font:500 clamp(48px,8vw,86px)/1.05 var(--serif);letter-spacing:-.04em;margin:0;color:#f5eee3}.intro h1 em{color:#caa77e;font-weight:500}.intro-copy{max-width:510px;margin:22px auto 0;color:#c5b6a5;font-size:14px;line-height:1.8}.intro-rule{display:flex;align-items:center;justify-content:center;gap:18px;margin:32px auto 0;color:#bba68e;font-size:9px;letter-spacing:.2em}.intro-rule i{width:42px;height:1px;background:#967456}.gallery-section,.vote-section{width:min(1120px,calc(100% - 44px));margin:0 auto}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-heading h2{font:500 clamp(27px,4vw,39px)/1.15 var(--serif);margin:0;color:#f1e8db}.section-heading .eyebrow{margin-bottom:9px}.section-note{color:#b7a795;font-size:12px;margin:0 0 4px}.collage-frame{margin:0;padding:12px;background:#33271f;border:1px solid rgba(204,163,119,.38);box-shadow:0 22px 65px rgba(0,0,0,.28)}.pet-collage{display:block;width:100%;height:auto}.collage-frame figcaption{padding:12px 4px 1px;color:#bca78e;text-align:center;font-size:9px;letter-spacing:.19em;text-transform:uppercase}.vote-section{padding-top:92px}.vote-heading{margin-bottom:27px}.pet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.pet-choice{position:relative;display:flex;align-items:center;gap:14px;min-height:68px;padding:14px 16px;background:linear-gradient(135deg,rgba(77,58,43,.76),rgba(45,35,28,.9));border:1px solid rgba(210,177,139,.19);cursor:pointer;transition:border-color .2s,background .2s,transform .2s}.pet-choice:hover{border-color:rgba(207,166,121,.65);transform:translateY(-1px)}.pet-choice[aria-checked="true"]{border-color:var(--gold);background:linear-gradient(135deg,rgba(112,77,52,.85),rgba(57,43,32,.98));box-shadow:inset 0 0 0 1px rgba(196,154,107,.2)}.pet-number{display:grid;place-items:center;flex:0 0 31px;height:31px;border:1px solid rgba(210,177,139,.35);border-radius:50%;color:#d0ad83;font:14px var(--serif)}.pet-name{font-size:13px;font-weight:600;letter-spacing:.02em;color:#f0e6d8}.pet-choice small{display:block;color:#b9a38a;font-size:10px;margin-top:3px}.choice-check{margin-left:auto;width:17px;height:17px;border:1px solid rgba(210,177,139,.45);border-radius:4px;display:grid;place-items:center;color:#211b17;font-size:10px}.pet-choice[aria-checked="true"] .choice-check{background:var(--gold);border-color:var(--gold)}.vote-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;padding-top:22px;border-top:1px solid var(--line)}.privacy-note{color:#b8a895;font-size:11px;line-height:1.6;margin:0}.privacy-note span{color:var(--gold);margin-right:7px}.vote-button{border:0;background:#c49a6b;color:#241c16;padding:15px 23px;font:700 11px var(--sans);letter-spacing:.08em;cursor:pointer;transition:background .2s,opacity .2s}.vote-button span{margin-left:20px;font-size:16px}.vote-button:hover:not(:disabled){background:#d8b58e}.vote-button:disabled{opacity:.42;cursor:not-allowed}.form-message{min-height:22px;color:#d7bd9a;font-size:12px;margin:14px 0 0}.closing-note{text-align:center;margin:92px auto 65px;padding:0 20px}.closing-star{color:var(--gold);font-size:21px}.closing-note p{font:500 clamp(21px,3vw,30px) var(--serif);color:#e8ddcf;margin:13px 0}.closing-sub{color:#a99279;font-size:9px;letter-spacing:.22em}.site-footer{border-top:1px solid var(--line);padding:24px clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;color:#9d8a76;font-size:9px;letter-spacing:.16em}.site-footer span:first-child{color:#d8c6b1;font-weight:700}.site-footer span:last-child{color:var(--gold);font-size:15px}
@media(max-width:760px){.intro{padding:65px 22px 52px}.section-heading{align-items:start;flex-direction:column;gap:8px}.pet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vote-section{padding-top:65px}.site-footer{gap:12px;flex-wrap:wrap}.site-footer span:nth-child(2){order:3;width:100%;text-align:center}.collage-frame{padding:7px}}
@media(max-width:440px){.site-header{height:66px;padding:0 18px}.wordmark{font-size:9px}.back-link{font-size:10px}.gallery-section,.vote-section{width:calc(100% - 30px)}.pet-grid{grid-template-columns:1fr}.pet-choice{min-height:61px}.vote-bottom{align-items:stretch;flex-direction:column}.vote-button{width:100%}.intro-copy{font-size:13px}}


/* Subtle Cottage paw-print decorations */
.gallery-section,
.vote-section {
  position: relative;
  isolation: isolate;
}

.gallery-section::before,
.gallery-section::after,
.vote-section::before,
.vote-section::after {
  content: "";
  position: absolute;
  width: 43px;
  height: 43px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='%23b9a38a'%3E%3Cellipse cx='14' cy='23' rx='6' ry='8' transform='rotate(-25 14 23)'/%3E%3Cellipse cx='28' cy='13' rx='6' ry='8' transform='rotate(-8 28 13)'/%3E%3Cellipse cx='43' cy='17' rx='6' ry='8' transform='rotate(15 43 17)'/%3E%3Cellipse cx='54' cy='29' rx='6' ry='8' transform='rotate(30 54 29)'/%3E%3Cellipse cx='34' cy='43' rx='17' ry='13'/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.34;
  pointer-events: none;
  z-index: -1;
}

.gallery-section::before {
  top: -27px;
  left: -19px;
  transform: rotate(-18deg);
}

.gallery-section::after {
  bottom: -22px;
  right: -18px;
  transform: rotate(24deg);
}

.vote-section::before {
  top: 45px;
  right: -20px;
  transform: rotate(20deg);
}

.vote-section::after {
  bottom: 8px;
  left: -19px;
  transform: rotate(-22deg);
}

@media (max-width: 760px) {
  .gallery-section::before,
  .gallery-section::after,
  .vote-section::before,
  .vote-section::after {
    width: 31px;
    height: 31px;
    opacity: 0.27;
  }

  .gallery-section::before,
  .vote-section::after {
    left: -8px;
  }

  .gallery-section::after,
  .vote-section::before {
    right: -8px;
  }
}
