:root{--himmo-primary: #2563eb;--himmo-primary-light: #dbeafe;--himmo-primary-dark: #1d4ed8;--himmo-secondary: #0ea5e9;--himmo-accent: #f97316;--himmo-text: #1f2937;--himmo-text-muted: #6b7280;--himmo-text-on-primary: #ffffff;--himmo-bg-overlay: rgba(0, 0, 0, .4);--himmo-surface: #f9fafb;--himmo-bg-surface: #ffffff;--himmo-bg-hover: #f1f5f9;--himmo-focus-ring: var(--himmo-focus-color, #0d6efd);--himmo-bg-info: #e0f2fe;--himmo-text-info: #0369a1;--himmo-bg-purple: #ede9fe;--himmo-text-purple: #6d28d9;--himmo-highlight: #fde68a;--himmo-space-2: .5rem;--himmo-space-4: 1rem;--himmo-space-6: 1.5rem;--himmo-space-8: 2rem;--himmo-text-xs: .75rem;--himmo-text-sm: .875rem;--himmo-text-base: 1rem;--himmo-text-lg: 1.125rem;--himmo-text-xl: 1.25rem;--himmo-text-2xl: 1.5rem;--himmo-text-3xl: 1.875rem;--himmo-shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--himmo-shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--himmo-shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--himmo-photo-ratio: 4 / 3;--himmo-skeleton-bg: #e0e0e0;--himmo-skeleton-highlight: #f0f0f0;--himmo-skeleton-duration: 1.5s;--himmo-dpe-a: #319834;--himmo-dpe-b: #33a357;--himmo-dpe-c: #6eb64c;--himmo-dpe-d: #f2e500;--himmo-dpe-e: #edab18;--himmo-dpe-f: #eb6b27;--himmo-dpe-g: #e30613;--himmo-spacing-xs: .25rem;--himmo-spacing-sm: .5rem;--himmo-spacing-md: 1rem;--himmo-spacing-lg: 1.5rem;--himmo-bg-primary: #ffffff;--himmo-bg-secondary: #f8f9fa;--himmo-border-color: #dee2e6;--himmo-focus-color: #0d6efd;--himmo-link-color: #0d6efd;--himmo-radius-sm: 4px;--himmo-radius-md: 8px;--himmo-radius-full: 999px;--himmo-font-size-sm: .875rem;--himmo-font-size-base: 1rem}.himmo-archive{max-width:1280px;margin:0 auto;padding:var(--himmo-space-8) var(--himmo-space-4)}.himmo-archive__header{margin-bottom:var(--himmo-space-8);text-align:center}.himmo-archive__title{font-size:var(--himmo-text-3xl);color:var(--himmo-text);margin:0}.himmo-archive__empty{text-align:center;padding:var(--himmo-space-8);color:var(--himmo-text-muted)}.himmo-property-grid{display:grid;grid-template-columns:1fr;gap:var(--himmo-space-6);margin-bottom:var(--himmo-space-8)}@media (min-width: 768px){.himmo-property-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.himmo-property-grid{grid-template-columns:repeat(3,1fr)}}.himmo-property-grid--cols-2,.himmo-property-grid--cols-4{grid-template-columns:1fr}@media (min-width: 768px){.himmo-property-grid--cols-2,.himmo-property-grid--cols-4{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.himmo-property-grid--cols-4{grid-template-columns:repeat(4,1fr)}}.himmo-property-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease-in-out,transform .2s ease-in-out;position:relative;display:flex;flex-direction:column}.himmo-property-card__link{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%;position:relative}@media (hover: hover){.himmo-property-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-2px)}}.himmo-property-card:focus-within{outline:2px solid var(--himmo-primary);outline-offset:2px}@media (hover: none){.himmo-property-card:hover{box-shadow:0 2px 8px #00000014;transform:none}}.himmo-property-card__image-wrapper{position:relative;width:100%;overflow:hidden;background-color:var(--himmo-surface)}@supports (aspect-ratio: 4 / 3){.himmo-property-card__image-wrapper{aspect-ratio:var(--himmo-photo-ratio)}}@supports not (aspect-ratio: 4 / 3){.himmo-property-card__image-wrapper{padding-top:75%;position:relative}.himmo-property-card__image{position:absolute;top:0;left:0}}.himmo-property-card__image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}@media (hover: hover){.himmo-property-card:hover .himmo-property-card__image{transform:scale(1.03)}}.himmo-property-card--no-image .himmo-property-card__image-wrapper{background-color:var(--himmo-surface)}.himmo-property-card__badges{position:absolute;top:var(--himmo-space-4);left:var(--himmo-space-4);display:flex;gap:6px;flex-wrap:wrap;z-index:10;max-width:calc(100% - 2 * var(--himmo-space-4))}.himmo-property-card__badge{display:inline-block;padding:5px 10px;border-radius:4px;font-size:11px;font-weight:700;letter-spacing:.03em;line-height:1;text-transform:uppercase;white-space:nowrap}.himmo-property-card__badge--exclusif{background-color:#1e293bd9;color:#fff}.himmo-property-card__badge--coup-coeur{background-color:#dc2626e6;color:#fff}.himmo-property-card__badge--prestige{background-color:#a17832e6;color:#fff}.himmo-property-card__badge--sous-offre,.himmo-property-card__badge--compromis{background-color:#ea580ce6;color:#fff}.himmo-property-card__price{position:absolute;bottom:var(--himmo-space-4);right:var(--himmo-space-4);display:inline-block;padding:6px 12px;background-color:#ffffffe6;border-radius:4px;font-size:var(--himmo-text-lg);font-weight:700;color:var(--himmo-text);z-index:10;line-height:1.2}.himmo-property-card__price--vendu{background-color:#dc2626e6;color:#fff;text-transform:uppercase}.himmo-property-card__content{padding:var(--himmo-space-4);flex:1 0 auto;display:flex;flex-direction:column}.himmo-property-card__title{font-size:var(--himmo-text-base);font-weight:700;color:var(--himmo-text);margin:0 0 4px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.himmo-property-card__location{display:flex;align-items:center;gap:4px;font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);margin:0 0 var(--himmo-space-4) 0;text-transform:uppercase;letter-spacing:.02em}.himmo-property-card__distance{display:inline-flex;align-items:center;gap:3px;font-size:var(--himmo-text-xs, .75rem);color:var(--himmo-primary, #2563eb);margin:0 0 var(--himmo-space-2, 4px) 0;font-weight:500}.himmo-property-card__distance--unknown{color:var(--himmo-text-muted);font-style:italic;font-weight:400}.himmo-property-card__icon{flex-shrink:0;opacity:.6}.himmo-property-card__details{display:flex;flex-wrap:wrap;gap:var(--himmo-space-4);align-items:center;font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);padding-top:var(--himmo-space-4);border-top:1px solid #f1f5f9;margin-top:auto}.himmo-property-card__detail-item{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.himmo-property-card__detail-dpe{margin-left:auto}.himmo-dpe-a{background-color:var(--himmo-dpe-a);color:#fff}.himmo-dpe-b{background-color:var(--himmo-dpe-b);color:#fff}.himmo-dpe-c{background-color:var(--himmo-dpe-c);color:#000}.himmo-dpe-d{background-color:var(--himmo-dpe-d);color:#000}.himmo-dpe-e{background-color:var(--himmo-dpe-e);color:#000}.himmo-dpe-f{background-color:var(--himmo-dpe-f);color:#fff}.himmo-dpe-g{background-color:var(--himmo-dpe-g);color:#fff}.himmo-pagination{margin-top:var(--himmo-space-8);padding:var(--himmo-space-4) 0;display:flex;justify-content:center}.himmo-pagination .page-numbers{list-style:none;margin:0;display:inline-flex;align-items:center;gap:4px;background:#f3f4f6;border-radius:12px;padding:4px}.himmo-pagination .page-numbers li{display:inline-flex}.himmo-pagination a,.himmo-pagination span{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border:none;border-radius:8px;text-decoration:none;color:var(--himmo-text-muted);font-size:var(--himmo-text-sm);font-weight:500;min-width:40px;min-height:40px;line-height:1;text-align:center;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;cursor:pointer}.himmo-pagination a:hover{background-color:#fff;color:var(--himmo-text);box-shadow:0 1px 3px #00000014}.himmo-pagination .current{background-color:#fff;color:var(--himmo-text);font-weight:600;box-shadow:0 1px 3px #0000001a}.himmo-pagination .prev,.himmo-pagination .next{color:var(--himmo-text);font-weight:500;gap:4px}.himmo-pagination .prev:hover,.himmo-pagination .next:hover{background-color:#fff;color:var(--himmo-primary)}.himmo-pagination a:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.himmo-property-card{transition:none}.himmo-property-card:hover{transform:none}}.himmo-property-card__link:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}@media (max-width: 767px){.himmo-property-card__link{min-height:44px}}.himmo-single-bien{max-width:1280px;margin:0 auto;padding:var(--himmo-space-4)}.himmo-property-gallery{width:100%;margin-bottom:var(--himmo-space-8)}.himmo-property-gallery__main{position:relative;width:100%;margin:0;cursor:pointer;overflow:hidden;border-radius:8px}.himmo-property-gallery__main-button{background:none;border:none;padding:0;margin:0;width:100%;height:100%;cursor:pointer;display:block}@supports (aspect-ratio: 16 / 9){.himmo-property-gallery__main{aspect-ratio:16 / 9}}@supports not (aspect-ratio: 16 / 9){.himmo-property-gallery__main{padding-top:56.25%;position:relative}.himmo-property-gallery__main-image{position:absolute;top:0;left:0}}.himmo-property-gallery__main-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease-in-out}@media (hover: hover){.himmo-property-gallery__main:hover .himmo-property-gallery__main-image{transform:scale(1.02)}}.himmo-property-gallery__placeholder{width:100%;background-color:var(--himmo-surface);border-radius:8px;display:flex;align-items:center;justify-content:center;margin:0;min-height:300px}.himmo-property-gallery__placeholder-content{text-align:center;color:var(--himmo-text-muted)}.himmo-property-gallery__placeholder-content svg{margin-bottom:var(--himmo-space-4);opacity:.5}.himmo-property-gallery__placeholder-content p{margin:0;font-size:var(--himmo-text-lg)}.himmo-property-gallery__carousel{display:flex;align-items:center;gap:var(--himmo-space-3);margin-top:var(--himmo-space-6);position:relative}.himmo-property-gallery__nav{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--himmo-surface);border:1px solid var(--himmo-border);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:var(--himmo-text);padding:0;z-index:2}.himmo-property-gallery__nav:hover:not(:disabled){background:var(--himmo-primary);border-color:var(--himmo-primary);color:#fff;box-shadow:var(--himmo-shadow-md)}.himmo-property-gallery__nav:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.himmo-property-gallery__nav:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-property-gallery__thumbs-wrapper{flex:1;overflow:hidden;position:relative;padding-top:4px}.himmo-property-gallery__thumbs{display:flex;gap:var(--himmo-space-2);overflow-x:auto;scroll-behavior:smooth;padding-top:4px;padding-bottom:var(--himmo-space-2);scrollbar-width:thin;scrollbar-color:var(--himmo-border) transparent}.himmo-property-gallery__thumbs::-webkit-scrollbar{height:6px}.himmo-property-gallery__thumbs::-webkit-scrollbar-track{background:transparent}.himmo-property-gallery__thumbs::-webkit-scrollbar-thumb{background:var(--himmo-border);border-radius:3px}.himmo-property-gallery__thumbs::-webkit-scrollbar-thumb:hover{background:var(--himmo-text-muted)}.himmo-property-gallery__thumb{flex:0 0 auto;width:100px;height:100px;border-radius:4px;overflow:hidden;cursor:pointer;border:3px solid transparent;transition:border-color .2s ease-in-out,transform .2s ease;background:none;padding:0}.himmo-property-gallery__thumb:focus-visible,.himmo-property-gallery__main-button:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-property-gallery__thumb:hover{border-color:var(--himmo-primary);transform:scale(1.05)}.himmo-property-gallery__thumb--active{border-color:var(--himmo-primary);box-shadow:var(--himmo-shadow-md)}.himmo-property-gallery__thumb img{width:100%;height:100%;object-fit:cover;display:block}:root{--himmo-lightbox-bg: rgba(0, 0, 0, .95);--himmo-lightbox-nav-bg: rgba(255, 255, 255, .1);--himmo-lightbox-nav-hover: rgba(255, 255, 255, .2);--himmo-lightbox-dot-size: 12px;--himmo-lightbox-dot-active: #ffffff;--himmo-lightbox-dot-inactive: rgba(255, 255, 255, .4);--himmo-lightbox-transition: .3s ease}.himmo-lightbox{position:fixed;inset:0;z-index:9999;background:var(--himmo-lightbox-bg);display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity var(--himmo-lightbox-transition)}.himmo-lightbox[hidden]{display:none}.himmo-gallery-lightbox--open{overflow:hidden}.himmo-lightbox__container{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:90vw;max-height:90vh;padding:0 var(--himmo-space-6)}.himmo-lightbox__figure{position:relative;display:flex;align-items:center;justify-content:center;margin:0}.himmo-lightbox__image{max-width:90vw;max-height:85vh;width:auto;height:auto;object-fit:contain;display:block}.himmo-lightbox__spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border:4px solid var(--himmo-primary);border-top-color:transparent;border-radius:50%;animation:himmo-spin .8s linear infinite;display:none}@keyframes himmo-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.himmo-lightbox__close{position:absolute;top:var(--himmo-space-4);right:var(--himmo-space-4);width:48px;height:48px;min-width:48px;min-height:48px;background:var(--himmo-lightbox-nav-bg);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;z-index:10}.himmo-lightbox__close:hover,.himmo-lightbox__close:focus{background:var(--himmo-lightbox-nav-hover)}.himmo-lightbox__close:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.himmo-lightbox__close svg{width:24px;height:24px}.himmo-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;min-width:48px;min-height:48px;background:var(--himmo-lightbox-nav-bg);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;z-index:10}.himmo-lightbox__nav--prev{left:var(--himmo-space-4)}.himmo-lightbox__nav--next{right:var(--himmo-space-4)}.himmo-lightbox__nav:hover,.himmo-lightbox__nav:focus{background:var(--himmo-lightbox-nav-hover)}.himmo-lightbox__nav:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.himmo-lightbox__nav svg{width:24px;height:24px}.himmo-lightbox__footer{position:absolute;bottom:var(--himmo-space-6);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--himmo-space-2);z-index:10}.himmo-lightbox__dots{display:flex;gap:var(--himmo-space-2);align-items:center;justify-content:center}.himmo-lightbox__dot{width:var(--himmo-lightbox-dot-size);height:var(--himmo-lightbox-dot-size);min-width:var(--himmo-lightbox-dot-size);min-height:var(--himmo-lightbox-dot-size);background:var(--himmo-lightbox-dot-inactive);border:none;border-radius:50%;cursor:pointer;padding:0;transition:background-color .2s ease,transform .2s ease}.himmo-lightbox__dot:hover,.himmo-lightbox__dot:focus{background:#fff9;transform:scale(1.1)}.himmo-lightbox__dot--active{background:var(--himmo-lightbox-dot-active);transform:scale(1.2)}.himmo-lightbox__dot:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.himmo-lightbox__counter,.himmo-lightbox__counter-alt{color:#fff;font-size:var(--himmo-text-sm);font-weight:600;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.5)}.himmo-lightbox__sr-announce{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 640px){.himmo-lightbox__container{padding:0 var(--himmo-space-2)}.himmo-lightbox__image{max-width:95vw;max-height:80vh}.himmo-lightbox__close{top:var(--himmo-space-2);right:var(--himmo-space-2);width:40px;height:40px;min-width:40px;min-height:40px}.himmo-lightbox__nav{width:40px;height:40px;min-width:40px;min-height:40px}.himmo-lightbox__nav--prev{left:var(--himmo-space-2)}.himmo-lightbox__nav--next{right:var(--himmo-space-2)}.himmo-lightbox__footer{bottom:var(--himmo-space-4)}.himmo-lightbox__dot{width:10px;height:10px;min-width:10px;min-height:10px}}.himmo-lightbox__fullscreen{display:none}.himmo-lightbox--immersive .himmo-lightbox__fullscreen{display:flex;position:absolute;bottom:var(--himmo-space-4);left:var(--himmo-space-4);width:44px;height:44px;align-items:center;justify-content:center;background:#0009;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;cursor:pointer;z-index:10;transition:background .2s ease}.himmo-lightbox--immersive .himmo-lightbox__fullscreen:hover,.himmo-lightbox--immersive .himmo-lightbox__fullscreen:focus{background:#000c}.himmo-lightbox__fullscreen svg{width:20px;height:20px}.himmo-lightbox--immersive .himmo-lightbox__nav,.himmo-lightbox--immersive .himmo-lightbox__footer{display:none}.himmo-lightbox--immersive .himmo-lightbox__container{max-width:100vw;max-height:100vh;padding:0}.himmo-lightbox--immersive .himmo-lightbox__image{max-width:100vw;max-height:100vh}:root:fullscreen,:root:-webkit-full-screen{background:#000}@media (prefers-reduced-motion: reduce){.himmo-lightbox,.himmo-lightbox__nav,.himmo-lightbox__close,.himmo-lightbox__dot{transition:none}.himmo-lightbox__spinner{animation:none}.himmo-lightbox__dot:hover,.himmo-lightbox__dot:focus,.himmo-lightbox__dot--active{transform:none}}.himmo-single-bien__content{display:grid;grid-template-columns:1fr;gap:var(--himmo-space-8)}@media (min-width: 1024px){.himmo-single-bien__content{grid-template-columns:65fr 35fr}}.himmo-property-main{display:flex;flex-direction:column;gap:var(--himmo-space-8)}.himmo-property-hero{border-bottom:1px solid #e5e7eb;padding-bottom:var(--himmo-space-6)}.himmo-property-hero__title{font-size:var(--himmo-text-3xl);font-weight:700;color:var(--himmo-text);margin:0 0 var(--himmo-space-4) 0;line-height:1.2}.himmo-property-hero__price{font-size:var(--himmo-text-2xl);font-weight:700;color:var(--himmo-primary);margin:0 0 var(--himmo-space-4) 0}.himmo-property-hero__price--on-demand{color:var(--himmo-text-muted);font-style:italic}.himmo-property-hero__price--vendu{color:#dc2626;text-transform:uppercase}.himmo-property-hero__badge{display:inline-block;padding:4px 12px;background-color:var(--himmo-accent);color:#fff;font-size:var(--himmo-text-sm);font-weight:600;border-radius:4px;margin-bottom:var(--himmo-space-4)}.himmo-property-hero__badge-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--himmo-space-4)}.himmo-property-hero__badge-row .himmo-property-hero__badge{margin-bottom:0}.himmo-property-hero__badge-actions{display:flex;gap:8px;align-items:center}.himmo-property-hero__badge-actions .himmo-pdf-download,.himmo-property-hero__badge-actions .himmo-share{margin:0}.himmo-property-hero__badge-actions .himmo-btn--secondary{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;padding:0;background:var(--himmo-gray-50, #f9fafb);border:1px solid var(--himmo-border, #e5e7eb);border-radius:var(--himmo-radius, 6px);color:var(--himmo-text-muted, #6b7280);font-size:0}.himmo-property-hero__badge-actions .himmo-btn--secondary:hover{background:#fff;border-color:var(--himmo-primary, #2563eb);color:var(--himmo-primary, #2563eb)}.himmo-property-hero__badge-actions .himmo-btn--secondary .himmo-btn__icon{width:18px;height:18px}.himmo-property-hero__badge-actions .himmo-btn--secondary>span{display:none}.himmo-property-hero__badge-actions .himmo-favorite-btn,.himmo-property-hero__badge-actions .himmo-comparator-button{width:36px;height:36px;background:var(--himmo-gray-50, #f9fafb);border:1px solid var(--himmo-border, #e5e7eb);border-radius:var(--himmo-radius, 6px)}.himmo-property-hero__badge-actions .himmo-favorite-btn:hover,.himmo-property-hero__badge-actions .himmo-comparator-button:hover{background:#fff;border-color:var(--himmo-primary, #2563eb);transform:none}.himmo-property-hero__badge-actions [data-tooltip]{position:relative}.himmo-property-hero__badge-actions [data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:4px 10px;background:var(--himmo-text, #1f2937);color:#fff;font-size:.75rem;font-weight:500;line-height:1.4;white-space:nowrap;border-radius:4px;pointer-events:none;opacity:0;transition:opacity .1s ease;z-index:10}.himmo-property-hero__badge-actions [data-tooltip]:hover:after,.himmo-property-hero__badge-actions [data-tooltip]:focus-visible:after{opacity:1}.himmo-share-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--himmo-modal-z-index);display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:visibility 0s linear .2s,opacity .2s ease}.himmo-share-modal--open{visibility:visible;opacity:1;transition-delay:0s}.himmo-share-modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--himmo-modal-overlay-bg);cursor:pointer}.himmo-share-modal__container{position:relative;background:var(--himmo-modal-bg);border-radius:var(--himmo-modal-radius);box-shadow:var(--himmo-modal-shadow);max-width:400px;width:90%;max-height:90vh;overflow-y:auto;padding:var(--himmo-modal-padding);transform:translateY(-20px);transition:transform .2s ease}.himmo-share-modal--open .himmo-share-modal__container{transform:translateY(0)}.himmo-share-modal__close{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;background:transparent;border:none;font-size:1.75rem;line-height:1;cursor:pointer;color:var(--himmo-text-muted, #6b7280);transition:color .2s ease;display:flex;align-items:center;justify-content:center}.himmo-share-modal__close:hover,.himmo-share-modal__close:focus{color:var(--himmo-text, #1f2937)}.himmo-share-modal__close:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-share-modal__title{margin:0 0 1.25rem;font-size:1.25rem;font-weight:600;color:var(--himmo-text, #1f2937);padding-right:2.5rem}.himmo-share-modal__options{display:flex;flex-direction:column;gap:0}.himmo-share-modal__option{display:flex;align-items:center;gap:12px;padding:12px 16px;background:transparent;border:none;border-bottom:1px solid var(--himmo-border, #e5e7eb);cursor:pointer;font-size:.95rem;color:var(--himmo-text, #1f2937);text-decoration:none;transition:background-color .15s ease;font-family:inherit;width:100%;text-align:left}.himmo-share-modal__option:first-child{border-top:1px solid var(--himmo-border, #e5e7eb)}.himmo-share-modal__option:hover{background:var(--himmo-gray-50, #f9fafb)}.himmo-share-modal__option:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:-2px}.himmo-share-modal__option svg{flex-shrink:0;color:var(--himmo-text-muted, #6b7280)}.himmo-share-modal__copied{margin:.75rem 0 0;padding:0;font-size:.875rem;font-weight:500;color:var(--himmo-success, #16a34a);min-height:1.25rem;transition:opacity .2s ease}@media (max-width: 480px){.himmo-share-modal__container{width:95%;padding:1.25rem}.himmo-property-hero__badge-actions{flex-wrap:wrap}}.himmo-property-hero__features{display:flex;flex-wrap:wrap;gap:var(--himmo-space-6);list-style:none;padding:0;margin:0}.himmo-property-hero__feature{display:flex;align-items:center;gap:var(--himmo-space-2);font-size:var(--himmo-text-base);color:var(--himmo-text)}.himmo-property-hero__icon{flex-shrink:0;color:var(--himmo-primary)}.himmo-property-hero__dpe-badge{font-size:var(--himmo-text-sm);padding:6px 12px;border-radius:4px;font-weight:700}.himmo-property-description h2,.himmo-property-features h2,.himmo-property-rooms h2,.himmo-property-dpe h2{font-size:var(--himmo-text-2xl);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-space-4) 0}.himmo-property-description__content{font-size:var(--himmo-text-base);line-height:1.7;color:var(--himmo-text)}.himmo-property-description__content p{margin-bottom:var(--himmo-space-4)}.himmo-property-description__content a{color:var(--himmo-primary);text-decoration:underline}.himmo-property-description__content a:hover{text-decoration:none}.himmo-property-video{margin-bottom:var(--himmo-space-8)}.himmo-property-video__wrapper{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:var(--himmo-radius)}.himmo-property-video__wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:0}.himmo-property-features__grid{display:grid;grid-template-columns:1fr;gap:var(--himmo-space-8);align-items:start}@media (min-width: 768px){.himmo-property-features__grid{grid-template-columns:1fr 1fr}}.himmo-property-features__list{display:flex;flex-direction:column;gap:var(--himmo-space-2)}.himmo-feature-item{display:flex;align-items:flex-start;gap:var(--himmo-space-3);padding:var(--himmo-space-2) 0;border-bottom:1px solid rgba(0,0,0,.05)}.himmo-feature-item:last-child{border-bottom:none}.himmo-feature-item__icon{font-size:1.25rem;line-height:1;flex-shrink:0;margin-top:2px}.himmo-feature-item__content{flex:1;display:flex;justify-content:space-between;align-items:baseline;gap:var(--himmo-space-3)}.himmo-feature-item__label{font-weight:500;color:var(--himmo-text);font-size:var(--himmo-text-sm);flex-shrink:0}.himmo-feature-item__value{font-size:var(--himmo-text-base);color:var(--himmo-text);font-weight:600;text-align:right}.himmo-feature-item--full .himmo-feature-item__content{flex-direction:column;align-items:flex-start}.himmo-property-features__equipements{list-style:none;padding:0;margin:var(--himmo-space-2) 0 0 0;display:flex;flex-wrap:wrap;gap:var(--himmo-space-2)}.himmo-property-features__equipements li{background-color:var(--himmo-surface);padding:var(--himmo-space-1) var(--himmo-space-3);border-radius:4px;font-size:var(--himmo-text-sm);color:var(--himmo-text);border:1px solid var(--himmo-border)}.himmo-property-rooms__list{list-style:none;padding:0;margin:0 0 var(--himmo-space-4) 0;display:grid;grid-template-columns:1fr;gap:var(--himmo-space-4)}@media (min-width: 640px){.himmo-property-rooms__list{grid-template-columns:repeat(2,1fr)}}.himmo-property-rooms__item{padding:var(--himmo-space-4);background-color:var(--himmo-surface);border-radius:4px;display:flex;justify-content:space-between;align-items:center}.himmo-property-rooms__type{font-weight:600;color:var(--himmo-text)}.himmo-property-rooms__surface{color:var(--himmo-text-muted);font-size:var(--himmo-text-sm)}.himmo-property-rooms__summary{color:var(--himmo-text-muted);font-size:var(--himmo-text-sm);margin:0}.himmo-property-dpe__content{display:flex;flex-direction:column;gap:var(--himmo-space-4);align-items:flex-start}.himmo-property-dpe__value{color:var(--himmo-text-muted);font-size:var(--himmo-text-sm);margin:0}.himmo-property-sidebar{display:flex;flex-direction:column}@media (min-width: 1024px){.himmo-property-sidebar__sticky{position:sticky;top:100px;align-self:start}}.himmo-property-sidebar__sticky{background-color:var(--himmo-surface);border-radius:8px;padding:var(--himmo-space-6);box-shadow:var(--himmo-shadow-sm);display:flex;flex-direction:column;gap:var(--himmo-space-6)}.himmo-property-sidebar__ref{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);margin:0;font-weight:600}.himmo-property-sidebar__placeholder{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);font-style:italic;margin:0}.himmo-btn{display:inline-block;padding:var(--himmo-space-4) var(--himmo-space-6);border-radius:4px;font-size:var(--himmo-text-base);font-weight:600;text-align:center;text-decoration:none;transition:background-color .2s ease-in-out,transform .1s ease-in-out;cursor:pointer;border:none;min-height:44px;display:flex;align-items:center;justify-content:center}.himmo-btn--primary{background-color:var(--himmo-primary);color:#fff}.himmo-btn--primary:hover{background-color:#1d4ed8}.himmo-btn--primary:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-btn--secondary{background-color:#fff;color:var(--himmo-primary);border:2px solid var(--himmo-primary)}.himmo-btn--secondary:hover{background-color:var(--himmo-primary);color:#fff}.himmo-btn--secondary:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-btn--with-icon{display:inline-flex;align-items:center;gap:var(--himmo-space-2)}.himmo-btn__icon{flex-shrink:0;width:20px;height:20px}.himmo-btn--secondary .himmo-btn__icon{stroke:currentColor}.himmo-property-sidebar__virtual-tour{margin-top:var(--himmo-space-4)}.himmo-property-sidebar__virtual-tour .himmo-btn{width:100%}.himmo-single-bien a:focus,.himmo-single-bien button:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-single-bien a:focus-visible,.himmo-single-bien button:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}@media (max-width: 1023px){.himmo-single-bien{padding:var(--himmo-space-4)}.himmo-property-gallery{margin-bottom:var(--himmo-space-6)}.himmo-single-bien__content,.himmo-property-main{gap:var(--himmo-space-6)}}@media (max-width: 640px){.himmo-property-hero__title{font-size:var(--himmo-text-2xl)}.himmo-property-hero__price{font-size:var(--himmo-text-xl)}.himmo-property-hero__features{gap:var(--himmo-space-4)}.himmo-property-gallery__thumbs{gap:var(--himmo-space-2)}.himmo-property-gallery__thumb{width:80px;height:80px}.himmo-property-gallery__nav{width:32px;height:32px}}@media (prefers-reduced-motion: reduce){.himmo-property-gallery__main-image,.himmo-property-gallery__thumb,.himmo-btn{transition:none}.himmo-property-gallery__main:hover .himmo-property-gallery__main-image{transform:none}}:root{--himmo-ges-a: #f2e7f1;--himmo-ges-b: #ddb5dd;--himmo-ges-c: #c98bc5;--himmo-ges-d: #b566ae;--himmo-ges-e: #a145a0;--himmo-ges-f: #8b2392;--himmo-ges-g: #75007b}.himmo-dpe-ges{display:flex;flex-direction:row;gap:var(--himmo-space-4);align-items:flex-start}.himmo-dpe-ges__column{display:flex;flex-direction:column;gap:var(--himmo-space-4)}@media (max-width: 639px){.himmo-dpe-ges{flex-direction:column;gap:var(--himmo-space-4)}}.himmo-dpe-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:var(--himmo-space-2);border-radius:8px;text-align:center;box-shadow:var(--himmo-shadow-sm)}.himmo-dpe-badge__letter{font-size:var(--himmo-text-2xl);font-weight:700;line-height:1}.himmo-dpe-badge__value{font-size:var(--himmo-text-xs);margin-top:4px;line-height:1.2;opacity:.9}.himmo-dpe-badge__label{font-size:10px;font-weight:600;text-transform:uppercase;margin-top:4px;opacity:.8;letter-spacing:.5px}.himmo-dpe-badge--a{background-color:var(--himmo-dpe-a);color:#fff}.himmo-dpe-badge--b{background-color:var(--himmo-dpe-b);color:#fff}.himmo-dpe-badge--c{background-color:var(--himmo-dpe-c);color:#fff}.himmo-dpe-badge--d{background-color:var(--himmo-dpe-d);color:#000}.himmo-dpe-badge--e{background-color:var(--himmo-dpe-e);color:#000}.himmo-dpe-badge--f{background-color:var(--himmo-dpe-f);color:#fff}.himmo-dpe-badge--g{background-color:var(--himmo-dpe-g);color:#fff}.himmo-dpe-badge--nc{background-color:#e5e7eb;color:#6b7280}.himmo-ges-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:var(--himmo-space-2);border-radius:8px;text-align:center;box-shadow:var(--himmo-shadow-sm)}.himmo-ges-badge__letter{font-size:var(--himmo-text-2xl);font-weight:700;line-height:1}.himmo-ges-badge__value{font-size:var(--himmo-text-xs);margin-top:4px;line-height:1.2;opacity:.9}.himmo-ges-badge__label{font-size:10px;font-weight:600;text-transform:uppercase;margin-top:4px;opacity:.8;letter-spacing:.5px}.himmo-ges-badge--a{background-color:var(--himmo-ges-a);color:#000}.himmo-ges-badge--b{background-color:var(--himmo-ges-b);color:#000}.himmo-ges-badge--c{background-color:var(--himmo-ges-c);color:#000}.himmo-ges-badge--d{background-color:var(--himmo-ges-d);color:#000}.himmo-ges-badge--e{background-color:var(--himmo-ges-e);color:#fff}.himmo-ges-badge--f{background-color:var(--himmo-ges-f);color:#fff}.himmo-ges-badge--g{background-color:var(--himmo-ges-g);color:#fff}.himmo-ges-badge--nc{background-color:#e5e7eb;color:#6b7280}.himmo-dpe-badge--compact{min-width:24px;min-height:24px;width:24px;height:24px;padding:2px;font-size:var(--himmo-text-xs);font-weight:700;border-radius:4px;display:inline-flex;align-items:center;justify-content:center}.himmo-property-diagnostics{margin-bottom:var(--himmo-space-6);padding:var(--himmo-space-4);background-color:var(--himmo-surface);border-radius:8px}.himmo-property-diagnostics h2,.himmo-property-diagnostics h3{font-size:var(--himmo-text-lg);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-space-4) 0}.himmo-dpe-scale{display:flex;flex-direction:column;gap:2px}.himmo-dpe-scale__item{display:flex;align-items:center;padding:4px 8px;border-radius:4px;font-size:var(--himmo-text-sm);font-weight:600;opacity:.5;transition:opacity .2s ease;gap:6px}.himmo-dpe-scale__arrow{font-weight:700;line-height:1}.himmo-dpe-scale__label{line-height:1}.himmo-dpe-scale__item--active{opacity:1;transform:scale(1.05);box-shadow:var(--himmo-shadow-md)}.himmo-dpe-scale__item--a{background-color:var(--himmo-dpe-a);color:#fff}.himmo-dpe-scale__item--b{background-color:var(--himmo-dpe-b);color:#fff}.himmo-dpe-scale__item--c{background-color:var(--himmo-dpe-c);color:#fff}.himmo-dpe-scale__item--d{background-color:var(--himmo-dpe-d);color:#000}.himmo-dpe-scale__item--e{background-color:var(--himmo-dpe-e);color:#000}.himmo-dpe-scale__item--f{background-color:var(--himmo-dpe-f);color:#fff}.himmo-dpe-scale__item--g{background-color:var(--himmo-dpe-g);color:#fff}@media (max-width: 639px){.himmo-dpe-scale{display:none}}@media (prefers-reduced-motion: reduce){.himmo-dpe-scale__item{transition:none}}.himmo-ges-scale{display:flex;flex-direction:column;gap:2px}.himmo-ges-scale__item{display:flex;align-items:center;padding:4px 8px;border-radius:4px;font-size:var(--himmo-text-sm);font-weight:600;opacity:.5;transition:opacity .2s ease;gap:6px}.himmo-ges-scale__arrow{font-weight:700;line-height:1}.himmo-ges-scale__label{line-height:1}.himmo-ges-scale__item--active{opacity:1;transform:scale(1.05);box-shadow:var(--himmo-shadow-md)}.himmo-ges-scale__item--a{background-color:var(--himmo-ges-a);color:#000}.himmo-ges-scale__item--b{background-color:var(--himmo-ges-b);color:#000}.himmo-ges-scale__item--c{background-color:var(--himmo-ges-c);color:#000}.himmo-ges-scale__item--d{background-color:var(--himmo-ges-d);color:#000}.himmo-ges-scale__item--e{background-color:var(--himmo-ges-e);color:#fff}.himmo-ges-scale__item--f{background-color:var(--himmo-ges-f);color:#fff}.himmo-ges-scale__item--g{background-color:var(--himmo-ges-g);color:#fff}@media (max-width: 639px){.himmo-ges-scale{display:none}}@media (prefers-reduced-motion: reduce){.himmo-ges-scale__item{transition:none}}.himmo-contact-sidebar{display:flex;flex-direction:column;gap:var(--himmo-space-4)}.himmo-contact-sidebar__heading{font-size:var(--himmo-text-xl);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-space-2) 0}.himmo-contact-sidebar__fallback{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);font-style:italic;margin:0;padding:var(--himmo-space-4);background-color:#fff;border-radius:8px;border:1px solid #e5e7eb}.himmo-agency-card{background-color:#fff;border-radius:8px;padding:var(--himmo-space-4);box-shadow:var(--himmo-shadow-sm);border:1px solid #e5e7eb;display:flex;flex-direction:column;gap:var(--himmo-space-4)}.himmo-agency-card__header{display:flex;align-items:center;gap:var(--himmo-space-4)}.himmo-agency-card__logo{width:60px;height:60px;object-fit:contain;flex-shrink:0;border-radius:4px;background-color:var(--himmo-surface)}.himmo-agency-card__name{font-size:var(--himmo-text-lg);font-weight:700;color:var(--himmo-text);margin:0;line-height:1.3}.himmo-agency-card__address{font-style:normal;font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);line-height:1.5}.himmo-agency-card__contact{display:flex;flex-direction:column;gap:var(--himmo-space-2)}.himmo-agency-card__contact-item{display:flex;align-items:center;gap:var(--himmo-space-2);color:var(--himmo-text);text-decoration:none;font-size:var(--himmo-text-sm);padding:var(--himmo-space-2);border-radius:4px;transition:background-color .2s ease}.himmo-agency-card__contact-item:hover{background-color:var(--himmo-surface);color:var(--himmo-primary)}.himmo-agency-card__contact-item:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-agency-card__contact-item .himmo-icon{flex-shrink:0;color:var(--himmo-primary)}.himmo-agency-card__contact-item span{word-break:break-word}.himmo-agency-card__carte-pro{font-size:var(--himmo-text-xs);color:var(--himmo-text-muted);margin:0;padding-top:var(--himmo-space-2);border-top:1px solid #e5e7eb}.himmo-agent-card{background-color:#fff;border-radius:8px;padding:var(--himmo-space-4);box-shadow:var(--himmo-shadow-sm);border:1px solid #e5e7eb;display:flex;flex-direction:column;gap:var(--himmo-space-4)}.himmo-agent-card__header{display:flex;align-items:center;gap:var(--himmo-space-4)}.himmo-agent-card__photo{width:80px;height:80px;border-radius:50%;object-fit:cover;flex-shrink:0;background-color:var(--himmo-surface)}.himmo-agent-card__photo--placeholder{border-radius:50%}.himmo-agent-card__info{display:flex;flex-direction:column;gap:4px}.himmo-agent-card__name{font-size:var(--himmo-text-base);font-weight:600;color:var(--himmo-text);line-height:1.3}.himmo-agent-card__title{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted)}.himmo-agent-card__contact{display:flex;flex-direction:column;gap:var(--himmo-space-2)}.himmo-agent-card__contact-item{display:flex;align-items:center;gap:var(--himmo-space-2);color:var(--himmo-text);text-decoration:none;font-size:var(--himmo-text-sm);padding:var(--himmo-space-2);border-radius:4px;transition:background-color .2s ease}.himmo-agent-card__contact-item:hover{background-color:var(--himmo-surface);color:var(--himmo-primary)}.himmo-agent-card__contact-item:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-agent-card__contact-item .himmo-icon{flex-shrink:0;color:var(--himmo-primary)}.himmo-agent-card__contact-item span{word-break:break-word}@media (min-width: 768px) and (max-width: 1023px){.himmo-contact-sidebar{position:sticky;top:calc(var(--himmo-admin-bar-height, 32px) + var(--himmo-space-4));max-height:calc(100vh - var(--himmo-admin-bar-height, 32px) - var(--himmo-space-8));overflow-y:auto}}@media (max-width: 767px){.himmo-contact-sidebar{margin-top:var(--himmo-space-6)}.himmo-agency-card__logo{width:50px;height:50px}.himmo-agent-card__photo{width:60px;height:60px}}@media (prefers-reduced-motion: reduce){.himmo-agency-card__contact-item,.himmo-agent-card__contact-item{transition:none}}.himmo-search-form{display:flex;flex-direction:column;gap:var(--himmo-spacing-md);padding:var(--himmo-spacing-lg);background-color:var(--himmo-bg-secondary);border-radius:var(--himmo-radius-md)}.himmo-search-form__main{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--himmo-spacing-sm)}.himmo-search-form__fieldset{margin:0;padding:0;border:none;min-width:0}.himmo-search-form__field{display:flex;flex-direction:column;gap:var(--himmo-spacing-xs)}.himmo-search-form__label{font-size:var(--himmo-font-size-sm);font-weight:500;color:var(--himmo-text-muted)}.himmo-search-form__input{width:100%;min-height:44px;padding:var(--himmo-spacing-sm) var(--himmo-spacing-md);font-size:var(--himmo-font-size-base);border:1px solid var(--himmo-border-color);border-radius:var(--himmo-radius-sm);background-color:var(--himmo-bg-primary);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.himmo-search-form__input:focus{outline:2px solid var(--himmo-focus-color);outline-offset:2px;border-color:var(--himmo-focus-color)}.himmo-search-form__select{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;padding-right:2.5rem;cursor:pointer}.himmo-search-form__number{-moz-appearance:textfield;appearance:textfield}.himmo-search-form__number::-webkit-outer-spin-button,.himmo-search-form__number::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.himmo-search-form__toggle-wrapper{display:flex;align-items:center;gap:var(--himmo-spacing-xs)}.himmo-search-form__toggle{display:inline-flex;align-items:center;gap:var(--himmo-spacing-xs);padding:var(--himmo-spacing-xs) var(--himmo-spacing-sm);font-size:var(--himmo-font-size-sm);color:var(--himmo-link-color);background:transparent;border:none;cursor:pointer;font-weight:500;min-height:44px}.himmo-search-form__toggle:hover{text-decoration:underline}.himmo-search-form__toggle--active{color:var(--himmo-text);text-decoration:underline}.himmo-search-form__toggle:focus{outline:2px solid var(--himmo-focus-color);outline-offset:2px}.himmo-search-form__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--himmo-spacing-xs);font-size:var(--himmo-text-xs, .75rem);font-weight:600;color:#fff;background-color:var(--himmo-primary);border-radius:10px}.himmo-search-form__badge[hidden]{display:none}.himmo-search-form__reset{color:var(--himmo-text-muted)}.himmo-search-form__reset:hover{color:var(--himmo-text);text-decoration:underline}.himmo-search-form__reset[hidden]{display:none}.himmo-btn--text{background:transparent;color:var(--himmo-link-color);border:none;padding:var(--himmo-spacing-xs) var(--himmo-spacing-sm);min-height:44px}.himmo-btn--text:hover{background-color:#0d6efd1a}.himmo-search-form__advanced{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--himmo-spacing-sm);max-height:0;opacity:0;overflow:hidden;padding:0;transition:max-height .3s ease-out,opacity .3s ease-out,padding .3s ease-out}.himmo-search-form__advanced[hidden]{display:none}.himmo-search-form__advanced--expanding{max-height:500px;opacity:1;padding-top:var(--himmo-spacing-md)}.himmo-search-form__actions{display:flex;justify-content:flex-end;gap:var(--himmo-spacing-sm);margin-top:var(--himmo-spacing-sm)}.himmo-search-form__submit{min-width:120px}@media (max-width: 767px){.himmo-search-form__main,.himmo-search-form__advanced{grid-template-columns:1fr}.himmo-search-form__toggle-wrapper{width:100%;justify-content:center}.himmo-search-form__toggle{min-height:48px;padding:var(--himmo-spacing-sm) var(--himmo-spacing-md)}.himmo-search-form__input{min-height:48px;font-size:16px}.himmo-search-form__actions{flex-direction:column;gap:var(--himmo-spacing-sm)}.himmo-search-form__reset,.himmo-search-form__submit{width:100%;min-height:48px}}@media (min-width: 768px) and (max-width: 1023px){.himmo-search-form__main,.himmo-search-form__advanced{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.himmo-search-form__main{grid-template-columns:repeat(4,1fr)}.himmo-search-form__advanced{grid-template-columns:repeat(5,1fr)}}.himmo-search-form__input:focus-visible,.himmo-search-form__toggle:focus-visible,.himmo-search-form__submit:focus-visible{outline:2px solid var(--himmo-focus-color);outline-offset:2px}@media (prefers-reduced-motion: reduce){.himmo-search-form__input,.himmo-search-form__advanced{transition:none}.himmo-search-form__advanced--expanding{max-height:none}}.himmo-search-form--expanded .himmo-search-form__advanced{display:grid}.himmo-search-results{margin-top:var(--himmo-spacing-lg)}.himmo-search-results__header{margin-bottom:var(--himmo-spacing-md)}.himmo-search-results__count{font-size:var(--himmo-font-size-base);color:var(--himmo-text-muted);margin:0}.himmo-skeleton{background-color:var(--himmo-bg-secondary);border-radius:8px;overflow:hidden;position:relative}@keyframes himmo-skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.himmo-skeleton__image{width:100%;background:linear-gradient(90deg,var(--himmo-skeleton-bg) 0%,var(--himmo-skeleton-highlight) 50%,var(--himmo-skeleton-bg) 100%);background-size:200% 100%;animation:himmo-skeleton-pulse var(--himmo-skeleton-duration) infinite}@supports (aspect-ratio: 4 / 3){.himmo-skeleton__image{aspect-ratio:var(--himmo-photo-ratio)}}@supports not (aspect-ratio: 4 / 3){.himmo-skeleton__image{padding-top:75%}}.himmo-skeleton__content{padding:var(--himmo-space-4);display:flex;flex-direction:column;gap:var(--himmo-space-2)}.himmo-skeleton__text{height:16px;background:linear-gradient(90deg,var(--himmo-skeleton-bg) 0%,var(--himmo-skeleton-highlight) 50%,var(--himmo-skeleton-bg) 100%);background-size:200% 100%;animation:himmo-skeleton-pulse var(--himmo-skeleton-duration) infinite;border-radius:4px}.himmo-skeleton__text--title{width:70%;height:20px}.himmo-skeleton__text--price{width:50%;height:24px}.himmo-skeleton__text--details{width:90%}@media (prefers-reduced-motion: reduce){.himmo-skeleton__image,.himmo-skeleton__text{animation:none}}@media (prefers-color-scheme: dark){:root{--himmo-skeleton-bg: #333333;--himmo-skeleton-highlight: #444444}}.himmo-search-empty{grid-column:1 / -1;text-align:center;padding:var(--himmo-space-8);color:var(--himmo-text-muted)}.himmo-search-empty__icon{font-size:4rem;margin-bottom:var(--himmo-space-4);opacity:.5}.himmo-search-empty__title{font-size:var(--himmo-text-xl);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-space-2) 0}.himmo-search-empty__text{font-size:var(--himmo-text-base);margin:0}.himmo-empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--himmo-space-8) var(--himmo-space-4);min-height:400px}.himmo-empty-state__illustration{margin-bottom:var(--himmo-space-6)}.himmo-empty-state__svg{max-width:200px;height:auto;animation:himmo-empty-state-bounce 2s ease-in-out infinite}@keyframes himmo-empty-state-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (prefers-reduced-motion: reduce){.himmo-empty-state__svg{animation:none}}.himmo-empty-state__title{font-size:var(--himmo-text-2xl);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-spacing-sm) 0;line-height:1.3}.himmo-empty-state__title:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}.himmo-empty-state__subtitle{font-size:var(--himmo-text-base);color:var(--himmo-text-muted);margin:0 0 var(--himmo-space-6) 0;max-width:400px}.himmo-empty-state__cta{display:inline-flex;align-items:center;gap:var(--himmo-spacing-sm);padding:var(--himmo-spacing-md) var(--himmo-space-6);font-size:var(--himmo-text-lg);font-weight:600;color:var(--himmo-text-on-primary);background-color:var(--himmo-primary);border:none;border-radius:var(--himmo-radius-md);cursor:pointer;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease;text-decoration:none}.himmo-empty-state__cta:hover{background-color:var(--himmo-primary-dark, #1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.himmo-empty-state__cta:focus{outline:2px solid var(--himmo-primary);outline-offset:3px}.himmo-empty-state__cta:active{transform:translateY(0)}.himmo-empty-state__cta .himmo-icon{flex-shrink:0}@media (prefers-reduced-motion: reduce){.himmo-empty-state__cta{transition:none}.himmo-empty-state__cta:hover{transform:none}}.himmo-empty-state__suggestions{margin-top:var(--himmo-space-6);padding-top:var(--himmo-space-6);border-top:1px solid var(--himmo-border-color);width:100%;max-width:500px}.himmo-empty-state__suggestions-label{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);margin:0 0 var(--himmo-spacing-md) 0}.himmo-empty-state__suggestions-list{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--himmo-spacing-sm);list-style:none;margin:0;padding:0}.himmo-empty-state__suggestion{display:inline-flex;align-items:center;padding:var(--himmo-spacing-xs) var(--himmo-spacing-md);font-size:var(--himmo-text-sm);color:var(--himmo-primary);background-color:var(--himmo-primary-light, #dbeafe);border:1px solid var(--himmo-primary);border-radius:var(--himmo-radius-sm);cursor:pointer;transition:background-color .2s ease,color .2s ease}.himmo-empty-state__suggestion:hover{background-color:var(--himmo-primary);color:var(--himmo-text-on-primary)}.himmo-empty-state__suggestion:focus{outline:2px solid var(--himmo-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.himmo-empty-state__suggestion{transition:none}}@media (max-width: 640px){.himmo-empty-state{padding:var(--himmo-space-6) var(--himmo-spacing-md);min-height:350px}.himmo-empty-state__illustration{margin-bottom:var(--himmo-spacing-md)}.himmo-empty-state__svg{max-width:150px}.himmo-empty-state__title{font-size:var(--himmo-text-xl)}.himmo-empty-state__subtitle{font-size:var(--himmo-text-sm)}.himmo-empty-state__cta{width:100%;justify-content:center;padding:var(--himmo-spacing-md);font-size:var(--himmo-text-base)}.himmo-empty-state__suggestions-list{flex-direction:column}.himmo-empty-state__suggestion{width:100%;justify-content:center;padding:var(--himmo-spacing-sm) var(--himmo-spacing-md)}}@media (prefers-color-scheme: dark){.himmo-empty-state__title{color:var(--himmo-text-dark, #f5f5f5)}.himmo-empty-state__subtitle,.himmo-empty-state__suggestions-label{color:var(--himmo-text-muted-dark, #aaa)}.himmo-empty-state__suggestions{border-top-color:var(--himmo-border-dark, #444)}}@media (prefers-contrast: high){.himmo-empty-state__cta{border:2px solid currentColor}.himmo-empty-state__suggestion{border-width:2px}}.himmo-search-error{grid-column:1 / -1;text-align:center;padding:var(--himmo-space-8);color:var(--himmo-text-muted);background-color:#fef2f2;border-radius:8px;border:1px solid #fecaca}.himmo-search-error p{margin:0;color:#dc2626}[data-himmo-results-grid][aria-busy=true]{opacity:.7;pointer-events:none}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.himmo-property-card__placeholder{width:100%;height:100%;background-color:var(--himmo-surface);display:flex;align-items:center;justify-content:center}@supports (aspect-ratio: 4 / 3){.himmo-property-card__placeholder{aspect-ratio:var(--himmo-photo-ratio)}}@supports not (aspect-ratio: 4 / 3){.himmo-property-card__placeholder{padding-top:75%;position:relative}}:root{--himmo-secondary: #7c3aed;--himmo-text-on-primary: #ffffff;--himmo-radius-full: 9999px;--himmo-bg-surface: #ffffff;--himmo-bg-hover: #f3f4f6;--himmo-highlight: #fef08a;--himmo-bg-info: #dbeafe;--himmo-text-info: #1e40af;--himmo-bg-purple: #ede9fe;--himmo-text-purple: #5b21b6;--himmo-focus-ring: #2563eb}.himmo-search-form__field--location,.himmo-location-autocomplete{position:relative}.himmo-location-tags{display:flex;flex-wrap:wrap;gap:var(--himmo-spacing-xs, .25rem);margin-bottom:0}.himmo-location-tags--has-tags{margin-bottom:var(--himmo-spacing-sm, .5rem)}.himmo-location-tag{display:inline-flex;align-items:center;gap:var(--himmo-spacing-xs, .25rem);padding:var(--himmo-spacing-xs, .25rem) var(--himmo-spacing-sm, .5rem);background-color:var(--himmo-primary);color:var(--himmo-text-on-primary);border-radius:var(--himmo-radius-full);font-size:var(--himmo-font-size-sm, .875rem);line-height:1.4}.himmo-location-tag--departement{background-color:var(--himmo-secondary)}.himmo-location-tag__name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.himmo-location-tag__remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin:0;background:#fff3;border:none;border-radius:50%;color:inherit;cursor:pointer;font-size:14px;line-height:1;transition:background-color .15s ease}.himmo-location-tag__remove:hover,.himmo-location-tag__remove:focus{background:#fff6;outline:none}.himmo-location-tag__remove:focus-visible{outline:2px solid var(--himmo-focus-ring);outline-offset:1px}.himmo-location-autocomplete__input{width:100%}.himmo-location-suggestions{position:absolute;top:100%;left:0;right:0;z-index:100;max-height:280px;overflow-y:auto;background-color:var(--himmo-bg-surface);border:1px solid var(--himmo-border-color);border-radius:var(--himmo-radius-md);box-shadow:var(--himmo-shadow-lg);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}.himmo-location-suggestions--open{opacity:1;visibility:visible;transform:translateY(4px)}.himmo-location-suggestion{display:flex;align-items:center;gap:var(--himmo-spacing-sm, .5rem);padding:var(--himmo-spacing-sm, .5rem) var(--himmo-spacing-md, 1rem);cursor:pointer;transition:background-color .15s ease}.himmo-location-suggestion:hover,.himmo-location-suggestion--active{background-color:var(--himmo-bg-hover)}.himmo-location-suggestion--active{outline:none}.himmo-location-suggestion--empty{color:var(--himmo-text-muted);font-style:italic;cursor:default}.himmo-location-suggestion--empty:hover{background-color:transparent}.himmo-location-suggestion__name{flex:1;color:var(--himmo-text)}.himmo-location-suggestion__name mark{background-color:var(--himmo-highlight);color:inherit;padding:0 2px;border-radius:2px}.himmo-location-suggestion__type{padding:2px 8px;font-size:var(--himmo-text-xs, .75rem);border-radius:var(--himmo-radius-sm);text-transform:uppercase;letter-spacing:.05em}.himmo-location-suggestion__type--ville{background-color:var(--himmo-bg-info);color:var(--himmo-text-info)}.himmo-location-suggestion__type--departement{background-color:var(--himmo-bg-purple);color:var(--himmo-text-purple)}.himmo-location-suggestion__count{font-size:var(--himmo-font-size-sm, .875rem);color:var(--himmo-text-muted)}@media (max-width: 640px){.himmo-location-tag__name{max-width:100px}.himmo-location-suggestions{max-height:200px}}.himmo-location-autocomplete__input:focus-visible{outline:2px solid var(--himmo-focus-ring);outline-offset:2px}@media (prefers-reduced-motion: reduce){.himmo-location-suggestions,.himmo-location-tag__remove{transition:none}}:root{--himmo-error-color: #dc2626;--himmo-error-bg: #fef2f2;--himmo-error-border: #fecaca}.himmo-search-form__field--range{min-width:200px}.himmo-search-form__range{display:flex;gap:var(--himmo-spacing-sm, .5rem);align-items:flex-end}.himmo-search-form__range-input{flex:1;display:flex;flex-direction:column;gap:var(--himmo-spacing-xs, .25rem)}.himmo-search-form__range-label{font-size:var(--himmo-text-xs, .75rem);font-weight:500;color:var(--himmo-text-muted);text-transform:uppercase;letter-spacing:.025em}.himmo-search-form__input-wrapper{position:relative;display:flex;align-items:center}.himmo-search-form__input-wrapper--suffix .himmo-search-form__input{padding-right:2.5rem}.himmo-search-form__input-suffix{position:absolute;right:var(--himmo-spacing-sm, .5rem);color:var(--himmo-text-muted);font-size:var(--himmo-font-size-sm, .875rem);pointer-events:none}.himmo-search-form__input--prix{text-align:right;font-variant-numeric:tabular-nums}.himmo-search-form__input--surface{text-align:right;font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield}.himmo-search-form__input--surface::-webkit-outer-spin-button,.himmo-search-form__input--surface::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.himmo-search-form__input--error{border-color:var(--himmo-error-color);background-color:var(--himmo-error-bg)}.himmo-search-form__input--error:focus{outline-color:var(--himmo-error-color);border-color:var(--himmo-error-color)}.himmo-search-form__error{font-size:var(--himmo-text-xs, .75rem);color:var(--himmo-error-color);margin-top:var(--himmo-spacing-xs, .25rem);min-height:1.2em}.himmo-search-form__error:empty{display:none}.himmo-search-form__error[hidden]{display:none}@media (max-width: 640px){.himmo-search-form__range{flex-direction:column;gap:var(--himmo-spacing-xs, .25rem)}.himmo-search-form__range-input{width:100%}.himmo-search-form__input--prix,.himmo-search-form__input--surface{min-height:48px;font-size:16px}}@media (min-width: 641px){.himmo-search-form__range{flex-direction:row}.himmo-search-form__range-input{flex:1;min-width:0}}.himmo-search-form__input--prix:focus-visible,.himmo-search-form__input--surface:focus-visible{outline:2px solid var(--himmo-focus-color);outline-offset:2px}.himmo-search-form__input--error:focus-visible{outline:2px solid var(--himmo-error-color);outline-offset:2px}@media (prefers-reduced-motion: reduce){.himmo-search-form__input--prix,.himmo-search-form__input--surface{transition:none}}:root{--himmo-dpe-official-a: var(--himmo-dpe-a);--himmo-dpe-official-b: var(--himmo-dpe-b);--himmo-dpe-official-c: var(--himmo-dpe-c);--himmo-dpe-official-d: var(--himmo-dpe-d);--himmo-dpe-official-e: var(--himmo-dpe-e);--himmo-dpe-official-f: var(--himmo-dpe-f);--himmo-dpe-official-g: var(--himmo-dpe-g)}.himmo-search-form__field--chips{min-width:200px}.himmo-search-form__field--dpe{min-width:250px}.himmo-search-form__chips{display:flex;flex-wrap:wrap;gap:var(--himmo-spacing-sm, .5rem);align-items:center}.himmo-search-form__chip{display:inline-flex;align-items:center;justify-content:center;min-width:3rem;min-height:44px;padding:var(--himmo-spacing-xs, .25rem) var(--himmo-spacing-md, 1rem);font-size:var(--himmo-font-size-sm, .875rem);font-weight:500;color:var(--himmo-text, #1f2937);background-color:var(--himmo-bg-surface, #ffffff);border:2px solid var(--himmo-border-color, #d1d5db);border-radius:var(--himmo-radius-full, 9999px);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.himmo-search-form__chip:hover{border-color:var(--himmo-primary, #2563eb);background-color:var(--himmo-bg-hover, #f9fafb)}.himmo-search-form__chip:focus{outline:none;border-color:var(--himmo-primary, #2563eb);box-shadow:0 0 0 3px #2563eb33}.himmo-search-form__chip:focus-visible{outline:2px solid var(--himmo-focus-color, #0d6efd);outline-offset:2px}.himmo-search-form__chip--selected{color:#fff;background-color:var(--himmo-primary, #2563eb);border-color:var(--himmo-primary, #2563eb)}.himmo-search-form__chip--selected:hover{background-color:#1d4ed8;border-color:#1d4ed8}.himmo-search-form__chip-clear{padding:var(--himmo-spacing-xs, .25rem) var(--himmo-spacing-sm, .5rem);font-size:var(--himmo-text-xs, .75rem);font-weight:500;color:var(--himmo-text-muted, #6b7280);background:transparent;border:none;cursor:pointer;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}.himmo-search-form__chip-clear:hover{color:var(--himmo-text, #1f2937)}.himmo-search-form__chip-clear:focus-visible{outline:2px solid var(--himmo-focus-color);outline-offset:2px}.himmo-search-form__chip-clear[hidden]{display:none}.himmo-search-form__dpe-badges{display:flex;flex-wrap:wrap;gap:var(--himmo-spacing-xs, .25rem)}.himmo-search-form__dpe-badge{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;font-size:var(--himmo-font-size-base, 1rem);font-weight:700;color:var(--himmo-dpe-text, #ffffff);background-color:var(--himmo-dpe-color, #319834);border:3px solid transparent;border-radius:var(--himmo-radius-sm, 4px);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.himmo-search-form__dpe-badge:hover{transform:scale(1.05)}.himmo-search-form__dpe-badge:focus{outline:none;box-shadow:0 0 0 3px #0003}.himmo-search-form__dpe-badge:focus-visible{outline:2px solid var(--himmo-focus-color, #0d6efd);outline-offset:2px}.himmo-search-form__dpe-badge--selected{border-color:var(--himmo-text, #1f2937);box-shadow:0 0 0 2px var(--himmo-bg-surface, #ffffff),0 0 0 4px var(--himmo-text, #1f2937);transform:scale(1.1)}.himmo-search-form__dpe-badge--selected:hover{transform:scale(1.1)}@media (max-width: 640px){.himmo-search-form__chips{justify-content:flex-start}.himmo-search-form__dpe-badges{justify-content:center}.himmo-search-form__dpe-badge{width:2.25rem;height:2.25rem;font-size:var(--himmo-font-size-sm, .875rem)}.himmo-search-form__chip{min-height:48px;padding:var(--himmo-spacing-sm, .5rem) var(--himmo-spacing-md, 1rem)}}@media (prefers-reduced-motion: reduce){.himmo-search-form__chip,.himmo-search-form__dpe-badge{transition:none}.himmo-search-form__dpe-badge:hover,.himmo-search-form__dpe-badge--selected{transform:none}}@media (prefers-contrast: high){.himmo-search-form__chip{border-width:3px}.himmo-search-form__dpe-badge{border:2px solid currentColor}.himmo-search-form__dpe-badge--selected{border-width:4px}}.himmo-pagination{display:flex;justify-content:center;align-items:center;margin-top:var(--himmo-space-6, 1.5rem);padding:var(--himmo-space-4, 1rem) 0}.himmo-pagination__mobile{display:inline-flex;align-items:center;gap:4px;background:#f3f4f6;border-radius:12px;padding:4px}.himmo-pagination__desktop{display:none}.himmo-pagination__counter{font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-text-muted, #666);padding:0 var(--himmo-space-2, .5rem);white-space:nowrap}.himmo-pagination__item{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;font-size:var(--himmo-text-sm, .875rem);font-weight:500;font-family:inherit;color:var(--himmo-text-muted, #666);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease;text-decoration:none;line-height:1;text-align:center}.himmo-pagination__item:hover:not(.himmo-pagination__item--disabled):not(.himmo-pagination__item--active){background-color:#fff;color:var(--himmo-text, #333);box-shadow:0 1px 3px #00000014}.himmo-pagination__item:focus{outline:2px solid var(--himmo-primary, #0066cc);outline-offset:2px}.himmo-pagination__item:focus:not(:focus-visible){outline:none}.himmo-pagination__item:focus-visible{outline:2px solid var(--himmo-primary, #0066cc);outline-offset:2px}.himmo-pagination__item--active{background-color:#fff;color:var(--himmo-text, #333);font-weight:600;box-shadow:0 1px 3px #0000001a;cursor:default}.himmo-pagination__item--active:hover{background-color:#fff;color:var(--himmo-text, #333)}.himmo-pagination__item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.himmo-pagination__item--prev,.himmo-pagination__item--next{color:var(--himmo-text, #333);font-weight:500;gap:4px}.himmo-pagination__item--prev:hover,.himmo-pagination__item--next:hover{color:var(--himmo-primary, #0066cc)}.himmo-pagination__ellipsis{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;color:var(--himmo-text-muted, #666);font-size:var(--himmo-text-sm, .875rem)}@media (min-width: 768px){.himmo-pagination__mobile{display:none}.himmo-pagination__desktop{display:inline-flex;align-items:center;gap:4px;list-style:none;margin:0;padding:4px;background:#f3f4f6;border-radius:12px}.himmo-pagination__item{min-width:40px;min-height:40px}}[data-himmo-results]{scroll-margin-top:calc(var(--himmo-header-height, 60px) + 20px)}@media (prefers-reduced-motion: reduce){.himmo-pagination__item{transition:none}}@media (prefers-color-scheme: dark){.himmo-pagination__mobile,.himmo-pagination__desktop{background:#2a2a2e}.himmo-pagination__item{color:var(--himmo-text-muted-dark, #999)}.himmo-pagination__item:hover:not(.himmo-pagination__item--disabled):not(.himmo-pagination__item--active){background-color:#3a3a3e;color:var(--himmo-text-dark, #e0e0e0);box-shadow:0 1px 3px #0003}.himmo-pagination__item--active{background-color:#3a3a3e;color:var(--himmo-text-dark, #e0e0e0);box-shadow:0 1px 3px #00000040}.himmo-pagination__counter,.himmo-pagination__ellipsis{color:var(--himmo-text-muted-dark, #999)}}@media (prefers-contrast: high){.himmo-pagination__item{border:2px solid transparent}.himmo-pagination__item--active{border:3px solid var(--himmo-text, #333)}.himmo-pagination__item:focus{outline-width:3px}}.himmo-contact-form-section{padding:var(--immo-space-6, 1.5rem);background-color:var(--immo-surface, #f8fafc);border-radius:var(--immo-radius-lg, 12px);margin-top:var(--immo-space-6, 1.5rem)}.himmo-contact-form__title{font-size:var(--immo-text-xl, 1.25rem);font-weight:600;color:var(--immo-text, #1e293b);margin:0 0 var(--immo-space-4, 1rem) 0}.himmo-contact-form{display:flex;flex-direction:column;gap:var(--immo-space-4, 1rem)}.himmo-form-group{display:flex;flex-direction:column;gap:var(--immo-space-1, .25rem)}.himmo-form-group--subjects{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.himmo-form-group--subjects legend{margin-bottom:.125rem}.himmo-form-checkbox-label--subject{padding:.125rem 0}.himmo-form-checkbox-label--subject span{font-size:var(--immo-text-sm, .875rem);color:var(--immo-text, #1e293b)}.himmo-form-group--consent{margin-top:var(--immo-space-2, .5rem)}.himmo-form-checkbox-label{display:flex;align-items:flex-start;gap:var(--immo-space-2, .5rem);cursor:pointer;line-height:1.4}.himmo-form-checkbox-label input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--himmo-primary, #2563eb);cursor:pointer}.himmo-form-checkbox-text{font-size:var(--immo-text-xs, .75rem);color:var(--immo-text-muted, #64748b)}.himmo-form-group--submit{margin-top:var(--immo-space-2, .5rem)}.himmo-form-label{font-size:var(--immo-text-sm, .875rem);font-weight:500;color:var(--immo-text, #1e293b)}.himmo-required{color:var(--immo-error, #dc2626);margin-left:.125rem}.himmo-form-input,.himmo-form-textarea{width:100%;padding:var(--immo-space-2, .5rem) var(--immo-space-4, 1rem);font-size:var(--immo-text-base, 1rem);font-family:inherit;color:var(--immo-text, #1e293b);background-color:var(--immo-background, #ffffff);border:1px solid var(--immo-border, #e2e8f0);border-radius:var(--immo-radius-md, 8px);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.himmo-form-input:focus,.himmo-form-textarea:focus{outline:none;border-color:var(--immo-primary, #2563eb);box-shadow:0 0 0 3px #2563eb26}.himmo-form-input::placeholder,.himmo-form-textarea::placeholder{color:var(--immo-text-muted, #94a3b8);opacity:1}.himmo-form-textarea{resize:vertical;min-height:100px}.himmo-form-input[aria-invalid=true],.himmo-form-textarea[aria-invalid=true]{border-color:var(--immo-error, #dc2626)}.himmo-form-input[aria-invalid=true]:focus,.himmo-form-textarea[aria-invalid=true]:focus{box-shadow:0 0 0 3px #dc262626}.himmo-form-input[data-valid=true],.himmo-form-textarea[data-valid=true]{border-color:var(--immo-success, #10b981);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2310b981'%3E%3Cpath fill-rule='evenodd' d='M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1.25rem;padding-right:2.5rem}.himmo-form-input[data-valid=true]:focus,.himmo-form-textarea[data-valid=true]:focus{box-shadow:0 0 0 3px #10b98126}.himmo-form-error{display:none;font-size:var(--immo-text-sm, .875rem);color:var(--immo-error, #dc2626);margin-top:var(--immo-space-1, .25rem)}.himmo-form-error:before{content:"";display:inline-block;width:1em;height:1em;margin-right:.25em;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23dc2626'%3E%3Cpath fill-rule='evenodd' d='M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z' clip-rule='evenodd'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;vertical-align:middle}.himmo-form-error:not(:empty){display:block}.himmo-contact-form__submit{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:var(--immo-space-2, .5rem) var(--immo-space-6, 1.5rem);font-size:var(--immo-text-base, 1rem);font-weight:600;color:#fff;background-color:var(--immo-primary, #2563eb);border:none;border-radius:var(--immo-radius-md, 8px);cursor:pointer;transition:background-color .2s ease,opacity .2s ease,transform .1s ease;min-height:44px}.himmo-contact-form__submit:hover:not(:disabled){background-color:var(--immo-primary-hover, #1d4ed8)}.himmo-contact-form__submit:focus{outline:none;box-shadow:0 0 0 3px #2563eb66}.himmo-contact-form__submit:focus-visible{outline:2px solid var(--immo-primary, #2563eb);outline-offset:2px}.himmo-contact-form__submit:active:not(:disabled){transform:scale(.98)}.himmo-contact-form__submit:disabled{opacity:.5;cursor:not-allowed}.himmo-button__text{display:inline}.himmo-button__loading{display:none;align-items:center;gap:.5rem}.himmo-contact-form__submit.is-loading .himmo-button__text{display:none}.himmo-contact-form__submit.is-loading .himmo-button__loading{display:inline-flex}.himmo-honeypot{position:absolute!important;left:-9999px!important;top:-9999px!important;width:1px!important;height:0!important;opacity:0!important;overflow:hidden!important;pointer-events:none!important}.himmo-contact-form--success{text-align:center;padding:var(--immo-space-8, 2rem)}.himmo-contact-form__success-icon{width:4rem;height:4rem;margin:0 auto var(--immo-space-4, 1rem);color:var(--immo-success, #10b981)}.himmo-contact-form__success-title{font-size:var(--immo-text-xl, 1.25rem);font-weight:600;color:var(--immo-text, #1e293b);margin:0 0 var(--immo-space-2, .5rem) 0}.himmo-contact-form__success-text{font-size:var(--immo-text-base, 1rem);color:var(--immo-text-muted, #64748b);margin:0}.himmo-contact-form__global-error{padding:var(--immo-space-3, .75rem) var(--immo-space-4, 1rem);margin-bottom:var(--immo-space-4, 1rem);background-color:#fee;border:1px solid var(--immo-error, #dc2626);border-radius:var(--immo-radius-md, 8px);color:var(--immo-error, #dc2626);font-size:var(--immo-text-sm, .875rem);font-weight:500}@media (max-width: 767px){.himmo-contact-form-section{padding:var(--immo-space-4, 1rem);border-radius:var(--immo-radius-md, 8px)}.himmo-contact-form__title{font-size:var(--immo-text-base, 1rem)}.himmo-form-input,.himmo-form-textarea{font-size:16px}}.himmo-contact-form__context{font-size:.875rem;font-weight:500;color:var(--immo-text-muted, #6b7280);margin:0 0 var(--immo-space-4, 1rem) 0;padding-left:var(--immo-space-3, .75rem);border-left:3px solid var(--immo-primary, #2563eb);line-height:1.4}@media (prefers-contrast: high){.himmo-form-input,.himmo-form-textarea{border-width:2px}.himmo-form-input:focus,.himmo-form-textarea:focus{outline:3px solid var(--immo-primary, #2563eb);outline-offset:2px;box-shadow:none}.himmo-contact-form__submit:focus{outline:3px solid #ffffff;outline-offset:2px;box-shadow:none}.himmo-form-error,.himmo-contact-form__global-error{font-weight:600}}@media (prefers-reduced-motion: reduce){.himmo-form-input,.himmo-form-textarea,.himmo-contact-form__submit{transition:none}.himmo-spinner{animation:none}}:root{--himmo-modal-overlay-bg: rgba(0, 0, 0, .5);--himmo-modal-bg: #ffffff;--himmo-modal-radius: 8px;--himmo-modal-shadow: 0 4px 20px rgba(0, 0, 0, .15);--himmo-modal-max-width: 480px;--himmo-modal-padding: 2rem;--himmo-modal-z-index: 9999;--himmo-criteria-tag-bg: var(--himmo-primary-light, #dbeafe);--himmo-criteria-tag-color: var(--himmo-primary, #2563eb)}body.himmo-modal-open{overflow:hidden}.himmo-alert-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:var(--himmo-modal-z-index);display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:visibility 0s linear .2s,opacity .2s ease}.himmo-alert-modal--open{visibility:visible;opacity:1;transition-delay:0s}.himmo-alert-modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--himmo-modal-overlay-bg);cursor:pointer}.himmo-alert-modal__container{position:relative;background:var(--himmo-modal-bg);border-radius:var(--himmo-modal-radius);box-shadow:var(--himmo-modal-shadow);max-width:var(--himmo-modal-max-width);width:90%;max-height:90vh;overflow-y:auto;padding:var(--himmo-modal-padding);transform:translateY(-20px);transition:transform .2s ease}.himmo-alert-modal--open .himmo-alert-modal__container{transform:translateY(0)}.himmo-alert-modal__close{position:absolute;top:1rem;right:1rem;width:2.5rem;height:2.5rem;min-width:44px;min-height:44px;background:transparent;border:none;font-size:1.75rem;line-height:1;cursor:pointer;color:var(--himmo-text-muted, #6b7280);transition:color .2s ease;display:flex;align-items:center;justify-content:center}.himmo-alert-modal__close:hover,.himmo-alert-modal__close:focus{color:var(--himmo-text, #1f2937)}.himmo-alert-modal__close:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-alert-modal__title{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--himmo-text, #1f2937);padding-right:2.5rem}.himmo-alert-modal__description{margin:0 0 1rem;color:var(--himmo-text-muted, #6b7280);font-size:.95rem}.himmo-alert-modal__criteria{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;min-height:1.5rem}.himmo-alert-modal__criteria-tag{display:inline-block;padding:.25rem .75rem;background:var(--himmo-criteria-tag-bg);color:var(--himmo-criteria-tag-color);border-radius:20px;font-size:.85rem;font-weight:500}.himmo-alert-modal__criteria-empty{color:var(--himmo-text-muted, #6b7280);font-style:italic;font-size:.9rem}.himmo-alert-modal__form{display:flex;flex-direction:column;gap:1rem}.himmo-alert-modal__field{display:flex;flex-direction:column;gap:.25rem}.himmo-alert-modal__label{font-weight:500;color:var(--himmo-text, #1f2937);font-size:.95rem}.himmo-alert-modal__input{padding:.75rem 1rem;border:1px solid var(--himmo-border-color, #dee2e6);border-radius:var(--himmo-radius-sm, 4px);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;width:100%;box-sizing:border-box}.himmo-alert-modal__input:focus{border-color:var(--himmo-primary, #2563eb);box-shadow:0 0 0 3px #2563eb26;outline:none}.himmo-alert-modal__input:invalid:not(:placeholder-shown){border-color:var(--himmo-error-color, #dc2626)}.himmo-alert-modal__input::placeholder{color:var(--himmo-text-muted, #6b7280);opacity:1}.himmo-alert-modal__error{color:var(--himmo-error-color, #dc2626);font-size:.85rem;min-height:1.25rem}.himmo-alert-modal__submit{position:relative;padding:.875rem 1.5rem;background:var(--himmo-primary, #2563eb);color:var(--himmo-text-on-primary, #ffffff);border:none;border-radius:var(--himmo-radius-sm, 4px);font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s ease;min-height:44px}.himmo-alert-modal__submit:hover:not(:disabled){background:var(--himmo-primary-dark, #1d4ed8)}.himmo-alert-modal__submit:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-alert-modal__submit:disabled{opacity:.7;cursor:not-allowed}.himmo-alert-modal__submit.himmo-loading .himmo-alert-modal__submit-text{visibility:hidden}.himmo-alert-modal__submit-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:none}.himmo-alert-modal__submit.himmo-loading .himmo-alert-modal__submit-loading{display:block}.himmo-hidden{display:none!important}.himmo-alert-modal__field--consent{margin-top:1rem}.himmo-alert-modal__consent-wrapper{display:flex;align-items:flex-start;gap:.75rem}.himmo-alert-modal__consent-checkbox{flex-shrink:0;width:1.25rem;height:1.25rem;margin-top:.125rem;accent-color:var(--himmo-primary, #2563eb);cursor:pointer}.himmo-alert-modal__consent-label{font-size:.9rem;line-height:1.5;color:var(--himmo-text-muted, #6b7280);cursor:pointer}.himmo-alert-modal__privacy-link{color:var(--himmo-primary, #2563eb);text-decoration:underline;transition:color .2s ease}.himmo-alert-modal__privacy-link:hover,.himmo-alert-modal__privacy-link:focus{color:var(--himmo-primary-hover, #1d4ed8)}.himmo-alert-modal__consent-checkbox:focus{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-alert-modal__field--consent.himmo-alert-modal__field--error .himmo-alert-modal__consent-checkbox{outline:2px solid var(--himmo-error, #ef4444);outline-offset:2px}.himmo-alert-modal__consent-error{display:block;margin-top:.5rem;margin-left:2rem;color:var(--himmo-error, #ef4444);font-size:.85rem;min-height:1.25rem}@media (max-width: 639px){.himmo-alert-modal__container{width:100%;height:100%;max-width:none;max-height:none;border-radius:0;display:flex;flex-direction:column}.himmo-alert-modal__form{flex:1;justify-content:space-between}.himmo-alert-modal__input{font-size:16px}.himmo-alert-modal__consent-checkbox{width:1.375rem;height:1.375rem;margin-top:0;padding:.6875rem;margin:-.6875rem;box-sizing:content-box}.himmo-alert-modal__consent-wrapper{padding:.25rem 0;min-height:2.75rem;align-items:center}.himmo-alert-modal__consent-error{margin-left:2.25rem}}@media (prefers-reduced-motion: reduce){.himmo-alert-modal{transition:none}.himmo-alert-modal__container{transition:none;transform:none}.himmo-alert-modal__close,.himmo-alert-modal__input,.himmo-alert-modal__submit{transition:none}}@media (prefers-contrast: high){.himmo-alert-modal__container{border:2px solid var(--himmo-text, #1f2937)}.himmo-alert-modal__criteria-tag{border:1px solid var(--himmo-criteria-tag-color)}.himmo-alert-modal__input:focus,.himmo-alert-modal__submit:focus{outline:3px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-alert-modal__consent-checkbox:focus{outline:3px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-alert-modal__privacy-link{text-decoration-thickness:2px}}.himmo-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%) translateY(100%);padding:1rem 1.5rem;border-radius:var(--himmo-radius-md, 8px);font-size:.95rem;font-weight:500;z-index:10001;opacity:0;transition:transform .3s ease,opacity .3s ease;max-width:90%;text-align:center;box-shadow:var(--himmo-shadow-lg)}.himmo-toast--visible{transform:translate(-50%) translateY(0);opacity:1}.himmo-toast--success{background:#28a745;color:#fff}.himmo-toast--error{background:#dc3545;color:#fff}@media (max-width: 639px){.himmo-toast{bottom:1rem;left:1rem;right:1rem;transform:translate(0) translateY(100%);max-width:none}.himmo-toast--visible{transform:translate(0) translateY(0)}}@media (prefers-reduced-motion: reduce){.himmo-toast{transition:none}}.himmo-detailed-characteristics{margin-top:var(--himmo-space-8);margin-bottom:var(--himmo-space-8)}.himmo-detailed-characteristics__title{font-size:var(--himmo-text-xl);font-weight:600;color:var(--himmo-text);margin:0 0 var(--himmo-space-4) 0}:root{--himmo-accordion-border: #e5e7eb;--himmo-accordion-bg: #ffffff;--himmo-accordion-header-bg: #f9fafb;--himmo-accordion-header-hover: #f3f4f6;--himmo-accordion-transition: .2s ease-out}.himmo-accordion{border:1px solid var(--himmo-accordion-border);border-radius:8px;overflow:hidden}.himmo-accordion__item{border-bottom:1px solid var(--himmo-accordion-border)}.himmo-accordion__item:last-child{border-bottom:none}.himmo-accordion__header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--himmo-space-4);background:var(--himmo-accordion-header-bg);border:none;cursor:pointer;font-size:var(--himmo-text-base);font-weight:600;color:var(--himmo-text);text-align:left;transition:background-color var(--himmo-accordion-transition)}.himmo-accordion__header:hover{background:var(--himmo-accordion-header-hover)}.himmo-accordion__header:focus{outline:2px solid var(--himmo-primary);outline-offset:-2px}.himmo-accordion__header:focus-visible{outline:2px solid var(--himmo-primary);outline-offset:-2px}.himmo-accordion__title{flex:1}.himmo-accordion__chevron{flex-shrink:0;color:var(--himmo-text-muted);transition:transform var(--himmo-accordion-transition)}.himmo-accordion__item--open .himmo-accordion__chevron{transform:rotate(180deg)}.himmo-accordion__panel{background:var(--himmo-accordion-bg);overflow:hidden}.himmo-accordion__panel[hidden]{display:none}.himmo-accordion__content{padding:var(--himmo-space-4)}@media (prefers-reduced-motion: reduce){.himmo-accordion__header,.himmo-accordion__chevron{transition:none}}.himmo-characteristics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--himmo-space-2) var(--himmo-space-4);margin:0;padding:0}.himmo-characteristics-grid dt{font-weight:500;color:var(--himmo-text-muted);font-size:var(--himmo-text-sm)}.himmo-characteristics-grid dd{margin:0;font-weight:400;color:var(--himmo-text);font-size:var(--himmo-text-sm)}.himmo-characteristics-grid--finance dd{font-weight:600}@media (max-width: 639px){.himmo-characteristics-grid{grid-template-columns:1fr;gap:var(--himmo-space-2)}.himmo-characteristics-grid dt{margin-bottom:2px}.himmo-characteristics-grid dd{margin-bottom:var(--himmo-space-2);padding-bottom:var(--himmo-space-2);border-bottom:1px solid var(--himmo-accordion-border)}.himmo-characteristics-grid dd:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}}:root{--himmo-badge-bg: #ecfdf5;--himmo-badge-border: #10b981;--himmo-badge-text: #065f46;--himmo-badge-check: #10b981}.himmo-equipment-badges{display:flex;flex-wrap:wrap;gap:var(--himmo-space-2)}.himmo-equipment-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--himmo-badge-bg);border:1px solid var(--himmo-badge-border);border-radius:999px;font-size:var(--himmo-text-sm);font-weight:500;color:var(--himmo-badge-text);line-height:1.2}.himmo-equipment-badge__check{flex-shrink:0;color:var(--himmo-badge-check)}.himmo-equipment-badge__icon{font-size:1em}.himmo-equipment-badge__label{white-space:nowrap}:root{--himmo-state-good: #22c55e;--himmo-state-ok: #f59e0b;--himmo-state-bad: #ef4444}.himmo-states-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--himmo-space-2) var(--himmo-space-4)}.himmo-state-item{display:flex;justify-content:space-between;align-items:center;padding:var(--himmo-space-2) 0}.himmo-state-item__label{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted)}.himmo-state-item__value{display:flex;align-items:center;gap:6px;font-size:var(--himmo-text-sm);font-weight:500}.himmo-state-item__indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.himmo-state--good .himmo-state-item__indicator{background-color:var(--himmo-state-good)}.himmo-state--good{color:#166534}.himmo-state--ok .himmo-state-item__indicator{background-color:var(--himmo-state-ok)}.himmo-state--ok{color:#b45309}.himmo-state--bad .himmo-state-item__indicator{background-color:var(--himmo-state-bad)}.himmo-state--bad{color:#b91c1c}@media (max-width: 639px){.himmo-states-list{grid-template-columns:1fr}.himmo-state-item{border-bottom:1px solid var(--himmo-accordion-border);padding:var(--himmo-space-2) 0}.himmo-state-item:last-child{border-bottom:none}}.himmo-coup-coeur-badge{display:inline-flex;align-items:center;gap:var(--himmo-space-2);padding:var(--himmo-space-2) var(--himmo-space-4);background:linear-gradient(135deg,#fce7f3,#fdf2f8);border:1px solid #f9a8d4;border-radius:999px;font-size:var(--himmo-text-sm);font-weight:600;color:#9d174d;margin-bottom:var(--himmo-space-4)}.himmo-pieces-wrapper{overflow:hidden;border:1px solid #e5e7eb;border-radius:var(--himmo-radius-md, 8px);box-shadow:var(--himmo-shadow-sm)}.himmo-pieces-table{width:100%;border-collapse:collapse;font-size:var(--himmo-text-sm)}.himmo-pieces-table thead{background:var(--himmo-accordion-header-bg, #f9fafb);border-bottom:2px solid #e5e7eb}.himmo-pieces-table th{padding:.75rem 1rem;text-align:left;font-weight:600;font-size:var(--himmo-text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--himmo-text-muted, #6b7280);white-space:nowrap}.himmo-pieces-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #f3f4f6;vertical-align:middle;color:var(--himmo-text, #1f2937)}.himmo-pieces-table tbody tr:hover td{background:var(--himmo-bg-hover, #f1f5f9)}.himmo-pieces-table tbody tr:nth-child(2n) td{background:#fafafa}.himmo-pieces-table tbody tr:nth-child(2n):hover td{background:var(--himmo-bg-hover, #f1f5f9)}.himmo-pieces-table tbody tr:last-child td,.himmo-pieces-table__desc:last-child td{border-bottom:none}.himmo-pieces-table td:first-child{font-weight:600;color:var(--himmo-primary, #2563eb)}.himmo-pieces-table td:nth-child(2){font-variant-numeric:tabular-nums;white-space:nowrap}.himmo-pieces-table__desc td{padding-top:0;padding-bottom:.625rem;color:var(--himmo-text-muted, #6b7280);font-style:italic;font-size:var(--himmo-text-xs);border-bottom:1px solid #f3f4f6}@media (max-width: 639px){.himmo-accordion__header{padding:var(--himmo-space-4) var(--himmo-space-4)}.himmo-accordion__content{padding:var(--himmo-space-4)}.himmo-detailed-characteristics__title{font-size:var(--himmo-text-lg)}.himmo-pieces-wrapper{border-radius:0;border-left:none;border-right:none}.himmo-pieces-table thead{display:none}.himmo-pieces-table,.himmo-pieces-table tbody,.himmo-pieces-table tr,.himmo-pieces-table td{display:block;width:100%}.himmo-pieces-table tbody tr{border-bottom:2px solid #e5e7eb;padding:.5rem 0}.himmo-pieces-table tbody tr:last-child{border-bottom:none}.himmo-pieces-table td{border-bottom:none;padding:.25rem 1rem;display:grid;grid-template-columns:6rem 1fr;gap:.5rem;align-items:baseline}.himmo-pieces-table td:first-child{grid-template-columns:1fr;padding-top:.5rem;font-size:var(--himmo-text-sm)}.himmo-pieces-table td[data-label]:before{content:attr(data-label);font-size:var(--himmo-text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--himmo-text-muted, #6b7280);font-weight:600;white-space:nowrap}.himmo-pieces-table__desc td{grid-template-columns:1fr;padding-top:0}}@media (min-width: 640px) and (max-width: 1023px){.himmo-characteristics-grid,.himmo-states-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.himmo-characteristics-grid,.himmo-states-list{grid-template-columns:repeat(2,1fr)}}.himmo-confirm-alert{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:var(--himmo-space-4, 1rem)}.himmo-confirm-alert__container{max-width:560px;width:100%;text-align:center;background:var(--himmo-bg-surface, #ffffff);border-radius:12px;padding:var(--himmo-space-8, 2rem) var(--himmo-space-6, 1.5rem);box-shadow:var(--himmo-shadow-md, 0 4px 6px rgba(0, 0, 0, .07))}.himmo-confirm-alert__icon{font-size:3rem;line-height:1;width:80px;height:80px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--himmo-space-4, 1rem)}.himmo-confirm-alert--success .himmo-confirm-alert__icon{background:#d4edda;color:#28a745}.himmo-confirm-alert--info .himmo-confirm-alert__icon{background:var(--himmo-bg-info, #e0f2fe);color:var(--himmo-text-info, #0369a1)}.himmo-confirm-alert--error .himmo-confirm-alert__icon{background:#f8d7da;color:#dc3545}.himmo-confirm-alert__title{font-size:var(--himmo-text-2xl, 1.5rem);font-weight:600;color:var(--himmo-text, #1f2937);margin:0 0 var(--himmo-space-2, .5rem)}.himmo-confirm-alert__message{font-size:var(--himmo-text-base, 1rem);color:var(--himmo-text-muted, #6b7280);line-height:1.6;margin:0 0 var(--himmo-space-6, 1.5rem)}.himmo-confirm-alert__criteria{background:var(--himmo-surface, #f9fafb);border-radius:8px;padding:var(--himmo-space-4, 1rem);margin-bottom:var(--himmo-space-6, 1.5rem);text-align:left}.himmo-confirm-alert__criteria-title{font-size:var(--himmo-text-sm, .875rem);font-weight:600;color:var(--himmo-text, #1f2937);margin:0 0 var(--himmo-space-2, .5rem);text-transform:uppercase;letter-spacing:.03em}.himmo-confirm-alert__criteria-list{list-style:none;margin:0;padding:0;font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-text-muted, #6b7280)}.himmo-confirm-alert__criteria-list li{padding:4px 0}.himmo-confirm-alert__criteria-list li strong{color:var(--himmo-text, #1f2937)}.himmo-confirm-alert__actions{display:flex;flex-direction:column;gap:var(--himmo-space-2, .5rem);align-items:center}.himmo-confirm-alert__btn{display:inline-block;padding:12px 24px;border-radius:8px;font-size:var(--himmo-text-base, 1rem);font-weight:500;text-decoration:none;transition:background-color .2s,color .2s;min-width:200px;text-align:center}.himmo-confirm-alert__btn:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-confirm-alert__btn--primary{background:var(--himmo-primary, #2563eb);color:var(--himmo-text-on-primary, #ffffff)}.himmo-confirm-alert__btn--primary:hover{background:var(--himmo-primary-dark, #1d4ed8);color:var(--himmo-text-on-primary, #ffffff)}.himmo-confirm-alert__btn--secondary{background:transparent;color:var(--himmo-text, #4b5563)}.himmo-confirm-alert__btn--secondary:hover{color:var(--himmo-text, #1f2937);background:var(--himmo-surface, #f9fafb)}@media (min-width: 640px){.himmo-confirm-alert__container{padding:48px 40px}.himmo-confirm-alert__actions{flex-direction:row;justify-content:center}}@media (prefers-reduced-motion: reduce){.himmo-confirm-alert__btn{transition:none}}.himmo-honoraires{margin:20px 0;padding:20px;border:1px solid #dcdcde;border-radius:4px;background:#fff}.himmo-honoraires h2,.himmo-honoraires h3{margin-top:0}.himmo-honoraires table{width:100%;border-collapse:collapse;margin:10px 0}.himmo-honoraires table th,.himmo-honoraires table td{padding:8px 12px;border:1px solid #dcdcde;text-align:left}.himmo-honoraires table th{background:#f0f0f1;font-weight:600}.himmo-honoraires-footer{background:#f8f9fa;border-top:1px solid #dcdcde;padding:20px 0;font-size:13px;color:#50575e}.himmo-honoraires-footer__inner{max-width:1200px;margin:0 auto;padding:0 20px}.himmo-honoraires-footer h2,.himmo-honoraires-footer h3{font-size:15px;margin-top:0;color:#1d2327}.himmo-honoraires-footer table{width:100%;border-collapse:collapse;margin:10px 0;font-size:13px}.himmo-honoraires-footer table th,.himmo-honoraires-footer table td{padding:6px 10px;border:1px solid #dcdcde;text-align:left}.himmo-honoraires-footer table th{background:#f0f0f1;font-weight:600}.himmo-mentions-legales{margin:20px 0;padding:20px;border:1px solid #dcdcde;border-radius:4px;background:#fff}.himmo-mentions-legales__item{padding:6px 0;border-bottom:1px solid #f0f0f1;font-size:14px;line-height:1.6}.himmo-mentions-legales__item:last-child{border-bottom:none;padding-bottom:0}.himmo-mentions-legales__item:first-child{padding-top:0}.himmo-agency-card__legal-info{margin:4px 0;font-size:13px;color:#50575e}.himmo-favorite-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:50%;background:#ffffffe6;color:var(--himmo-text-muted, #6b7280);cursor:pointer;transition:color .2s ease,background-color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent;z-index:2}.himmo-favorite-btn:hover{background:#fff;color:var(--himmo-error, #ef4444);transform:scale(1.1)}.himmo-favorite-btn:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-favorite-btn__icon--filled{display:none}.himmo-favorite-btn__icon--empty{display:block}.himmo-favorite-btn--active .himmo-favorite-btn__icon--filled{display:block;color:var(--himmo-error, #ef4444)}.himmo-favorite-btn--active .himmo-favorite-btn__icon--empty{display:none}.himmo-favorite-btn--active{color:var(--himmo-error, #ef4444)}.himmo-favorite-btn--active:hover{color:var(--himmo-error, #ef4444);opacity:.8}@keyframes himmo-heart-pulse{0%{transform:scale(1)}50%{transform:scale(1.25)}to{transform:scale(1)}}.himmo-favorite-btn--active .himmo-favorite-btn__icon--filled{animation:himmo-heart-pulse .3s ease}.himmo-property-card{position:relative}.himmo-property-card__favorite-btn{position:absolute;top:var(--himmo-space-2, .5rem);right:var(--himmo-space-2, .5rem);z-index:3;box-shadow:var(--himmo-shadow-sm, 0 1px 2px rgba(0,0,0,.05))}.himmo-property-hero__title-row{display:flex;align-items:flex-start;gap:var(--himmo-space-3, .75rem)}.himmo-property-hero__title-row .himmo-property-hero__title{flex:1 1 auto}.himmo-property-hero__favorite-btn{flex:0 0 auto;margin-top:var(--himmo-space-1, .25rem)}.himmo-favorites-counter{position:fixed;bottom:var(--himmo-space-6, 1.5rem);right:var(--himmo-space-6, 1.5rem);display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--himmo-primary, #2563eb);color:#fff;box-shadow:var(--himmo-shadow-lg, 0 10px 15px rgba(0,0,0,.1));text-decoration:none;z-index:1000;transition:transform .2s ease,background-color .2s ease;opacity:0;pointer-events:none;transform:scale(.8)}.himmo-favorites-counter:hover{transform:scale(1.1);background:var(--himmo-primary-hover, #1d4ed8);color:#fff}.himmo-favorites-counter:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-favorites-counter--has-items{opacity:1;pointer-events:auto;transform:scale(1)}.himmo-favorites-counter__icon{width:22px;height:22px}.himmo-favorites-counter__badge{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--himmo-error, #ef4444);color:#fff;font-size:var(--himmo-text-xs, .75rem);font-weight:700;line-height:1}@media (max-width: 768px){.himmo-favorites-counter{bottom:var(--himmo-space-4, 1rem);right:var(--himmo-space-4, 1rem);width:48px;height:48px}.himmo-property-hero__title-row{flex-wrap:nowrap}}@media (prefers-reduced-motion: reduce){.himmo-favorite-btn,.himmo-favorites-counter{transition:none}.himmo-favorite-btn--active .himmo-favorite-btn__icon--filled{animation:none}}.himmo-favorites-page{max-width:1200px;margin:0 auto;padding:var(--himmo-space-6, 1.5rem) var(--himmo-space-4, 1rem)}.himmo-favorites-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--himmo-space-6, 1.5rem);flex-wrap:wrap;gap:var(--himmo-space-4, 1rem)}.himmo-favorites-page__title{font-size:var(--himmo-text-2xl, 1.5rem);font-weight:700;margin:0;color:var(--himmo-text, #1f2937)}.himmo-favorites-page__clear-all{display:inline-flex;align-items:center;padding:var(--himmo-space-2, .5rem) var(--himmo-space-4, 1rem);background:transparent;border:1px solid var(--himmo-error, #ef4444);color:var(--himmo-error, #ef4444);border-radius:var(--himmo-radius-md, .5rem);font-size:var(--himmo-text-sm, .875rem);cursor:pointer;transition:background-color .2s ease,color .2s ease}.himmo-favorites-page__clear-all:hover{background:var(--himmo-error, #ef4444);color:#fff}.himmo-favorites-page__clear-all:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-favorites-page__card-wrapper{position:relative}.himmo-property-card--removing{opacity:0;transform:scale(.95) translateY(-10px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.himmo-property-card__unavailable-badge{position:absolute;top:var(--himmo-space-2, .5rem);right:var(--himmo-space-2, .5rem);z-index:10;padding:var(--himmo-space-1, .25rem) var(--himmo-space-3, .75rem);background:var(--himmo-error, #ef4444);color:#fff;font-size:var(--himmo-text-xs, .75rem);font-weight:700;text-transform:uppercase;border-radius:var(--himmo-radius-sm, .25rem);letter-spacing:.05em}.himmo-property-card--unavailable{opacity:.7}.himmo-property-card--unavailable .himmo-property-card__link{pointer-events:none;cursor:default}.himmo-property-card__link--disabled{pointer-events:none;cursor:default;text-decoration:none}.himmo-favorites-page__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--himmo-space-12, 3rem) var(--himmo-space-4, 1rem);min-height:300px}.himmo-favorites-page__empty-icon{color:var(--himmo-text-muted, #6b7280);margin-bottom:var(--himmo-space-4, 1rem)}.himmo-favorites-page__empty-icon svg{width:64px;height:64px}.himmo-favorites-page__empty-message{font-size:var(--himmo-text-xl, 1.25rem);font-weight:600;color:var(--himmo-text, #1f2937);margin:0 0 var(--himmo-space-2, .5rem)}.himmo-favorites-page__empty-description{font-size:var(--himmo-text-base, 1rem);color:var(--himmo-text-muted, #6b7280);margin:0 0 var(--himmo-space-6, 1.5rem);max-width:400px}.himmo-favorites-page__empty-cta{display:inline-flex;align-items:center;padding:var(--himmo-space-3, .75rem) var(--himmo-space-6, 1.5rem);background:var(--himmo-primary, #2563eb);color:#fff;text-decoration:none;border-radius:var(--himmo-radius-md, .5rem);font-weight:600;font-size:var(--himmo-text-base, 1rem);transition:background-color .2s ease}.himmo-favorites-page__empty-cta:hover{background:var(--himmo-primary-hover, #1d4ed8);color:#fff}.himmo-favorites-page__empty-cta:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-favorites-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--himmo-space-12, 3rem) var(--himmo-space-4, 1rem);min-height:200px;color:var(--himmo-text-muted, #6b7280)}.himmo-favorites-page__loading-spinner{width:40px;height:40px;border:3px solid var(--himmo-border, #e5e7eb);border-top-color:var(--himmo-primary, #2563eb);border-radius:50%;animation:himmo-spin .8s linear infinite;margin-bottom:var(--himmo-space-4, 1rem)}@keyframes himmo-spin{to{transform:rotate(360deg)}}.himmo-favorites-page__error{text-align:center;padding:var(--himmo-space-8, 2rem);color:var(--himmo-error, #ef4444)}@media (max-width: 767px){.himmo-favorites-page__header{flex-direction:column;align-items:flex-start}.himmo-favorites-page__empty-icon svg{width:48px;height:48px}}@media (prefers-reduced-motion: reduce){.himmo-property-card--removing{transition:none}.himmo-favorites-page__loading-spinner{animation:none;border-top-color:var(--himmo-primary, #2563eb)}}.himmo-comparator-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;border-radius:50%;background:#ffffffe6;color:var(--himmo-text-muted, #6b7280);cursor:pointer;transition:color .2s ease,background-color .2s ease,transform .15s ease;-webkit-tap-highlight-color:transparent;z-index:2}.himmo-comparator-button:hover{background:#fff;color:var(--himmo-primary, #2563eb);transform:scale(1.1)}.himmo-comparator-button:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-comparator-button__icon--active{display:none}.himmo-comparator-button__icon--inactive{display:block}.himmo-comparator-button--active .himmo-comparator-button__icon--active{display:block;color:var(--himmo-primary, #2563eb)}.himmo-comparator-button--active .himmo-comparator-button__icon--inactive{display:none}.himmo-comparator-button--active{color:var(--himmo-primary, #2563eb);background:var(--himmo-primary-light, #dbeafe)}.himmo-comparator-button--active:hover{color:var(--himmo-primary-dark, #1d4ed8);opacity:.9}.himmo-comparator-button--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.himmo-comparator-button--disabled:hover{background-color:transparent;color:var(--himmo-text-muted, #6b7280)}@keyframes himmo-compare-pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.himmo-comparator-button--active .himmo-comparator-button__icon--active{animation:himmo-compare-pulse .3s ease}.himmo-property-card__actions{position:absolute;top:var(--himmo-space-2, .5rem);right:var(--himmo-space-2, .5rem);display:flex;flex-direction:column;gap:var(--himmo-space-2, .5rem);z-index:3}.himmo-property-card__actions .himmo-favorite-btn,.himmo-property-card__actions .himmo-comparator-button{position:static;box-shadow:var(--himmo-shadow-sm, 0 1px 2px rgba(0,0,0,.05))}.himmo-property-card__favorite-btn.himmo-favorite-btn,.himmo-property-card__comparator-btn.himmo-comparator-button{position:static}.himmo-property-hero__actions{display:flex;flex-direction:row;gap:var(--himmo-space-2, .5rem);flex-shrink:0}.himmo-property-hero__actions .himmo-favorite-btn,.himmo-property-hero__actions .himmo-comparator-button{flex:0 0 auto}.himmo-comparator-bar{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--himmo-border-color, #dee2e6);box-shadow:0 -4px 20px #0000001a;z-index:1001;transform:translateY(0);transition:transform .3s ease,opacity .3s ease;padding-bottom:env(safe-area-inset-bottom,0px)}.himmo-comparator-bar--hidden{transform:translateY(100%);opacity:0;pointer-events:none}.himmo-comparator-bar__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--himmo-space-4, 1rem);max-width:1200px;margin:0 auto;padding:var(--himmo-space-3, .75rem) var(--himmo-space-4, 1rem)}.himmo-comparator-bar__items{display:flex;gap:var(--himmo-space-3, .75rem);flex:1 1 auto;min-width:0}.himmo-comparator-bar__slot{flex:0 0 auto;width:210px;height:80px;border:2px dashed var(--himmo-border-color, #dee2e6);border-radius:var(--himmo-radius-md, .5rem);display:flex;align-items:center;justify-content:center;background:var(--himmo-surface, #f9fafb);transition:border-color .2s ease}.himmo-comparator-bar__slot--filled{border:none;background:transparent}.himmo-comparator-bar__item{display:flex;align-items:center;gap:var(--himmo-space-2, .5rem);width:100%;height:100%;background:var(--himmo-bg-surface, #ffffff);border-radius:var(--himmo-radius-md, .5rem);border:1px solid var(--himmo-border-color, #dee2e6);overflow:hidden;position:relative}.himmo-comparator-bar__item--unavailable{opacity:.6}.himmo-comparator-bar__item-image{position:relative;width:80px;height:100%;flex-shrink:0;overflow:hidden}.himmo-comparator-bar__item-image img{width:100%;height:100%;object-fit:cover}.himmo-comparator-bar__item-placeholder{width:100%;height:100%;background:var(--himmo-surface, #f9fafb);display:flex;align-items:center;justify-content:center}.himmo-comparator-bar__unavailable-badge{position:absolute;top:2px;left:2px;background:var(--himmo-error, #ef4444);color:#fff;font-size:8px;font-weight:600;padding:2px 4px;border-radius:2px;text-transform:uppercase;line-height:1}.himmo-comparator-bar__item-info{flex:1 1 auto;min-width:0;padding:6px 4px 6px 0;display:flex;flex-direction:column;justify-content:center;gap:1px}.himmo-comparator-bar__item-title{display:block;font-size:.8125rem;font-weight:600;color:var(--himmo-text, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.himmo-comparator-bar__item-city{display:block;font-size:.6875rem;font-weight:400;color:var(--himmo-text-muted, #6b7280);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.himmo-comparator-bar__item-price{display:block;font-size:.75rem;font-weight:600;color:var(--himmo-primary, #2563eb);white-space:nowrap;line-height:1.3}.himmo-comparator-bar__item-remove{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:50%;background:#ffffffe6;color:var(--himmo-text-muted, #6b7280);cursor:pointer;transition:background-color .2s ease,color .2s ease;box-shadow:0 1px 3px #0000001a}.himmo-comparator-bar__item-remove:hover{background:var(--himmo-error, #ef4444);color:#fff}.himmo-comparator-bar__item-remove:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:1px}.himmo-comparator-bar__actions{display:flex;align-items:center;gap:var(--himmo-space-3, .75rem);flex-shrink:0}.himmo-comparator-bar__compare-btn{display:inline-flex;align-items:center;gap:var(--himmo-space-2, .5rem);padding:var(--himmo-space-2, .5rem) var(--himmo-space-4, 1rem);background:var(--himmo-primary, #2563eb);color:#fff;border:none;border-radius:var(--himmo-radius-md, .5rem);font-size:var(--himmo-text-sm, .875rem);font-weight:600;text-decoration:none;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.himmo-comparator-bar__compare-btn:hover{background:var(--himmo-primary-dark, #1d4ed8);color:#fff}.himmo-comparator-bar__compare-btn:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-comparator-bar__compare-btn--disabled{background:var(--himmo-text-muted, #6b7280);cursor:not-allowed;opacity:.6}.himmo-comparator-bar__compare-btn--disabled:hover{background:var(--himmo-text-muted, #6b7280)}.himmo-comparator-bar__btn-icon{flex-shrink:0}.himmo-comparator-bar__count{font-weight:400;opacity:.8}.himmo-comparator-bar__clear-btn{display:inline-flex;align-items:center;gap:var(--himmo-space-2, .5rem);padding:var(--himmo-space-2, .5rem) var(--himmo-space-3, .75rem);background:transparent;border:1px solid var(--himmo-border-color, #dee2e6);border-radius:var(--himmo-radius-md, .5rem);color:var(--himmo-text-muted, #6b7280);font-size:var(--himmo-text-sm, .875rem);cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}.himmo-comparator-bar__clear-btn:hover{background:var(--himmo-error, #ef4444);border-color:var(--himmo-error, #ef4444);color:#fff}.himmo-comparator-bar__clear-btn:focus-visible{outline:2px solid var(--himmo-primary, #2563eb);outline-offset:2px}.himmo-comparator-bar__toast{position:absolute;top:-48px;left:50%;transform:translate(-50%) translateY(10px);background:var(--himmo-text, #1f2937);color:#fff;padding:var(--himmo-space-2, .5rem) var(--himmo-space-4, 1rem);border-radius:var(--himmo-radius-md, .5rem);font-size:var(--himmo-text-sm, .875rem);white-space:nowrap;opacity:0;transition:opacity .3s ease,transform .3s ease;pointer-events:none;z-index:10}.himmo-comparator-bar__toast--visible{opacity:1;transform:translate(-50%) translateY(0)}.himmo-comparator-bar__toast--warning{background:var(--himmo-accent, #f97316)}.himmo-comparator-bar__toast--error{background:var(--himmo-error, #ef4444)}.himmo-comparator-bar__toast--success{background:var(--himmo-success, #22c55e)}@media (max-width: 768px){.himmo-comparator-bar__inner{flex-wrap:wrap;padding:var(--himmo-space-2, .5rem);gap:var(--himmo-space-2, .5rem)}.himmo-comparator-bar__items{order:1;flex:1 1 100%;justify-content:center;gap:var(--himmo-space-2, .5rem)}.himmo-comparator-bar__slot{width:auto;height:44px;border-radius:999px;padding:0}.himmo-comparator-bar__slot--filled{border-radius:999px}.himmo-comparator-bar__item{border-radius:999px;gap:var(--himmo-space-2, .5rem);padding-right:28px}.himmo-comparator-bar__item-image{width:40px;height:40px;border-radius:50%;margin:2px}.himmo-comparator-bar__item-image img{border-radius:50%}.himmo-comparator-bar__item-info{padding:4px 0}.himmo-comparator-bar__item-title{font-size:.75rem;font-weight:600}.himmo-comparator-bar__item-city,.himmo-comparator-bar__item-price{display:none}.himmo-comparator-bar__item-remove{top:50%;transform:translateY(-50%);right:4px;width:20px;height:20px}.himmo-comparator-bar__actions{order:2;flex:1 1 100%;justify-content:center;margin-top:0}.himmo-comparator-bar__clear-text{display:none}.himmo-property-card__actions{flex-direction:row}}@media (max-width: 480px){.himmo-comparator-bar__item-title{font-size:.6875rem;max-width:12ch}.himmo-comparator-bar__item-image{width:36px;height:36px}.himmo-comparator-bar__compare-btn{padding:var(--himmo-space-2, .5rem) var(--himmo-space-3, .75rem);font-size:var(--himmo-text-xs, .75rem)}}@media (prefers-reduced-motion: reduce){.himmo-comparator-button,.himmo-comparator-bar{transition:none}.himmo-comparator-button--active .himmo-comparator-button__icon--active{animation:none}.himmo-comparator-bar__toast{transition:opacity .15s ease}}.himmo-compare-page{max-width:1200px;margin:0 auto;padding:var(--himmo-space-6, 1.5rem) var(--himmo-space-4, 1rem)}.himmo-compare-page__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--himmo-space-4, 1rem);margin-bottom:var(--himmo-space-6, 1.5rem)}.himmo-compare-page__title{font-size:var(--himmo-text-2xl, 1.5rem);font-weight:700;color:var(--himmo-text, #1f2937);margin:0}.himmo-compare-page__back-btn{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-primary, #2563eb);text-decoration:none;padding:var(--himmo-space-2, .5rem) var(--himmo-space-4, 1rem);border:1px solid var(--himmo-primary, #2563eb);border-radius:var(--himmo-radius-md, .5rem);transition:background-color .2s ease,color .2s ease}.himmo-compare-page__back-btn:hover{background-color:var(--himmo-primary, #2563eb);color:var(--himmo-text-on-primary, #ffffff)}.himmo-compare-page__back-btn:focus-visible{outline:2px solid var(--himmo-focus-ring, #0d6efd);outline-offset:2px}.himmo-compare-page__table{overflow-x:auto;-webkit-overflow-scrolling:touch}.himmo-compare-page__row{display:grid;grid-template-columns:140px repeat(var(--himmo-compare-cols, 3),minmax(200px,1fr));border-bottom:1px solid var(--himmo-border-color, #dee2e6);min-width:0}.himmo-compare-page__row--header{border-bottom:2px solid var(--himmo-border-color, #dee2e6)}.himmo-compare-page__row-label{display:flex;align-items:center;padding:var(--himmo-space-4, 1rem) var(--himmo-space-2, .5rem);font-size:var(--himmo-text-sm, .875rem);font-weight:600;color:var(--himmo-text-muted, #6b7280);background-color:var(--himmo-surface, #f9fafb);position:sticky;left:0;z-index:1}.himmo-compare-page__cell{display:flex;align-items:center;justify-content:center;padding:var(--himmo-space-4, 1rem) var(--himmo-space-2, .5rem);font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-text, #1f2937);text-align:center;min-width:200px;word-break:break-word}.himmo-compare-page__cell--header{flex-direction:column;position:relative;padding-top:var(--himmo-space-8, 2rem)}.himmo-compare-page__cell--best{background-color:#10b9811a;color:#065f46;font-weight:600}.himmo-compare-page__photo{width:100%;max-width:200px;aspect-ratio:4 / 3;border-radius:var(--himmo-radius-md, .5rem);overflow:hidden}.himmo-compare-page__photo img{width:100%;height:100%;object-fit:cover;display:block}.himmo-compare-page__remove-btn{position:absolute;top:var(--himmo-space-2, .5rem);right:var(--himmo-space-2, .5rem);width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:var(--himmo-bg-surface, #ffffff);color:#ef4444;border:1px solid #ef4444;border-radius:50%;font-size:16px;font-weight:700;line-height:1;cursor:pointer;transition:background-color .2s ease,color .2s ease;padding:0}.himmo-compare-page__remove-btn:hover{background-color:#ef4444;color:var(--himmo-text-on-primary, #ffffff)}.himmo-compare-page__remove-btn:focus-visible{outline:2px solid var(--himmo-focus-ring, #0d6efd);outline-offset:2px}.himmo-compare-page__link{color:var(--himmo-primary, #2563eb);text-decoration:none;font-weight:600}.himmo-compare-page__link:hover{text-decoration:underline}.himmo-compare-page__view-link{color:var(--himmo-primary, #2563eb);text-decoration:none;font-size:var(--himmo-text-sm, .875rem);font-weight:500}.himmo-compare-page__view-link:hover{text-decoration:underline}.himmo-compare-page__unavailable{display:inline-block;font-size:var(--himmo-text-xs, .75rem);color:#ef4444;font-weight:600;margin-left:.25rem}.himmo-compare-page__dpe{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--himmo-radius-sm, 4px);font-weight:700;font-size:var(--himmo-text-sm, .875rem)}.himmo-compare-page__dpe--a{background-color:var(--himmo-dpe-a, #319834);color:#fff}.himmo-compare-page__dpe--b{background-color:var(--himmo-dpe-b, #33a357);color:#fff}.himmo-compare-page__dpe--c{background-color:var(--himmo-dpe-c, #6eb64c);color:#fff}.himmo-compare-page__dpe--d{background-color:var(--himmo-dpe-d, #f2e500);color:#000}.himmo-compare-page__dpe--e{background-color:var(--himmo-dpe-e, #edab18);color:#000}.himmo-compare-page__dpe--f{background-color:var(--himmo-dpe-f, #eb6b27);color:#fff}.himmo-compare-page__dpe--g{background-color:var(--himmo-dpe-g, #e30613);color:#fff}.himmo-compare-page__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--himmo-space-8, 2rem) var(--himmo-space-4, 1rem);text-align:center;min-height:300px}.himmo-compare-page__empty-icon{color:var(--himmo-text-muted, #6b7280);margin-bottom:var(--himmo-space-4, 1rem)}.himmo-compare-page__empty-message{font-size:var(--himmo-text-xl, 1.25rem);font-weight:600;color:var(--himmo-text, #1f2937);margin:0 0 var(--himmo-space-2, .5rem)}.himmo-compare-page__empty-description{font-size:var(--himmo-text-base, 1rem);color:var(--himmo-text-muted, #6b7280);margin:0 0 var(--himmo-space-6, 1.5rem);max-width:400px}.himmo-compare-page__empty-cta{display:inline-block;padding:var(--himmo-space-2, .5rem) var(--himmo-space-6, 1.5rem);background-color:var(--himmo-primary, #2563eb);color:var(--himmo-text-on-primary, #ffffff);text-decoration:none;border-radius:var(--himmo-radius-md, .5rem);font-weight:600;font-size:var(--himmo-text-base, 1rem);transition:background-color .2s ease}.himmo-compare-page__empty-cta:hover{background-color:var(--himmo-primary-dark, #1d4ed8);color:var(--himmo-text-on-primary, #ffffff)}.himmo-compare-page__empty-cta:focus-visible{outline:2px solid var(--himmo-focus-ring, #0d6efd);outline-offset:2px}.himmo-compare-page__empty-steps{list-style:none;counter-reset:steps;padding:0;margin:0 0 var(--himmo-space-6, 1.5rem);max-width:420px;text-align:left}.himmo-compare-page__empty-steps li{counter-increment:steps;display:flex;align-items:center;gap:var(--himmo-space-3, .75rem);font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-text-secondary, #374151);line-height:1.5;padding:var(--himmo-space-2, .5rem) 0}.himmo-compare-page__empty-steps li:before{content:counter(steps);display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border-radius:50%;background-color:var(--himmo-primary, #2563eb);color:var(--himmo-text-on-primary, #ffffff);font-size:.8125rem;font-weight:700}.himmo-compare-page__empty-steps-icon{display:inline-block;vertical-align:middle;flex-shrink:0;margin:0 2px}.himmo-compare-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--himmo-space-8, 2rem);min-height:200px}.himmo-compare-page__loading-spinner{width:40px;height:40px;border:3px solid var(--himmo-border-color, #dee2e6);border-top-color:var(--himmo-primary, #2563eb);border-radius:50%;animation:himmo-compare-spin .8s linear infinite;margin-bottom:var(--himmo-space-4, 1rem)}@keyframes himmo-compare-spin{to{transform:rotate(360deg)}}.himmo-compare-page__loading p{font-size:var(--himmo-text-sm, .875rem);color:var(--himmo-text-muted, #6b7280)}.himmo-compare-page__error{text-align:center;padding:var(--himmo-space-8, 2rem);color:#ef4444}@media (max-width: 767px){.himmo-compare-page__row{grid-template-columns:100px repeat(var(--himmo-compare-cols, 3),minmax(200px,1fr))}.himmo-compare-page__row-label{font-size:var(--himmo-text-xs, .75rem);padding:var(--himmo-space-2, .5rem)}.himmo-compare-page__cell{padding:var(--himmo-space-2, .5rem);font-size:var(--himmo-text-xs, .75rem)}.himmo-compare-page__photo{max-width:150px}.himmo-compare-page__title{font-size:var(--himmo-text-xl, 1.25rem)}}@media (prefers-reduced-motion: reduce){.himmo-compare-page__loading-spinner{animation-duration:2s}.himmo-compare-page__back-btn,.himmo-compare-page__remove-btn,.himmo-compare-page__empty-cta{transition:none}}.himmo-estimation-page{max-width:640px;margin:0 auto;padding:var(--himmo-space-6) var(--himmo-space-4)}.himmo-estimation-page__header{margin-bottom:var(--himmo-space-8);text-align:center}.himmo-estimation-page__title{font-size:var(--himmo-text-3xl);color:var(--himmo-text);margin:0 0 var(--himmo-space-2) 0}.himmo-estimation-page__description{font-size:var(--himmo-text-base);color:var(--himmo-text-muted);margin:0}.himmo-estimation-form{display:flex;flex-direction:column;gap:var(--himmo-space-6)}.himmo-estimation-form__fieldset{border:1px solid #e5e7eb;border-radius:8px;padding:var(--himmo-space-6);margin:0}.himmo-estimation-form__legend{font-size:var(--himmo-text-lg);font-weight:600;color:var(--himmo-text);padding:0 var(--himmo-space-2)}.himmo-estimation-form__field{margin-bottom:var(--himmo-space-4)}.himmo-estimation-form__field:last-child{margin-bottom:0}.himmo-estimation-form__label{display:block;font-size:var(--himmo-text-sm);font-weight:500;color:var(--himmo-text);margin-bottom:.25rem}.himmo-estimation-form__input,.himmo-estimation-form__select{display:block;width:100%;padding:.625rem .75rem;font-size:var(--himmo-text-base);color:var(--himmo-text);background-color:var(--himmo-bg-surface);border:1px solid #d1d5db;border-radius:6px;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.himmo-estimation-form__input:focus,.himmo-estimation-form__select:focus{outline:none;border-color:var(--himmo-primary);box-shadow:0 0 0 3px #2563eb26}.himmo-estimation-form__field--error .himmo-estimation-form__input,.himmo-estimation-form__field--error .himmo-estimation-form__select{border-color:#ef4444}.himmo-estimation-form__field--error .himmo-estimation-form__input:focus,.himmo-estimation-form__field--error .himmo-estimation-form__select:focus{box-shadow:0 0 0 3px #ef444426}.himmo-estimation-form__error-message{display:block;font-size:var(--himmo-text-xs);color:#ef4444;margin-top:.25rem;min-height:1rem}.himmo-required{color:#ef4444;margin-left:.125rem}.himmo-estimation-form__error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:var(--himmo-space-4);color:#991b1b;font-size:var(--himmo-text-sm)}.himmo-estimation-form__consent{padding:0 var(--himmo-space-2)}.himmo-estimation-form__consent-label{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);cursor:pointer;line-height:1.5}.himmo-estimation-form__consent-checkbox{margin-top:.25rem;flex-shrink:0}.himmo-estimation-form__consent-label a{color:var(--himmo-primary);text-decoration:underline}.himmo-estimation-form__consent-label a:hover{color:var(--himmo-primary-dark)}.himmo-estimation-form__actions{padding:0 var(--himmo-space-2)}.himmo-estimation-form__submit{width:100%;position:relative}.himmo-estimation-form__submit .himmo-button__loading{display:none}.himmo-estimation-form__submit.is-loading .himmo-button__text{visibility:hidden}.himmo-estimation-form__submit.is-loading .himmo-button__loading{display:flex;align-items:center;justify-content:center;gap:.5rem;position:absolute;inset:0}.himmo-spinner{width:1.25rem;height:1.25rem;animation:himmo-spin 1s linear infinite}@keyframes himmo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.himmo-estimation-form__success{text-align:center;padding:var(--himmo-space-8) var(--himmo-space-4)}.himmo-estimation-form__success-icon{width:64px;height:64px;color:#22c55e;margin:0 auto var(--himmo-space-4);display:block}.himmo-estimation-form__success-title{font-size:var(--himmo-text-2xl);color:var(--himmo-text);margin:0 0 var(--himmo-space-2) 0}.himmo-estimation-form__success-text{font-size:var(--himmo-text-base);color:var(--himmo-text-muted);margin:0}.himmo-estimation-page .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){.himmo-estimation-page{padding:var(--himmo-space-4) var(--himmo-space-2)}.himmo-estimation-form__fieldset{padding:var(--himmo-space-4)}.himmo-estimation-page__title{font-size:var(--himmo-text-2xl)}}@media (prefers-reduced-motion: reduce){.himmo-spinner{animation-duration:2s}.himmo-estimation-form__input,.himmo-estimation-form__select{transition:none}}.himmo-shortcode-properties__empty{text-align:center;padding:var(--himmo-space-8) var(--himmo-space-4);color:var(--himmo-text-muted);font-size:var(--himmo-text-base)}.himmo-shortcode-property--mini{display:inline-block}.himmo-shortcode-property__link{display:inline-flex;align-items:center;gap:var(--himmo-space-2);color:var(--himmo-primary);text-decoration:none}.himmo-shortcode-property__link:hover{text-decoration:underline}.himmo-shortcode-property__title{font-weight:600}.himmo-shortcode-property__price{color:var(--himmo-accent);font-weight:700}.himmo-shortcode-property__unavailable{padding:var(--himmo-space-4);color:var(--himmo-text-muted);font-style:italic;text-align:center}.himmo-shortcode-favorites{margin-bottom:var(--himmo-space-8)}.himmo-back-button-wrapper{max-width:1200px;margin:0 auto;padding:var(--himmo-space-4) var(--himmo-space-4) 0}.himmo-back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:var(--himmo-bg-surface);border:1px solid #e5e7eb;border-radius:.5rem;color:var(--himmo-text);font-size:var(--himmo-text-sm);font-weight:500;font-family:inherit;text-decoration:none;cursor:pointer;transition:all .2s ease}.himmo-back-button svg{flex-shrink:0}.himmo-back-button:hover{background:var(--himmo-bg-hover);border-color:var(--himmo-primary);color:var(--himmo-primary);text-decoration:none;transform:translate(-2px)}.himmo-back-button:focus{outline:2px solid var(--himmo-focus-ring);outline-offset:2px}@media (max-width: 768px){.himmo-back-button-wrapper{padding:var(--himmo-space-2) var(--himmo-space-2) 0}.himmo-back-button{padding:.5rem .75rem;font-size:.8125rem}.himmo-back-button svg{width:16px;height:16px}}.himmo-simulator{background:var(--himmo-bg-surface);border:1px solid var(--himmo-border-color);border-radius:var(--himmo-radius-md);padding:var(--himmo-space-6);box-shadow:var(--himmo-shadow-sm);margin-top:var(--himmo-space-8)}.himmo-simulator__header{display:flex;align-items:center;gap:.5rem;margin-bottom:var(--himmo-space-4)}.himmo-simulator__header h2{margin:0;padding:0;font-size:1.25rem;line-height:1}.himmo-simulator__icon{color:var(--himmo-primary);flex-shrink:0;align-self:center}.himmo-simulator__form{display:grid;grid-template-columns:1fr 1fr;gap:var(--himmo-space-4);margin-bottom:var(--himmo-space-4)}.himmo-simulator__field{display:flex;flex-direction:column;gap:.25rem}.himmo-simulator__field label{color:var(--himmo-text-muted);font-size:var(--himmo-text-sm);font-weight:500}.himmo-simulator__input-wrapper{display:flex;align-items:center;border:1px solid var(--himmo-border-color);border-radius:var(--himmo-radius-sm, 6px);overflow:hidden;transition:border-color .2s ease}.himmo-simulator__input-wrapper:focus-within{border-color:var(--himmo-primary);box-shadow:0 0 0 2px #2563eb1a}.himmo-simulator__input-wrapper input{flex:1;border:none;padding:.5rem .75rem;font-size:1rem;background:transparent;outline:none;min-width:0}.himmo-simulator__input-wrapper input[readonly]{background:var(--himmo-bg-muted, #f3f4f6);color:var(--himmo-text-muted);cursor:not-allowed}.himmo-simulator__unit{padding:.5rem .75rem;color:var(--himmo-text-muted);font-size:var(--himmo-text-sm);background:var(--himmo-bg-muted, #f3f4f6);border-left:1px solid var(--himmo-border-color);white-space:nowrap}.himmo-simulator__field select{padding:.5rem .75rem;border:1px solid var(--himmo-border-color);border-radius:var(--himmo-radius-sm, 6px);font-size:1rem;background:var(--himmo-bg-surface);cursor:pointer;transition:border-color .2s ease}.himmo-simulator__field select:focus{border-color:var(--himmo-primary);outline:none;box-shadow:0 0 0 2px #2563eb1a}.himmo-simulator__field-desc{font-size:.75rem;color:var(--himmo-text-muted)}.himmo-simulator__results{display:flex;gap:var(--himmo-space-4);background:var(--himmo-primary-light);border-radius:var(--himmo-radius-sm, 6px);padding:var(--himmo-space-4);margin-bottom:var(--himmo-space-3, .75rem)}.himmo-simulator__result{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.himmo-simulator__result-value{font-size:1.5rem;font-weight:700;color:var(--himmo-primary);line-height:1.2}.himmo-simulator__result-label{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);margin-top:.25rem}.himmo-simulator__disclaimer{font-size:var(--himmo-text-sm);color:var(--himmo-text-muted);font-style:italic;margin:0}@media (max-width: 768px){.himmo-simulator__form{grid-template-columns:1fr}.himmo-simulator__results{flex-direction:column;gap:var(--himmo-space-3, .75rem)}}
