﻿html{--color-mode: 'lit';--light: #fff;--dark: #000;--bg: #141414;--haze: #f2f2f2;--gray: #020202;--accent: var(--gray);--text: #575757;--header-text: var(--dark);--font: Metropolis, sans-serif;--theme: #0077b8;--ease: cubic-bezier(.19,1,.22,1);--code-bg: var(--bg);--table-bg: var(--light);--table-haze: var(--haze);--table-border: #dedede;--footer-bg: var(--haze);--shadow: rgba(0,0,0,0.12);--translucent: rgba(0,0,0,0.05);--translucent-light: rgba(255,255,255,0.05);--post-bg: var(--light);--choice-bg: var(--haze);--ease: cubic-bezier(0.39, 0.575, 0.565, 1);--easing: cubic-bezier(.19,1,.22,1);--notice-code-bg: var(--bg);--notice-info-border-color: #6AB0DE;--notice-info-background: #E7F2FA;--notice-note-border-color: #F0B37E;--notice-note-background: #FFF2DB;--notice-tip-border-color: rgba(92, 184, 92, 0.8);--notice-tip-background: #E6F9E6;--notice-warning-border-color: rgba(217, 83, 79, 0.8);--notice-warning-background: #FAE2E2}html.page{--choice-bg: var(--light)}html[data-mode="dim"]{--light: hsla(0,0%,100%,0.87);--color-mode: 'dim';--text: var(--light);--accent: var(--bubble);--choice-bg: var(--bg);--code-bg: var(--translucent-light);--header-text: var(--light);--table-bg: var(--code-bg);--table-haze: rgba(255,255,255,0.1);--table-border: var(--code-bg);--footer-bg: var(--bg);--post-bg: var(--translucent-light)}html[data-mode="dim"] blockquote{background:var(--translucent-light);color:#dedede}html[data-mode="dim"] svg.icon{fill:var(--light)}html[data-mode="dim"] .icon img{background:none}html[data-mode="dim"] .icon svg{fill:#fafafa}html[data-mode="dim"] .sidebar_inner::before{display:none}html[data-mode="dim"] .color_choice::after{background-image:url("../images/night-moon.jpg");transform:translateX(1.4rem)}@media (prefers-color-scheme: dark){html:not([data-mode="lit"]){--light: hsla(0,0%,100%,0.87);--color-mode: 'dim';--text: var(--light);--accent: var(--bubble);--choice-bg: var(--bg);--code-bg: var(--translucent-light);--header-text: var(--light);--table-bg: var(--code-bg);--table-haze: rgba(255,255,255,0.1);--table-border: var(--code-bg);--footer-bg: var(--bg);--post-bg: var(--translucent-light)}html:not([data-mode="lit"]) blockquote{background:var(--translucent-light);color:#dedede}html:not([data-mode="lit"]) svg.icon{fill:var(--light)}html:not([data-mode="lit"]) .icon img{background:none}html:not([data-mode="lit"]) .icon svg{fill:#fafafa}html:not([data-mode="lit"]) .sidebar_inner::before{display:none}html:not([data-mode="lit"]) .color_choice::after{background-image:url("../images/night-moon.jpg");transform:translateX(1.4rem)}}@font-face{font-family:'Metropolis';font-style:normal;font-weight:200;src:local("Metropolis Extra Light"),local("Metropolis-Light"),url("../fonts/Metropolis-ExtraLight.woff2") format("woff2"),url("../fonts/Metropolis-ExtraLight.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:200;src:local("Metropolis Extra Light Italic"),local("Metropolis-ExtraLightItalic"),url("../fonts/Metropolis-ExtraLightItalic.woff2") format("woff2"),url("../fonts/Metropolis-ExtraLightItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:300;src:local("Metropolis Light"),local("Metropolis-Light"),url("../fonts/Metropolis-Light.woff2") format("woff2"),url("../fonts/Metropolis-Light.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:300;src:local("Metropolis Light Italic"),local("Metropolis-LightItalic"),url("../fonts/Metropolis-LightItalic.woff2") format("woff2"),url("../fonts/Metropolis-LightItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:400;src:local("Metropolis Regular"),local("Metropolis-Regular"),url("../fonts/Metropolis-Regular.woff2") format("woff2"),url("../fonts/Metropolis-Regular.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:400;src:local("Metropolis Regular Italic"),local("Metropolis-RegularItalic"),url("../fonts/Metropolis-RegularItalic.woff2") format("woff2"),url("../fonts/Metropolis-RegularItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:500;src:local("Metropolis Medium"),local("Metropolis-Medium"),url("../fonts/Metropolis-Medium.woff2") format("woff2"),url("../fonts/Metropolis-Medium.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:500;src:local("Metropolis Medium Italic"),local("Metropolis-MediumItalic"),url("../fonts/Metropolis-MediumItalic.woff2") format("woff2"),url("../fonts/Metropolis-MediumItalic.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:normal;font-weight:700;src:local("Metropolis Bold"),local("Metropolis-Bold"),url("../fonts/Metropolis-Bold.woff2") format("woff2"),url("../fonts/Metropolis-Bold.woff") format("woff");font-display:swap}@font-face{font-family:'Metropolis';font-style:italic;font-weight:700;src:local("Metropolis Bold Italic"),local("Metropolis-BoldItalic"),url("../fonts/Metropolis-BoldItalic.woff2") format("woff2"),url("../fonts/Metropolis-BoldItalic.woff") format("woff");font-display:swap}*{box-sizing:border-box;-webkit-appearance:none;margin:0;padding:0}body,html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-kerning:normal;-webkit-font-feature-settings:"kern" 1;text-rendering:optimizeLegibility;text-rendering:geometricPrecision;-webkit-text-size-adjust:100%;font-size:100%;scroll-padding-top:4.5rem}body::-webkit-scrollbar-corner,html::-webkit-scrollbar-corner{background-color:transparent}body{font-family:var(--font);background:var(--choice-bg);color:var(--text);font-size:1.1rem;line-height:1.5;max-width:1920px;margin:0 auto;position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}a:focus,a:focus-within{outline:none !important}h1,h2,h3,h4,h5{font-family:inherit;font-weight:300;padding:5px 0;margin:15px 0;color:var(--header-text);line-height:1.35}h1:hover .link,h2:hover .link,h3:hover .link,h4:hover .link,h5:hover .link{opacity:1}h1{font-size:200%;font-weight:400}h2{font-size:175%}h3{font-size:150%}h4{font-size:125%}h5{font-size:120%}h6{font-size:100%}img,svg{max-width:100%;vertical-align:middle}img{height:auto;margin:1rem auto;padding:0}img:focus,img:focus-within{outline:none !important;border:none !important}main{flex:1}ul{list-style:none;-webkit-padding-start:0;-moz-padding-start:0}em{font-weight:500}b,strong{font-weight:700}hr{border:none;padding:1px;background:#e7e7e7;opacity:0.5;margin:1rem 0}@media (prefers-color-scheme: dark){hr{background:var(--theme)}}aside h3{position:relative;margin:0 !important}aside ul{list-style:initial;padding-left:1rem}aside li{padding:0.25rem 0}table{width:100%;border-collapse:collapse;background:var(--table-haze);margin-bottom:1.5rem}table:not(.ln-table) t{background:var(--table-bg)}td,th{padding:0.5rem 1rem;border:1px solid var(--table-border)}td,th{padding:0.5rem 1rem;font-weight:400}td:not(:first-child),th:not(:first-child){padding-left:1.5rem}th{font-weight:700}tbody{padding:0}tbody tr:nth-child(even){background-color:var(--table-haze)}tbody tr:nth-child(odd){background-color:var(--table-bg)}blockquote{margin:25px auto;quotes:"“" "”" "‘" "’";padding:1.5rem;color:#555555;padding:1rem 1.5rem;border-left:0.2rem solid #0077b8;position:relative;background:var(--haze)}blockquote+.highlight_wrap{margin-top:2.25rem}p{padding:0.8rem 0}picture{display:block;width:100%}.nav_open+.nav_sub::before,.nav_open+.nav_sub .nav_child:first-child::before{width:0;height:0;border-left:0.33rem solid transparent;border-right:0.33rem solid transparent;top:-0.5rem;left:1rem}.nav{color:#fafafa;display:flex;justify-content:space-between;--maxWidth: 1440px;max-width:var(--maxWidth);margin-left:auto;margin-right:auto}.nav_active{background-color:rgba(216,6,209,0.7);border-radius:0.25rem}.nav_icon{width:0.7rem;margin-left:0.33rem;transition:transform 0.3s var(--ease);transform-origin:50% 50%}.nav_body{display:flex;flex:1}.nav_header{background-color:#088282;padding:0 1.5rem;position:fixed;width:100%;z-index:99;left:0}.nav_item{padding:0.25rem 1rem;display:inline-flex;align-items:center}.nav_sub{width:100%;left:0;position:absolute;z-index:20;border-radius:0 0 0.5rem 0.5rem;top:3rem;transition:height 0.3s ease-in-out;height:0;overflow:hidden;padding:0.96rem 0 0;background:transparent}.nav_parent{position:relative;display:flex;align-items:center;margin:0.25rem 0;border-radius:0.5rem}.nav_open+.nav_sub .nav_child{padding-top:0.5rem;padding-bottom:0.5rem;z-index:3}@media screen and (min-width: 769px){.nav_open+.nav_sub .nav_child+a{padding-top:0}}.nav_open+.nav_sub .nav_child:not(:first-child){position:relative}.nav_open+.nav_sub .nav_child:first-child::before{position:absolute;content:"";border-bottom:0.5rem solid var(--translucent-light);z-index:2}.nav_open+.nav_sub{height:initial;z-index:999;overflow:initial;border-radius:0.5rem;padding-bottom:0.5rem}@media screen and (min-width: 769px){.nav_open+.nav_sub{color:var(--text)}}.nav_open+.nav_sub::before,.nav_open+.nav_sub::after{content:"";position:absolute}.nav_open+.nav_sub::before{z-index:1}@media screen and (min-width: 769px){.nav_open+.nav_sub::before{border-bottom:0.5rem solid var(--choice-bg)}}.nav_open+.nav_sub::after{top:0;left:0;right:0;bottom:0;background:var(--translucent-light);border-radius:0.5rem;box-shadow:0 1rem 3rem rgba(0,0,0,0.25)}@media screen and (min-width: 769px){.nav_open+.nav_sub{background:var(--choice-bg);width:auto;white-space:nowrap}}.nav_open .nav_icon{transform:rotate(180deg)}.nav_sub .nav_item{z-index:5;display:block;padding-top:0.75rem;padding-bottom:0.75rem;transition:background 0.3s ease-out;margin:0}.nav_sub .nav_item:not(.nav_child){position:relative}.nav_brand img{max-width:3rem;margin:0}@media screen and (min-width: 769px){.nav_brand{padding-left:0}.nav_brand img{background:transparent !important}}.nav_center{display:none}@media screen and (min-width: 769px){.nav_center{display:flex;flex:1;align-items:center;justify-content:center}.nav_center+.follow{flex:initial}}@media screen and (min-width: 769px){.nav_hide{display:none}}.nav_close{display:none}.content,.footer{padding:1.5rem}@media screen and (min-width: 1441px){.content,.footer{padding:1.5rem 0}}.content{padding-top:5rem;--maxWidth: 1440px;max-width:var(--maxWidth);margin-left:auto;margin-right:auto}.footer{background:var(--footer-bg);margin-top:2rem;font-size:0.9rem}.footer_inner{--maxWidth: 1440px;max-width:var(--maxWidth);margin-left:auto;margin-right:auto;display:grid;grid-template-columns:4rem 1fr;align-items:center;position:relative}.button{background-color:#0077b8;color:#fff;display:inline-flex;padding:0.5rem 1.5rem;text-transform:uppercase;border:1px solid #0077b8;border-radius:1.5rem;font-size:0.9rem;align-items:center;user-select:none}.button_back{color:#fff;outline:none;border:none;appearance:none;background-color:#0077b8;font-size:1rem;cursor:pointer;padding:0.5rem 1rem;margin-bottom:1.33rem;border-radius:1.5rem}.button:hover,.button:focus{background-color:#003552;color:#fff;border:1px solid #003552}.button_translucent{background-color:rgba(0,119,184,0.15);color:#0077b8;border:1px solid transparent}.button_tally{padding:0 0.75rem;border-radius:0.5rem;background-color:#0077b8;display:inline-flex;justify-content:center;align-items:center;color:#fff;margin:0.1rem 0 0.1rem 0.2rem;font-size:0.7rem}.post_link,.post_title{margin-bottom:0}.post_link{line-height:1}.post_link>a{display:block;line-height:1.35}.posts{margin-top:2rem}.post_header{height:50vh;max-height:35rem;background-color:#088282;background-size:cover;background-position:center;margin-top:4.2rem}@media screen and (max-width: 992px){.post_header{height:40vh;margin-top:3rem}}@media screen and (max-width: 667px){.post_header{height:30vh}}.post_header+.content{padding-top:0}.post_item{margin-bottom:3rem;border-radius:0.5rem;background:var(--post-bg)}.post_tag{padding:0.2rem 0.8rem;font-size:0.8rem}.post_tags{display:none}.post_tags.jswidgetopen{display:initial;position:fixed;top:0;left:0;height:100vh;overflow-y:auto;width:100vw;padding:5rem 1.5rem;background:var(--translucent-light);cursor:pointer;z-index:999;overflow-y:auto}.post_tags_toggle{margin-top:0.5rem;margin-left:0.5rem;cursor:pointer}.post_tag,.post_share{margin:0.5rem}.post_share{display:inline-flex}.post_meta{align-items:stretch}.post_meta,.post_meta span{display:inline-flex;flex-flow:row wrap}.post_meta span{align-items:center;margin-bottom:0.5rem}@media screen and (min-width: 557px){.post_meta span{gap:0.5rem 0}}@media screen and (max-width: 667px){.post_meta span:last-of-type{margin-top:-0.5rem}}@media screen and (min-width: 667px){.post_meta .button{margin:0 0.5rem}}.post_date{margin-right:0.5rem;margin-left:0.25rem}.post_featured{display:block;margin:1rem auto}.post_content a:not(.button){color:#0077b8}.post_content ul,.post_content ol{list-style:initial;padding:0.5rem 1.25rem}.post_content ul li,.post_content ol li{padding-top:0.25rem}.post_content ol{list-style:decimal}.scrollable{display:grid;width:100%;max-width:100%;overflow-x:auto}.to-top{position:fixed;bottom:2rem;right:1.5rem;height:2.25rem;width:2.25rem;background-color:#0077b8;display:flex;align-items:center;justify-content:center;border:none;-webkit-appearance:none;border-radius:50%;color:#fff !important;text-decoration:none !important;font-size:1.25rem;cursor:pointer}@media screen and (max-width: 667px){.to-top{bottom:2.25rem}}.to-top,.to-top:focus{outline:none}.mb-0{margin-bottom:0 !important}.tags_list{cursor:initial;background:var(--choice-bg);padding:4.5rem 1.5rem 1.5rem 1.5rem;border-radius:1rem;max-width:720px;margin:0 auto;box-shadow:0 0.5rem 1.5rem rgba(0,0,0,0.12);position:relative;display:flex;flex-flow:row wrap}.tags_nav{position:relative}.tags_hide{position:absolute;top:1rem;right:1.5rem;padding:0.5rem;border-radius:50%;cursor:pointer}@media screen and (min-width: 992px){.tags_hide{display:none}}.tags_sort{font-size:1rem;color:var(--light);background:var(--theme);position:absolute;top:1.5rem;left:1.5rem;border-radius:1.5rem;padding:0.1rem}.tags_sort,.tags_sort span{user-select:none}.tags_sort span{display:inline-flex;justify-content:center;align-items:center;height:2rem;position:relative;z-index:5;cursor:pointer;width:5rem;font-weight:500}.tags_sort::before{content:"";position:absolute;width:4.5rem;top:0.25rem;bottom:0.25rem;left:0.25rem;z-index:3;background:var(--bg);opacity:0.5;border-radius:1.5rem;transition:0.25s transform var(--ease)}.tags_sort.sorted::before{transform:translateX(5rem)}.tag-title{border-bottom:none !important;display:inline-block !important;position:relative;font-size:2rem;margin-bottom:-1rem}.tag-title::after{content:attr(data-count);margin-left:1.5rem;background-color:#eee;padding:0.25rem 1rem;border-radius:15%;font-size:1.5rem}.icon{display:inline-flex;justify-content:center;align-items:center;margin:0 0.5rem}.icon,.icon img,.icon svg{width:1.1rem;height:1.1rem}.icon_2{width:2.2rem;height:2.2rem}.link{opacity:0;position:relative}.link_owner .icon{background-image:url("../icon/link.svg");background-size:100%;background-repeat:no-repeat;background-position:center right}.link_yank{opacity:1}.link_yanked{position:absolute;right:-1rem;top:-2rem;background-color:#0077b8;color:#fff;width:7rem;padding:0.25rem 0.5rem;font-size:0.9rem;border-radius:1rem;text-align:center}.link_yanked::after{position:absolute;top:1rem;content:"";border-color:#0077b8 transparent;border-style:solid;border-width:1rem 1rem 0 1rem;height:0;width:0;transform-origin:50% 50%;transform:rotate(145deg);right:0.45rem}.excerpt_header,.excerpt_footer{padding:1rem}.excerpt_footer{padding:0 1rem 2.25rem 1rem}.excerpt_thumbnail{min-height:10rem;display:none}@media screen and (min-width: 769px){.excerpt_thumbnail{display:block;border-radius:0.5rem}}.excerpt_footer.partition{display:grid}@media screen and (min-width: 769px){.excerpt_footer.partition{grid-template-columns:2fr 7fr;grid-gap:1rem}}.sidebar_inner{position:relative}.sidebar_inner::before{content:"";padding:0.5px;top:0;bottom:0;background:linear-gradient(to bottom, var(--haze), var(--light), var(--haze));position:absolute;left:-2rem}.author_header{display:grid;grid-template-columns:3rem 1fr;grid-gap:1rem}.author_bio a{color:#0077b8}.pagination{display:flex}.page-item{padding:0.2rem}.page-item.disabled{opacity:0.7}.page-item:first-child,.page-item:last-child{display:none}.page-item.active a{background-color:#003552}.page-link{padding:0.25rem 0.75rem;background-color:#0077b8;color:#fff;border-radius:1rem}.page_only{display:none !important}.page .page_only{display:initial !important}.round{border-radius:50%;max-width:100%;height:auto;padding:0;vertical-align:middle}.float_left{float:left;margin-right:1rem}.float_left+p{padding-top:0}.float_right{float:right;margin-left:1rem}.float_left::after,.float_right::after{clear:both}.follow{display:flex;align-items:center;flex:1;justify-content:flex-end}.follow svg{fill:#fafafa;margin-left:0.75rem}figcaption{font-style:italic;opacity:0.67;font-size:0.9rem}.to_top{background-color:#0077b8;width:2.75rem;height:2.75rem;display:flex;justify-content:center;align-items:center;cursor:pointer;border-radius:50%;position:fixed;bottom:1.5rem;right:1.5rem;z-index:99}.to_top.ios{position:absolute;bottom:0.75rem;right:0}.to_top:hover{background-color:#0077b8}.to_top svg{fill:#fff;opacity:0.5;transition:0.3s opacity var(--ease)}.to_top:hover svg{opacity:1}.color_mode{height:1.5rem;display:grid;align-items:center;margin:0 0.5rem}@media screen and (min-width: 769px){.color_mode{margin:0 1.5rem;grid-template-columns:1fr}}.color_choice{width:3rem;background-color:var(--translucent-light);border-radius:1rem;height:1.5rem;outline:none;border:none;-webkit-appearance:none;cursor:pointer;position:relative;position:relative;overflow:hidden;box-shadow:0 0.25rem 1rem rgba(0,0,0,0.15)}.color_choice::after{content:"";position:absolute;top:0.1rem;left:0.1rem;width:1.3rem;height:1.3rem;background-image:url("../images/sun.svg");background-position:center;background-size:cover;border-radius:50%;z-index:2}.color_animate{transition:transform 0.5s cubic-bezier(0.075, 0.82, 0.165, 1)}.color_animate::after{transition:transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);will-change:transform}.taxonomy{text-transform:capitalize}.image-scale{position:fixed;z-index:999999;left:0;right:0;height:100vh;top:0;padding:1.5rem;background-color:var(--bg);display:grid;align-items:center;overflow:auto}.image-scale .image-scalable{background-color:var(--text)}.image-scalable{cursor:pointer;transition:transform 0.3s var(--ease)}.image_featured{display:block;margin-left:auto !important;margin-right:auto !important}.image_thumbnail{margin:0}.video{overflow:hidden;padding-bottom:56.25%;position:relative;height:0;margin:1.5rem 0;border-radius:0.6rem;background-color:var(--bg);box-shadow:0 1rem 2rem rgba(0,0,0,0.17)}.video iframe{left:0;top:0;height:100%;width:100%;border:none;position:absolute;transform:scale(1.02)}.notices{border-top-width:2rem;border-top-style:solid;color:#666;margin:2rem 0;padding-bottom:.1px;padding-left:1rem;padding-right:1rem}.notices .label{color:#fff;margin-top:-1.75rem;font-weight:bold}.notices .label:first-child::before{font-weight:900;margin-left:-.35rem;margin-right:.35rem}.notices.info{border-color:var(--notice-info-border-color);background:var(--notice-info-background)}.notices.warning{border-color:var(--notice-warning-border-color);background:var(--notice-warning-background)}.notices.image-warning{margin:0}.notices.note{border-color:var(--notice-note-border-color);background:var(--notice-note-background)}.notices.tip{border-color:var(--notice-tip-border-color);background:var(--notice-tip-background)}.notices .highlight_wrap{background:var(--notice-code-bg) !important}.search{flex:1;display:flex;justify-content:flex-end;position:relative;max-width:25rem;margin:0.5rem 0 0;--border: transparent}.search_field{padding:0.5rem 1rem;width:100%;outline:none;color:var(--text);background:var(--post-bg);border:1px solid var(--border);border-radius:8px;font-size:1rem;box-shadow:0 0.25rem 1rem rgba(0,0,0,0.1)}.search_field:focus+.search_label{opacity:0}.search_label{position:absolute;z-index:9;opacity:0.67;right:0.67rem;top:0.25rem;width:1rem;height:1rem}.search_label svg{width:100%;height:100%;fill:#7C849B}.search_result{padding:0.5rem 1rem}.search_result:not(.passive):hover{background-color:var(--code-bg);color:#fff}.search_result.passive{display:grid}.search_results{width:100%;background-color:var(--choice-bg);color:var(--text);border-radius:var(--radius);box-shadow:0 1rem 4rem rgba(0,0,0,0.17) !important;position:absolute;top:125%;display:grid;overflow:hidden;z-index:3}.search_results:empty{display:none}.search_title{padding:0.25rem 1rem !important;background-color:#0077b8;color:var(--light);margin:0;font-size:1.25rem}.search_title:empty{display:none}.search_submit{position:absolute;--margin: 3px;right:var(--margin);top:var(--margin);bottom:var(--margin);z-index:9;cursor:pointer;border-radius:calc(var(--radius) / 2)}#results .search_title,#results .search_result{padding:0.5rem 0}.openstreetmap{border:none}.pt-1{padding-top:1.5rem}.pb-1{padding-bottom:1.5rem}.mt-1{margin-top:1.5rem}.mb-1{margin-bottom:1.5rem}.pt-2{padding-top:3rem}.pb-2{padding-bottom:3rem}.mt-2{margin-top:3rem}.mb-2{margin-bottom:3rem}.flex{display:flex;flex-direction:column;align-items:center}.shadow{box-shadow:0 0 60px rgba(0,0,0,0.17)}@media screen and (min-width: 42rem){.grid-2,.grid-3,.grid-4,.grid-auto,.grid-inverse{display:grid;grid-template-columns:1fr}[class*='grid-']{grid-gap:2rem}.grid-inverse{grid-template-columns:70% 1fr;grid-column-gap:4rem}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(auto-fit, minmax(19rem, 1fr))}.grid-4{grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr))}}.facebook svg{fill:#325c94}.twitter svg{fill:#00abdc}.linkedin svg{fill:#007bb6}.never{height:75vh;display:flex;justify-content:center;align-items:center;flex-direction:column;padding:1.5rem;text-align:center}.inline{display:inline;margin:0}.hidden{display:none}@media screen and (max-width: 769px){.nav,.nav_body{flex-direction:column}.nav_body{position:fixed;width:90%;max-width:16.5rem;top:0;bottom:0;background-color:#088282;transition:transform 0.3s var(--easing)}.nav_body_right{transform:translateX(100vw);right:0}.nav_body_left{transform:translateX(-100vw);left:0}.nav_close{width:3rem;position:absolute;right:-4rem;top:0;bottom:0;height:100%;cursor:pointer;z-index:1000;display:flex;justify-content:center;align-items:center}.nav_close svg{width:1.25rem;fill:var(--light);height:1.25rem;display:none}.nav_close svg:first-child{display:initial}.nav_close svg.isopen{display:none}.nav_close svg.isopen+svg{display:initial}.nav_brand{position:relative;z-index:999;width:calc(100% - 3rem);padding-left:0}.nav_parent{display:grid}.nav_sub{position:relative;top:initial;padding-top:0}.jsopen::after{content:"";position:fixed;z-index:2;background-color:rgba(0,0,0,0.3);top:0;left:0;right:0;bottom:0}.jsopen .nav_body{transform:translateX(0);padding-left:1.5rem;padding-right:1.5rem}.jsopen .nav_parent:first-child{margin-top:4.4rem}.jsopen .nav .follow{justify-content:flex-start;flex:initial;margin-top:0.75rem}}@keyframes pulse{0%{opacity:1}75%{opacity:0.1}100%{opacity:1}}code{font-size:85%;font-weight:400;overflow-y:hidden;display:block;font-family:'Monaco', monospace;word-break:break-all}code.noClass{--inlineColor: rgb(194, 29, 0);color:var(--inlineColor);display:inline;line-break:anywhere}.windows .highlight{overflow-x:hidden}.windows .highlight:hover{overflow-x:auto}.highlight{display:grid;width:100%;border-radius:0 0.2rem 0.2rem 0;overflow-x:auto;position:relative}.highlight_wrap{background:var(--code-bg) !important;border-radius:0.5rem;position:relative;padding:0 1rem;margin:1.5rem auto 1rem auto}.highlight_wrap+.highlight_wrap{margin-top:2.25rem}.highlight_wrap:hover>div{opacity:1}.highlight_wrap .lang{position:absolute;top:0;right:0;text-align:right;width:7.5rem;padding:0.5rem 1rem;font-style:italic;text-transform:uppercase;font-size:67%;opacity:0.5;color:var(--light)}.highlight_wrap:hover .lang{opacity:0.1}.highlight .highlight{margin:0}.highlight pre{color:var(--light) !important;border-radius:4px;font-family:'Monaco', monospace;padding-top:1.5rem;padding-bottom:2rem}.highlight table{display:grid;max-width:100%;margin-bottom:0;background:transparent}.highlight td,.highlight th{padding:0}.highlight .lntd{width:100%;border:none}.highlight .lntd:first-child,.highlight .lntd:first-child pre{width:2.5rem !important;padding-left:0;padding-right:0;color:rgba(255,255,255,0.5);user-select:none}.highlight .lntd:first-child pre{width:100%;display:flex;align-items:center;flex-direction:column}.err{color:#a61717;background-color:#e3d2d2}.hl{width:100%;background-color:rgba(255,255,255,0.25)}.ln,.lnt{margin-right:0.75rem;padding:0;transition:opacity 0.3s var(--ease)}.ln,.ln span,.lnt,.lnt span{color:rgba(255,255,255,0.5);user-select:none}.k,.kc,.kd,.kn,.kp,.kr,.kt,.nt{color:#6ab825;font-weight:500}.kn,.kp{font-weight:400}.nb,.no,.nv{color:#24909d}.nc,.nf,.nn{color:#447fcf}.s,.sa,.sb,.sc,.dl,.sd,.s2,.se,.sh,.si,.sx,.sr,.s1,.ss{color:#ed9d13}.m,.mb,.mf,.mh,.mi,.il,.mo{color:#3677a9}.ow{color:#6ab825;font-weight:500}.c,.ch,.cm,.c1{color:#999;font-style:italic}.cs{color:#e50808;background-color:#520000;font-weight:500}.cp,.cpf{color:#cd2828;font-weight:500}.gd,.gr{color:#d22323}.ge{font-style:italic}.gh,.gu,.nd,.na,.ne{color:#ffa500;font-weight:500}.gi{color:#589819}.go{color:#ccc}.gp{color:#aaa}.gs{font-weight:500}.gt{color:#d22323}.w{color:#666}.hljs-string{color:#6ab825}.hljs-attr{color:#ed9d13}.p .hljs-attr{color:var(--light)}.pre_wrap{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word}.pre_nolines.line .ln{display:none}.panel_box{display:inline-flex;perspective:300px;grid-gap:0.5rem;transition:opacity 0.3s var(--easing);background:var(--code-bg);padding:0.5rem 1.5rem;border-radius:2rem;align-items:center;position:absolute;right:0rem;top:-2.1rem;opacity:0}.panel_icon{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0.1rem;transform-origin:50% 50%;background-size:100%;background-repeat:no-repeat}.panel_icon.active{animation:pulse 0.1s linear}.panel_icon svg{fill:var(--light);width:1.5rem;height:1.5rem}.panel_hide{display:none}.panel_from{position:absolute;color:var(--theme);bottom:0;font-size:1.5rem;font-weight:500;padding:0.5rem 0;cursor:pointer;letter-spacing:0.1px;z-index:19}.panel_expanded .panel_from{display:none}
body {
    background-image:url('https://www.treskunov.su/images/f_bumblebee.jpg');
    background-attachment:fixed;
  }
  .icon_s {
    width:160px;
    height:208px;
  }
.specialists-block {
  background: rgba(255, 255, 255, 0.9);
  padding: 30px;
  border-radius: 12px;
  font-family: sans-serif;
  color: #222;
  max-width: 1000px;
  margin: 0 auto;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  margin:30px 0;
}

.specialists-block .title {
  text-align: center;
  font-size: 28px;
  color: #066;
  margin-bottom: 40px;
}

.doctor-card {
  background: rgba(255, 255, 255, 0.6);
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0, 128, 128, 0.15);
  overflow: hidden;
  margin-bottom: 30px;
  transition: box-shadow 0.3s ease;
}
.doctor-card img {
  border-radius: 10px;
  border: 2px solid #088080;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.doctor-card:hover {
  box-shadow: 0 6px 20px rgba(0, 128, 128, 0.3);
}

.doctor-card img {
  width: 100%;
  max-width: 250px;
  height: auto;
  display: block;
  margin: 0 auto;
  padding: 20px;
}

.doctor-info {
  padding: 0 20px 20px;
  text-align: left;
}

.doctor-info h3 {
  color: #055353;
  margin-top: 0;
}

.intro {
  margin-bottom: 10px;
}

.more-text {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.5s ease;
}

.more-text.open {
  max-height: 10000px;
  opacity: 1;
  margin-top: 10px;
}

.buttons {
  margin-top: 15px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.btn-toggle {
  background: linear-gradient(135deg, #00c6c6, #007777);
  box-shadow: 0 4px 12px rgba(0, 200, 200, 0.3);
  text-shadow: 0 1px 2px rgba(0,0,0,0.25);
  border-radius: 8px;
  color: white;
  transition: color 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease;
  position: relative;
  overflow: hidden;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  z-index: 0;
}

.btn-toggle::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 8px;
  padding: 2px;
  background: linear-gradient(45deg, #00fff0, #005f5f, #00fff0, #005f5f);
  background-size: 300% 300%;
  opacity: 0;
  transition: opacity 0.4s ease;
  animation: borderGradient 4s linear infinite;
  z-index: -1;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
}

.btn-toggle:hover {
  color: #aaffff;
  box-shadow: 0 6px 18px rgba(0, 150, 150, 0.7);
  transform: scale(1.05);
}

.btn-toggle:hover::before {
  opacity: 1;
}

.btn-appointment {
  background: linear-gradient(135deg, #3a8ee6, #1a5ecc);
  box-shadow: 0 4px 12px rgba(58, 142, 230, 0.4);
  text-shadow: 0 1px 2px rgba(0,0,50,0.4);
  border-radius: 8px;
  color: white;
  transition: color 0.3s ease, box-shadow 0.3s ease, transform 0.2s ease;
  position: relative;
  overflow: hidden;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  z-index: 0;
}

.btn-appointment::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 8px;
  padding: 2px;
  background: linear-gradient(45deg, #6ea0ff, #154da0, #6ea0ff, #154da0);
  background-size: 300% 300%;
  opacity: 0;
  transition: opacity 0.4s ease;
  animation: borderGradient 4s linear infinite;
  z-index: -1;
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: destination-out;
  mask-composite: exclude;
}

.btn-appointment:hover {
  color: #dbe9ff;
  box-shadow: 0 6px 18px rgba(21, 77, 160, 0.7);
  transform: scale(1.05);
}

.btn-appointment:hover::before {
  opacity: 1;
}

@keyframes borderGradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}



.appointment-block {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.5s ease;
  padding-left: 2px;
  color: #055353;
  font-size: 15px;
}

.appointment-block.open {
  max-height: 1500px;
  opacity: 1;
}

@media (min-width: 768px) {
  .doctor-card {
    display: flex;
    align-items: flex-start;
  }

  .doctor-card img {
    margin: 20px;
    padding: 0;
    width: 250px;
    height: auto;
    object-fit: contain;
    flex-shrink: 0;
  }

  .doctor-info {
    padding: 20px;
  }
}

@media (max-width: 767px) {
  .doctor-card {
    display: block;
    text-align: center;
  }

  .doctor-info {
    text-align: left;
  }
}

        .form_name {
            display: block;
            font-weight: bold;
            margin-bottom: 8px;
            color: #088080;
        }
        .input-group {
            position: relative;
            margin-bottom: 15px;
        }
        .input_min, select, textarea {
            width: 100%;
            padding: 12px 12px 12px 40px;
            border: 2px solid #088080;
            border-radius: 5px;
            font-size: 14px;
            transition: border-color 0.3s, box-shadow 0.3s;
        }
        .input_min:focus, select:focus, textarea:focus {
            outline: none;
            border-color: #055f5f;
            box-shadow: 0 0 5px rgba(8, 130, 130, 0.3);
        }
        .input-icon {
            position: absolute;
            left: 10px;
            top: 74%;
            transform: translateY(-50%);
            color: #088080;
            font-size: 16px;
            line-height: 1;
        }
        .input-icon-ta {
            position: absolute;
            left: 10px;
            top: 40%;
            transform: translateY(-50%);
            color: #088080;
            font-size: 16px;
            line-height: 1;
        }
        textarea {
            height: 120px;
            resize: vertical;
        }
        .appointment-form {
            padding-top: 20px;
            border-top: 1px solid #088080;
            transform: translateY(10px);
            transition: opacity 0.5s ease, transform 0.5s ease;
        }
        .appointment-form.active {
            display: block;
            transform: translateY(0);
        }
         .date-panel, .time-panel {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
            gap: 10px;
            margin-bottom: 15px;
            overflow-x: auto;
            padding-bottom: 5px;
            overflow: hidden;
        }
        .date-panel button, .time-panel button {
            padding: 10px 15px;
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(10px);
            border: 2px solid #dddadaff;
            border-radius: 10px;
            color: #333;
            font-size: 14px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-align: center;
            min-width: 100px;
        }
        .date-panel button:hover, .time-panel button:hover {
            background: rgba(255, 255, 255, 0.25);
            border-color: #777;
            transform: translateY(-1px);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        }
        .date-panel button.active, .time-panel button.active {
            background: rgba(255, 255, 255, 0.3);
            border-color: #088080;
            color: #088080;
            font-weight: bold;
        }
        .date-panel button.active:hover, .time-panel button.active:hover {
            background: rgba(255, 255, 255, 0.35);
            border-color: #088080;
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
            transform: none;
        }
          .button_d {
            display: block;
            width: 100%;
            padding: 12px;
            background: #088080;
            color: #fff;
            border: none;
            border-radius: 5px;
            font-size: 16px;
            cursor: pointer;
            transition: background 0.3s, transform 0.2s;
            margin-bottom:20px;
        }
          .button_d:hover {
            background: #055f5f;
            transform: scale(1.02);
        }
        .alertmail {
            margin-top: 15px;
            padding: 10px;
            border-radius: 5px;
            text-align: center;
        }
        .alertmail.error {
            background: #f8d7da;
            color: #721c24;
        }
        .alertmail.success {
            background: #d4edda;
            color: #155724;
        }
        .error-message {
            color: #721c24;
            font-size: 12px;
            margin-top: 5px;
            display: none;
        }

input[type="radio"] {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #088080;
  border-radius: 50%;
  display: inline-block;
  position: relative;
  margin-right: 8px;
  cursor: pointer;
  transition: all 0.25s ease;
  background-color: #fff;
}

input[type="radio"]:hover {
  box-shadow: 0 0 6px rgba(8, 128, 128, 0.4);
  transform: scale(1.08);
}


input[type="radio"]:checked::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #088080;
  box-shadow: 0 0 4px rgba(8, 128, 128, 0.6);
  transform: scale(1);
  transition: transform 0.2s ease;
}


input[type="radio"]:checked {
  border-color: #055f5f;
  transform: scale(1.05);
}


.input-group.radio-group label {
  display: inline-flex;
  align-items: center;
  margin-right: 15px;
  font-size: 15px;
  color: #055353;
  user-select: none;
}

      .info-block {
        background: rgba(255, 255, 255, 0.9);
        padding: 30px;
        border-radius: 12px;
        font-family: sans-serif;
        color: #222;
        max-width: 1000px;
        margin: 0 auto;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
        margin:30px 0;
      }

      .info-block .title {
        text-align: center;
        font-size: 28px;
        color: #066;
        margin-bottom: 40px;
      }
      .info-card {
        background: rgba(255, 255, 255, 0.6);
        border-radius: 12px;
        box-shadow: 0 2px 10px rgba(0, 128, 128, 0.15);
        overflow: hidden;
        margin-bottom: 30px;
        transition: box-shadow 0.3s ease;
      }
      .info-card img {
        border-radius: 10px;
        border: 2px solid #088080;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
      }

      .info-card:hover {
        box-shadow: 0 6px 20px rgba(0, 128, 128, 0.3);
      }

      .info-card img {
        width: 100%;
        max-width: 250px;
        height: auto;
        display: block;
        margin: 0 auto;
        padding: 20px;
      }

      .info-info {
        padding: 0 20px 20px;
        text-align: left;
      }

      .info-info h3 {
        color: #055353;
        margin-top: 0;
      }
       