:root{--color-primary: #C2410C;--color-primary-dark: #9A300A;--color-on-primary: #FFFFFF;--color-accent: #F59E0B;--color-bg: #FFFBF5;--color-surface: #FFF1E0;--color-text: #292524;--color-muted: #57534E;--color-border: rgba(41, 37, 36, .12);--color-ink: #241f1a;--color-ink-soft: #6b5d52;--color-clay: #b6533a;--color-clay-dark: #8f4029;--color-saffron: #d39a3c;--color-paper: #fffbf5;--color-white: #ffffff;--color-sand: #f4e7d3;--color-sage: #cfe0c9;--color-line: rgba(38, 55, 47, .14);--radius-card: 1.5rem;--shadow-soft: 0 1.25rem 3rem -1.75rem rgba(41, 37, 36, .38);--shadow-lifted: 0 1.75rem 4rem -2rem rgba(41, 37, 36, .45);--font-heading: "Plus Jakarta Sans", sans-serif;--font-body: "Inter", sans-serif;--header-height: 4.5rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg)}body{min-width:320px;margin:0;overflow-x:hidden;color:var(--color-text);background:var(--color-bg);font-family:var(--font-body);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}address{font-style:normal}h1,h2,h3{margin:0;font-family:var(--font-heading);line-height:1.12}p{margin:0}ul{margin:0;padding:0}.container{width:100%;max-width:72.5rem;margin:0 auto;padding:0 1.25rem}section{scroll-margin-top:calc(var(--header-height) + 1rem);padding:4.5rem 0}.skip-link{position:absolute;top:.75rem;left:-9999px;z-index:100;padding:.75rem 1rem;border-radius:.75rem;background:var(--color-primary);color:var(--color-on-primary);font-weight:700}.skip-link:focus{left:1rem}a:focus-visible,button:focus-visible{outline:3px solid var(--color-accent);outline-offset:3px;border-radius:.5rem}.eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:.85rem;color:var(--color-primary);font-size:.74rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{width:1.75rem;height:2px;border-radius:99px;background:var(--color-accent);content:""}.section-heading{max-width:42rem;margin-bottom:2.25rem}.section-heading.centered{margin-right:auto;margin-left:auto;text-align:center}.section-heading.centered .eyebrow{justify-content:center}.section-title{font-size:clamp(1.9rem,5vw,3rem);letter-spacing:-.04em}.section-lede{margin-top:.85rem;color:var(--color-muted);font-size:1rem}.btn{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;gap:.55rem;padding:.75rem 1.15rem;border:2px solid transparent;border-radius:.85rem;font-size:.94rem;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 .8rem 1.5rem -1rem #c2410cbf}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{border-color:var(--color-primary);background:transparent;color:var(--color-primary)}.btn-secondary:hover{background:#c2410c14}@media(min-width:600px){.container{padding-right:2rem;padding-left:2rem}}@media(min-width:820px){section{padding:6rem 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.reviews-section{background:var(--color-ink);color:#fff;position:relative;overflow:hidden}.reviews-section .eyebrow{color:#f6c878;font-weight:800;letter-spacing:.16em}.reviews-section .section-title{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.4)}.reviews-section .section-lede{color:#f3ebdd!important;font-size:1.05rem;line-height:1.6;font-weight:500}.reviews-header{display:flex;flex-direction:column;gap:2rem;margin-bottom:2.75rem}@media(min-width:900px){.reviews-header{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:3rem}}.reviews-header .section-heading{margin-bottom:0;max-width:40rem}.google-badge{display:flex;flex-direction:column;gap:1rem;padding:1.4rem 1.6rem;border:1.5px solid rgba(246,200,120,.45);border-radius:1.25rem;background:#1c2b24;box-shadow:0 12px 32px -8px #0000008c,inset 0 1px #ffffff1a;min-width:min(100%,21rem);flex-shrink:0}.google-badge-top{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.google-badge-rating{display:flex;align-items:center;gap:.85rem}.badge-score{font-family:var(--font-heading);font-size:3.1rem;line-height:.9;color:#fff;letter-spacing:-.03em;font-weight:700}.badge-stars-col{display:flex;flex-direction:column;gap:.2rem}.badge-stars{color:#ffc947;font-size:1.05rem;letter-spacing:.12em;text-shadow:0 1px 4px rgba(0,0,0,.3)}.badge-sub{font-size:.72rem;font-weight:800;color:#f6c878;letter-spacing:.05em;text-transform:uppercase}.google-badge-count{display:flex;flex-direction:column;align-items:flex-end;text-align:right;border-left:1.5px solid rgba(246,200,120,.3);padding-left:1.25rem}.google-badge-count strong{font-family:var(--font-heading);font-size:1.85rem;line-height:1;color:#ffc947}.google-badge-count span{font-size:.72rem;font-weight:600;color:#e6dccd;white-space:nowrap}.google-badge-link{display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.85rem;border-top:1px solid rgba(246,200,120,.25);color:#fff;font-size:.82rem;font-weight:800;text-decoration:none;transition:color .18s ease,transform .18s ease}.google-badge-link:hover{color:#ffc947;transform:translate(2px)}.reviews-carousel{position:relative;outline:none}.reviews-carousel:focus-visible{outline:2px solid #FFC947;outline-offset:4px;border-radius:var(--radius-card)}.carousel-viewport{overflow:hidden;border-radius:var(--radius-card)}.carousel-track{display:flex;transition:transform .45s cubic-bezier(.25,1,.5,1);will-change:transform}.review-card{flex:0 0 100%;min-width:0;padding:0}.review-card-inner{display:flex;flex-direction:column;gap:1.6rem;padding:2rem 1.75rem;border:1.5px solid rgba(246,200,120,.4);border-radius:var(--radius-card);background:#1c2b24;box-shadow:0 16px 40px -12px #0009,inset 0 1px #ffffff14}@media(min-width:768px){.review-card-inner{padding:2.5rem 2.75rem;gap:2rem}}.review-author-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:1.25rem;border-bottom:1px solid rgba(255,255,255,.12)}.author-info{display:flex;align-items:center;gap:1rem;min-width:0}.author-avatar{position:relative;width:3.1rem;height:3.1rem;flex:0 0 3.1rem;border-radius:50%;overflow:hidden;background:var(--color-clay);color:#fff;display:grid;place-items:center;font-size:.95rem;font-weight:800;box-shadow:0 4px 12px #0006;border:2px solid #FFC947}.author-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.author-avatar img[hidden]{display:none}.author-meta{display:flex;flex-direction:column;gap:.25rem;min-width:0}.author-name{color:#fff!important;font-size:1.08rem;font-weight:800;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .18s ease}.author-name:hover{color:#ffc947!important}.author-tags{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem;color:#e2d7c5!important;font-size:.8rem;font-weight:600}.author-dot{color:#f6c878;font-weight:800}.author-badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:99px;background:#f6c8782e;border:1px solid rgba(246,200,120,.4);color:#ffd478!important;font-weight:800;font-size:.72rem;letter-spacing:.02em}.review-stars-pill{display:inline-flex;align-items:center;padding:.4rem .85rem;border-radius:99px;background:#ffffff17;border:1px solid rgba(246,200,120,.35)}.stars-gold{color:#ffc947;font-size:1.05rem;letter-spacing:.14em;text-shadow:0 1px 4px rgba(0,0,0,.4)}.review-content{display:flex;flex-direction:column;gap:1.75rem}@media(min-width:860px){.review-content.has-photos{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:2.5rem}}.review-quote-wrap{position:relative;min-width:0;padding-left:.25rem}.quote-mark{position:absolute;top:-1.8rem;left:-.65rem;font-family:var(--font-heading);font-size:5rem;line-height:1;color:#f6c878;opacity:.35;pointer-events:none;-webkit-user-select:none;user-select:none}.review-quote{position:relative;margin:0;padding:0}.review-text{color:#fffdf9!important;font-size:clamp(1.02rem,1.45vw,1.15rem);line-height:1.75;font-weight:450;white-space:pre-line;letter-spacing:.005em}.review-gallery{display:flex;gap:.85rem;flex-wrap:wrap;align-self:flex-start}.review-gallery-thumb{display:block;position:relative;width:5.75rem;height:5.75rem;flex:0 0 5.75rem;border-radius:.9rem;overflow:hidden;border:2px solid rgba(246,200,120,.35);box-shadow:0 6px 16px #0006;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}@media(min-width:600px){.review-gallery-thumb{width:6.5rem;height:6.5rem;flex:0 0 6.5rem}}.review-gallery-thumb:hover{transform:translateY(-3px) scale(1.04);border-color:#ffc947;box-shadow:0 10px 24px #0000008c}.review-gallery-thumb img{width:100%;height:100%;object-fit:cover}.review-gallery-thumb img[hidden]{display:none}.carousel-nav{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;margin-top:1.75rem;padding:0 .5rem}.nav-btn{display:grid;place-items:center;width:3.1rem;height:3.1rem;flex:0 0 3.1rem;border-radius:50%;border:1.5px solid rgba(246,200,120,.5);background:#1c2b24;color:#fff!important;cursor:pointer;font-size:1.2rem;font-weight:700;box-shadow:0 4px 14px #0006;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.nav-btn:hover{background:#ffc947;border-color:#ffc947;color:#1c2b24!important;transform:scale(1.08);box-shadow:0 6px 20px #ffc94766}.carousel-dots{display:flex;align-items:center;gap:.5rem}.dot-btn{display:grid;place-items:center;padding:.5rem;background:transparent;border:0;cursor:pointer}.dot-indicator{display:block;width:.55rem;height:.55rem;border-radius:99px;background:#ffffff59;transition:width .22s ease,background-color .22s ease}.dot-btn:hover .dot-indicator,.dot-btn.active .dot-indicator{width:1.6rem;background:#ffc947;box-shadow:0 0 10px #ffc94799}.reviews-fallback{text-align:center;padding:2.5rem 1rem;color:#e2d7c5}.reviews-fallback p{margin-bottom:1.25rem;font-size:1rem}
