/* HINRE Tenerife: warm architectural rhythm; no extra mobile controls. */
.tf-page{--tf-ink:#263c34;--tf-bronze:#91663d;--tf-paper:#f5f0e6;color:var(--tf-ink)}.tf-breadcrumb{padding-top:24px;font-size:.88rem}.tf-hero{display:grid;grid-template-columns:1fr 1.12fr;max-width:1600px;margin:24px auto 0;background:#253b33;color:#fffaf0;min-height:620px}.tf-hero-copy{padding:clamp(32px,5vw,85px);align-self:center}.tf-hero h1{font-size:clamp(3.3rem,5.5vw,6.6rem);line-height:1.03;margin:24px 0}.tf-hero h1 em{color:#dec7a3}.tf-hero p:not(.kicker){max-width:40ch;font-size:1.15rem;line-height:1.7}.tf-hero .kicker{color:#dec7a3}.tf-hero figure{position:relative;margin:0;min-width:0}.tf-hero img{width:100%;height:100%;min-height:620px;object-fit:cover}.tf-hero figcaption{position:absolute;bottom:0;left:0;right:0;padding:10px 18px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:.73rem;line-height:1.5;color:white}.tf-intro{padding-top:55px;padding-bottom:25px}.tf-intro h1{font-size:clamp(2.9rem,6vw,6.3rem);line-height:1.06;margin:20px 0}.tf-intro .lead{max-width:70ch}.tf-section{padding-top:65px;padding-bottom:65px;border-bottom:1px solid #d8cbb7;scroll-margin-top:20px}.tf-section h2,.tf-services h2{font-size:clamp(2.2rem,4vw,4.4rem);line-height:1.08;margin:12px 0 24px}.tf-page h2 em,.tf-intro h1 em{color:var(--tf-bronze)}.tf-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.tf-heading .kicker{grid-column:1/-1}.tf-heading>p:last-child{align-self:center;font-size:1.1rem}.tf-page p,.tf-page li{line-height:1.75}.tf-reading{max-width:850px}.tf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.tf-card{padding:30px;background:#faf7f0;border:1px solid #d8cbb7;border-radius:4px;min-width:0}.tf-card h3{font-size:1.45rem;line-height:1.25;margin:20px 0 15px}.tf-number{font-size:.76rem;letter-spacing:.14em;font-weight:700;color:#80552f}.tf-link{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}.tf-link strong{margin-top:auto;padding-top:16px}.tf-link:hover,.tf-example:hover{transform:translateY(-4px);box-shadow:0 14px 28px #293b3212}.tf-example{color:inherit;text-decoration:none;background:#faf7f0;border:1px solid #d8cbb7;border-radius:4px;overflow:hidden;transition:transform .2s,box-shadow .2s}.tf-example img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.tf-example>div{padding:24px}.tf-example h3{font-size:1.6rem;line-height:1.2}.tf-example .kicker{font-size:.72rem;letter-spacing:.07em;margin-top:18px}.tf-tag{display:inline-block;border:1px solid #ad916e;padding:4px 8px;font-size:.64rem;letter-spacing:.1em}.tf-source{font-size:.76rem;line-height:1.6!important;color:#5a635b;margin-top:22px}.tf-source a{color:inherit;text-underline-offset:3px;overflow-wrap:anywhere}.tf-services{background:#e9e0d0;padding:70px 0;scroll-margin-top:20px}.tf-scope{padding:28px;border-left:3px solid var(--tf-bronze);background:#f6f0e5;margin:30px 0}.tf-scope h3{margin-top:0}.tf-detail{border-top:1px solid #cbbda8;border-bottom:1px solid #cbbda8;margin:14px 0;background:#faf7f0}.tf-detail+.tf-detail{border-top:0;margin-top:-14px}.tf-detail summary{cursor:pointer;padding:20px 36px 20px 18px;font-weight:650;line-height:1.5;position:relative}.tf-detail>div{padding:0 22px 16px}.tf-detail summary:hover{background:#efe5d5}.tf-detail summary:focus-visible,.tf-page a:focus-visible,.tf-table-wrap:focus-visible{outline:3px solid #9d6b32;outline-offset:4px}.tf-card .tf-detail summary{font-size:.9rem;padding-left:8px}.tf-card .tf-detail>div{padding:0 8px 8px;font-size:.93rem}.tf-update{font-size:.8rem;color:#5b635b;max-width:100ch;margin-top:35px}.tf-steps{padding-left:25px}.tf-steps>li{padding-left:12px;margin:0 0 32px}.tf-steps h3{font-size:1.3rem;margin-bottom:8px}.tf-table-wrap{overflow-x:auto;margin:24px 0;border:1px solid #d8cbb7}.tf-table-wrap table{border-collapse:collapse;width:100%;min-width:580px;background:#faf7f0;text-align:left;font-size:.95rem}.tf-table-wrap caption{text-align:left;padding:18px;font-weight:700;background:#e9e0d0}.tf-table-wrap th,.tf-table-wrap td{padding:18px;vertical-align:top;border-bottom:1px solid #d8cbb7;line-height:1.7}.tf-table-wrap thead{background:#eee6d8}.tf-property-cover{margin:28px 0}.tf-property-cover img{width:100%;max-height:650px;object-fit:cover;display:block}.tf-property-cover figcaption{font-size:.74rem;margin-top:8px;color:#5b635b}.tf-gallery{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:38px 0}.tf-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.tf-archive{background:#e9e0d0;padding:18px 22px;border-left:3px solid #91663d;font-size:.92rem}.tf-area-entry{display:grid;grid-template-columns:1.6fr 1fr;gap:40px;padding:40px!important;background:#e8dfce;border:1px solid #cdb89a;border-radius:5px}.tf-area-entry h2{font-size:clamp(2.5rem,4.5vw,4rem);line-height:1.08}.tf-area-mark{display:flex;flex-direction:column;justify-content:center;border-left:1px solid #bca887;padding:35px;color:#805b38}.tf-area-mark span:first-child{font-size:5rem;font-family:Georgia,serif;letter-spacing:-.05em}.tf-area-mark span:last-child{font-size:1.7rem;line-height:1.3;font-family:Georgia,serif;font-style:italic}
@media(max-width:900px){.tf-grid{gap:14px}.tf-card{padding:22px}.tf-hero-copy{padding:35px}.tf-hero,.tf-hero img{min-height:520px}.tf-example>div{padding:18px}}
@media(max-width:760px){.tf-breadcrumb{font-size:.75rem;padding-top:18px}.tf-hero{grid-template-columns:1fr;margin-top:18px;min-height:0}.tf-hero-copy{padding:36px 24px}.tf-hero h1{font-size:3.5rem}.tf-hero figure{height:290px}.tf-hero img{min-height:0;height:290px}.tf-hero p:not(.kicker){font-size:1rem}.tf-section{padding-top:40px;padding-bottom:40px}.tf-heading,.tf-grid,.tf-area-entry{grid-template-columns:1fr}.tf-heading{gap:0}.tf-grid{gap:18px}.tf-card{padding:25px}.tf-example img{aspect-ratio:16/10}.tf-services{padding:42px 0}.tf-scope{padding:20px}.tf-gallery{grid-template-columns:1fr;gap:15px}.tf-area-entry{padding:26px!important;gap:0}.tf-area-mark{display:none}.tf-intro{padding-top:35px}.tf-intro h1{font-size:3rem}.tf-detail summary{padding:18px}.tf-page .button{max-width:100%;white-space:normal;line-height:1.5;text-align:center}.tf-property-cover img{max-height:none}.tf-property{padding-top:10px}}
@media(prefers-reduced-motion:reduce){.tf-link,.tf-example{transition:none}}
