/* HoiWeb modern-warm. Colours, fonts and spacing live in theme.json (Design → Stile);
   this file only adds named block styles and details. :where() keeps editor settings in charge. */
:root{--hw-paper:var(--wp--preset--color--cream);--hw-surface:var(--wp--preset--color--surface);--hw-ink:var(--wp--preset--color--ink);--hw-muted:var(--wp--preset--color--muted);--hw-rule:var(--wp--preset--color--rule);--hw-blue:var(--wp--preset--color--violet);--hw-body:var(--wp--preset--font-family--body);--hw-mono:var(--wp--preset--font-family--mono);--hw-display:var(--wp--preset--font-family--display)}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{-webkit-font-smoothing:antialiased}
:where(h1,h2,h3,h4){text-wrap:balance}:where(p){text-wrap:pretty}
:where(h1,h2,h3,h4) em{font-style:italic;font-weight:400;color:var(--wp--preset--color--violet)}
:where(.has-plum-background-color) :where(h1,h2,h3,h4) em{color:var(--wp--preset--color--lilac-deep)}
:focus-visible{outline:3px solid var(--wp--preset--color--violet);outline-offset:3px}
a{text-underline-offset:.18em}
.hw-muted{color:var(--wp--preset--color--muted)}
.has-plum-background-color .hw-muted,.has-plum-background-color .is-style-eyebrow{color:var(--wp--preset--color--lilac-deep);opacity:1}
:where(.has-plum-background-color) a:where(:not(.wp-element-button)){color:var(--wp--preset--color--lime)}

/* Header */
.hw-header{border-bottom:1px solid var(--wp--preset--color--rule)}
.hw-brand{gap:12px!important}.hw-brand-text .wp-block-site-title{line-height:1}.hw-brand-claim{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.01em;color:var(--wp--preset--color--violet);white-space:nowrap}.hw-logo-mark{margin:0}.hw-logo-mark img{display:block}
.hw-brand .wp-block-site-title a{color:var(--wp--preset--color--plum);text-decoration:none}
.hw-nav{margin-left:auto}.hw-nav .wp-block-navigation-item__content{text-decoration:none}
.hw-nav .wp-block-navigation-item__content:hover,.hw-nav .current-menu-item>.wp-block-navigation-item__content{text-decoration:underline;text-underline-offset:.45em}
.hw-header-cta .wp-block-button__link{padding:11px 18px;white-space:nowrap}
@media(min-width:1025px){.hw-nav .wp-block-navigation__responsive-container-open{display:none!important}.hw-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:block!important}}
@media(max-width:1024px){.hw-nav .wp-block-navigation__responsive-container-open{display:flex!important;min-width:44px;min-height:44px;align-items:center;justify-content:center}.hw-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.hw-nav{order:3;margin-left:0}}
@media(max-width:480px){.hw-brand-claim{display:none}.hw-header-cta .wp-block-button__link{font-size:.8125rem!important;padding:10px 12px}.hw-brand .wp-block-site-title{font-size:1.5rem!important}.hw-logo-mark img{width:28px!important;height:28px!important}}

/* Named block styles (Block → Stile) */
:where(.wp-block-group.is-style-card){border-radius:8px;padding:clamp(22px,3vw,32px)}
.wp-block-group.is-style-card.is-vertical{align-items:stretch}
:where(.is-style-eyebrow){font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--wp--preset--color--violet)}
:where(.is-style-handwritten){font-family:var(--wp--preset--font-family--hand);font-size:1.5rem;line-height:1.35;color:var(--wp--preset--color--violet);transform:rotate(-1.5deg);transform-origin:left center}
:where(.has-plum-background-color) :where(.is-style-handwritten){color:var(--wp--preset--color--lime)}
:where(.is-style-price){font-family:var(--wp--preset--font-family--display);font-size:clamp(2.5rem,3.6vw,3.25rem);line-height:1;font-variant-numeric:tabular-nums}
:where(.wp-block-image.is-style-browser){border:1px solid var(--wp--preset--color--rule);border-radius:8px;overflow:hidden;background:var(--wp--preset--color--white)}
:where(.wp-block-image.is-style-browser)::before{content:"";display:block;height:22px;border-bottom:1px solid var(--wp--preset--color--rule);background:radial-gradient(circle at 12px 11px,#d9c9df 3px,transparent 3.5px),radial-gradient(circle at 24px 11px,#d4dd6e 3px,transparent 3.5px),radial-gradient(circle at 36px 11px,#b9c4a4 3px,transparent 3.5px)}
.wp-block-image.is-style-browser img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top}
:where(.wp-block-list.is-style-steps){list-style:none;padding:0;margin:0;counter-reset:hw-step}
.wp-block-list.is-style-steps>li{counter-increment:hw-step;display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:2px 14px;padding:18px 0;border-top:1px solid var(--wp--preset--color--rule)}
.wp-block-list.is-style-steps>li:last-child{border-bottom:1px solid var(--wp--preset--color--rule)}
.wp-block-list.is-style-steps>li::before{content:"0" counter(hw-step);grid-row:span 2;font-family:var(--wp--preset--font-family--display);font-style:italic;font-size:1.5rem;line-height:1;color:var(--wp--preset--color--violet)}
.wp-block-list.is-style-steps>li strong{display:block;font-family:var(--wp--preset--font-family--display);font-weight:400;font-size:1.625rem;line-height:1.15}
:where(.has-plum-background-color) .wp-block-list.is-style-steps>li{border-color:rgba(255,255,255,.18)}
:where(.has-plum-background-color) .wp-block-list.is-style-steps>li::before{color:var(--wp--preset--color--lime)}
:where(.wp-block-list.is-style-lines,.wp-block-list.is-style-links,.wp-block-list.is-style-plain){list-style:none;padding:0}
.wp-block-list.is-style-lines>li{padding:11px 0;border-bottom:1px solid var(--wp--preset--color--rule)}
.wp-block-list.is-style-lines{border-top:1px solid var(--wp--preset--color--rule)}
:where(.has-plum-background-color) .wp-block-list.is-style-lines,:where(.has-plum-background-color) .wp-block-list.is-style-lines>li{border-color:rgba(255,255,255,.2)}
.wp-block-list.is-style-links>li{border-bottom:1px solid var(--wp--preset--color--rule)}
.wp-block-list.is-style-links a{display:block;padding:12px 0;font-weight:600;text-decoration:none}.wp-block-list.is-style-links a:hover{text-decoration:underline}
.wp-block-list.is-style-plain>li{margin:0 0 6px}.wp-block-list.is-style-plain a{color:inherit}
.wp-block-details.is-style-faq{border-top:1px solid var(--wp--preset--color--rule);padding:0}
.wp-block-details.is-style-faq:last-child{border-bottom:1px solid var(--wp--preset--color--rule)}
.wp-block-details.is-style-faq>summary{cursor:pointer;font-weight:600;font-size:1.0625rem;padding:18px 0;list-style-position:inside}
.wp-block-details.is-style-faq>summary:hover{color:var(--wp--preset--color--violet)}
.wp-block-details.is-style-faq>p{margin:0 0 20px}
.wp-block-table.is-style-lines table{border-collapse:collapse;width:100%}
.wp-block-table.is-style-lines :where(th,td){border:0;border-bottom:1px solid var(--wp--preset--color--rule);padding:14px 16px 14px 0;text-align:left;vertical-align:top}
.wp-block-table.is-style-lines thead th{font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--wp--preset--color--violet);border-bottom:1.5px solid var(--wp--preset--color--plum)}
.wp-block-table.is-style-lines thead{border:0}

/* Buttons */
:where(.wp-block-button.is-style-outline)>.wp-block-button__link{background:transparent;color:var(--wp--preset--color--plum);border:1.5px solid currentColor;padding:12px 22px}
:where(.wp-block-button.is-style-outline)>.wp-block-button__link:hover{background:var(--wp--preset--color--plum);color:var(--wp--preset--color--cream);border-color:var(--wp--preset--color--plum)}
:where(.has-plum-background-color) :where(.wp-block-button.is-style-outline)>.wp-block-button__link{color:var(--wp--preset--color--cream)}
:where(.has-plum-background-color) :where(.wp-block-button.is-style-outline)>.wp-block-button__link:hover{background:var(--wp--preset--color--cream);color:var(--wp--preset--color--plum);border-color:var(--wp--preset--color--cream)}

/* Sections */
.wp-block-post-content>.alignfull{margin-block:0}
.hw-section-head{margin-bottom:var(--wp--preset--spacing--50)!important}.hw-section-head h2{margin-top:10px}
.hw-hero h1{margin-top:12px}
.hw-hero-portrait{gap:14px!important;padding:14px 14px 18px!important}.hw-hero-portrait .is-style-handwritten{margin:0 6px}
.hw-strip-band{padding-block:18px!important}.hw-strip{gap:12px 32px!important}.hw-strip p{margin:0;letter-spacing:.02em}
.hw-strip p::before{content:"✦";margin-right:10px;color:var(--wp--preset--color--lime)}
.hw-hero-card .wp-block-image{margin:0}.hw-hero-card{gap:16px!important}
.hw-score-figure{flex-shrink:0;font-family:var(--wp--preset--font-family--display);font-size:3.75rem;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;color:var(--wp--preset--color--lime)}.hw-score-figure span{font-family:var(--wp--preset--font-family--body);font-size:1rem;opacity:.8;margin-left:4px;color:var(--wp--preset--color--cream)}
.hw-packages>.wp-block-column{display:flex}@media(min-width:782px) and (max-width:1100px){.hw-packages-4{flex-wrap:wrap!important}.hw-packages-4>.wp-block-column{flex-basis:calc(50% - 16px)!important}}.hw-package{width:100%;gap:10px!important}.hw-package:not(.hw-package-featured){border:1px solid var(--wp--preset--color--rule)}.hw-package h3{margin:0}.hw-package .is-style-price{margin:8px 0 0}.hw-package .wp-block-list{margin:14px 0 18px}.hw-package .wp-block-buttons{margin-top:auto}
.hw-package-featured{box-shadow:0 18px 40px -24px rgba(59,35,56,.55)}
.hw-package-notes{margin-top:var(--wp--preset--spacing--40)}
.hw-portrait{margin:0}.hw-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:6px}
.hw-step-number{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;font-family:var(--wp--preset--font-family--display);font-style:italic;font-size:1.375rem;line-height:1;margin:0 0 6px;color:var(--wp--preset--color--plum);background:var(--wp--preset--color--lilac-deep)}
.hw-dot-1{background:var(--wp--preset--color--lime)}.hw-dot-2{background:var(--wp--preset--color--lilac-deep)}.hw-dot-3{background:var(--wp--preset--color--sage)}.hw-dot-4{background:var(--wp--preset--color--plum);color:var(--wp--preset--color--cream)}
@media(min-width:782px){.hw-steps>.wp-block-column+.wp-block-column{border-left:1px solid var(--wp--preset--color--rule);padding-left:var(--wp--preset--spacing--40)}}
.hw-service-row{border-top:1px solid var(--wp--preset--color--rule);padding-block:28px;margin:0!important}.hw-service-row h2{margin:0}
.hw-service-row .hw-step-number{width:44px;height:44px;font-size:1.125rem}
.hw-cta-band{padding:clamp(28px,5vw,56px)!important}
.hw-post-card{gap:12px}.hw-post-card .wp-block-post-title a{text-decoration:none;color:inherit}.hw-post-card .wp-block-post-title a:hover{text-decoration:underline}
.wp-block-post-featured-image img{border-radius:8px}

/* Website-Check form inside the warm design */
.hw-form input,.hw-form textarea{border:1px solid #8a7f88;border-radius:3px;background:var(--wp--preset--color--white)}
.hw-form button{background:var(--wp--preset--color--lime);color:var(--wp--preset--color--plum);border-radius:3px;font-weight:600}
.hw-form button:hover{background:var(--wp--preset--color--lime-dark)}
.hw-form :focus-visible{outline-color:var(--wp--preset--color--violet)}
.hw-form[data-variant=start] label{font-family:var(--wp--preset--font-family--body);font-size:.8125rem;font-weight:600;letter-spacing:0}
.hw-form-notice{border-left-color:var(--wp--preset--color--violet);border-radius:4px}

@media(max-width:781px){.hw-service-row>.wp-block-column:first-child{display:none}.hw-service-row{gap:8px!important;padding-block:22px}.hw-score-figure{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.hw-cta-band .hw-form[data-variant=start]{grid-template-columns:1fr;gap:10px;max-width:none}.hw-cta-band .hw-form[data-variant=start] button{margin-top:0;justify-content:space-between}

.has-plum-background-color .hw-form label,.has-plum-background-color .hw-form-alt,.has-plum-background-color .hw-form-alt a{color:var(--wp--preset--color--cream)}
.has-plum-background-color .hw-form :focus-visible{outline-color:var(--wp--preset--color--lime)}
