:root{--warm-white: #FCF9F4;--tan: #F8EEDD;--gold: #CE8B3D;--gold-muted: rgba(206, 139, 61, .6);--rose: #EDC8A6;--russet: #3D0505;--text-dark: #1A1A1A;--text-light: #FCF9F4;--font-serif: "Playfair Display", serif;--font-sans: "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--warm-white);color:var(--text-dark);line-height:1.7;font-size:16px;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5{font-family:var(--font-serif);font-weight:400;line-height:1.15}h3{font-size:1.25rem}.section-label{font-family:var(--font-sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.2em;color:var(--russet);margin-bottom:2rem;display:block}.section-label .num{font-weight:600;margin-right:.5em}.reveal{opacity:0;transform:translateY(50px);transition:opacity 1.4s cubic-bezier(.215,.61,.355,1),transform 1.4s cubic-bezier(.215,.61,.355,1)}.reveal.is-visible{opacity:1;transform:translateY(0) translate(0)}.reveal-right{opacity:0;transform:translate(60px);transition:opacity 1.6s cubic-bezier(.215,.61,.355,1),transform 1.6s cubic-bezier(.215,.61,.355,1)}.reveal-right.is-visible{opacity:1;transform:translate(0)}.reveal-left{opacity:0;transform:translate(-60px);transition:opacity 1.6s cubic-bezier(.215,.61,.355,1),transform 1.6s cubic-bezier(.215,.61,.355,1)}.reveal-left.is-visible{opacity:1;transform:translate(0)}.reveal-scale{opacity:0;transform:scale(.88);transition:opacity 1.4s cubic-bezier(.215,.61,.355,1),transform 1.4s cubic-bezier(.215,.61,.355,1)}.reveal-scale.is-visible{opacity:1;transform:scale(1)}section.section-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease-out,transform .8s ease-out}section.section-reveal.is-visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.delay-5{transition-delay:.5s}.delay-6{transition-delay:.6s}section{padding:12vh 5vw;position:relative}.full-bleed{padding:0;width:100vw;height:100vh;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.full-bleed-bg{position:relative;overflow:hidden}.container{max-width:1200px;margin:0 auto}.text-center{text-align:center}.bg-tan{background-color:var(--tan)}.image-breaker{width:100vw;height:70vh;background-size:cover;background-position:center;background-attachment:fixed;position:relative;padding:0}@media(max-width:768px){.image-breaker{background-attachment:scroll;height:50vh}}.image-breaker:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:40%;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.4));pointer-events:none}.image-breaker .image-caption{position:absolute;bottom:2rem;right:3rem;font-size:.8rem;color:#ffffffd9;letter-spacing:.05em;font-family:var(--font-sans);z-index:1;text-shadow:0 1px 6px rgba(0,0,0,.4)}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:1}.hero-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,rgba(26,26,26,.45) 0%,rgba(26,26,26,.45) 70%,rgba(252,249,244,.3) 90%,var(--warm-white) 100%)}.hero-content{position:relative;z-index:2;text-align:center;color:var(--text-light);max-width:800px;padding:2rem}.hero-logo{width:180px;margin-bottom:2.5rem;opacity:.95}.hero-content h1{font-size:clamp(3rem,8vw,6rem);margin:1rem 0}.hero-content .subtitle{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;font-size:.95rem;text-shadow:0 1px 10px rgba(0,0,0,.5)}.hero-content .meta{font-size:.95rem;opacity:.9;margin-top:2rem;text-shadow:0 1px 10px rgba(0,0,0,.5)}.prepared-for{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;font-weight:500;opacity:1;margin-top:1rem;letter-spacing:.15em;text-shadow:0 1px 12px rgba(0,0,0,.6),0 0 30px rgba(0,0,0,.3)}.hero-content h1{text-shadow:0 2px 20px rgba(0,0,0,.4)}.split-section{display:grid;grid-template-columns:1fr;gap:3rem;padding-top:0;padding-bottom:0;min-height:80vh}@media(min-width:900px){.split-section{grid-template-columns:5fr 5fr;align-items:stretch;gap:0;padding-right:0}.split-section .text-col{padding:12vh 5vw 10vh 5vw;display:flex;flex-direction:column;justify-content:flex-start}.split-section.reverse{grid-template-columns:5fr 5fr;padding-left:0;padding-right:5vw}.split-section.reverse .text-col{order:2;padding:12vh 5vw 10vh 5vw}.split-section.reverse .image-col{order:1}}.text-col h2{font-size:clamp(2.25rem,3.5vw,3.5rem);margin-bottom:1.5rem}.text-col p{font-size:1.05rem;color:#555;margin-bottom:1.5rem;max-width:520px}.image-col{display:flex;overflow:hidden}.image-col img,.image-col video{width:100%;height:100%;object-fit:cover;display:block}.feature-list{list-style:none;margin-top:2.5rem}.feature-list li{margin-bottom:1.5rem;padding-left:1.5rem;border-left:2px solid var(--gold)}.feature-list strong{display:block;font-family:var(--font-serif);font-size:1.25rem;margin-bottom:.25rem;color:var(--text-dark)}.feature-list li{font-size:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem;margin-top:4rem;text-align:center}.stat-value{display:block;font-family:var(--font-serif);font-size:clamp(2.5rem,4.5vw,4rem);color:var(--gold);line-height:1;margin-bottom:.75rem}.stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;color:#666}.stat-sub{font-size:.8rem;color:#999;margin-top:.4rem}.section-footnote{margin-top:3rem;max-width:800px;margin-left:auto;margin-right:auto;color:#666;font-size:1rem}.source-line{font-size:.75rem;color:#aaa;margin-top:1rem;font-style:italic}.section-accent{margin-top:2.5rem;font-style:italic;color:var(--gold);font-size:1.05rem}.projection-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:4rem}@media(min-width:768px){.projection-grid{grid-template-columns:repeat(3,1fr)}}.projection-card{text-align:center;padding:3rem 2rem;position:relative}@media(min-width:768px){.projection-card+.projection-card{border-left:1px solid rgba(0,0,0,.08)}}.projection-card.target .projection-amount{font-size:clamp(3rem,6vw,4.5rem)}.projection-tier{display:block;font-family:var(--font-sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;color:#888;margin-bottom:1.5rem}.projection-amount{display:block;font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);color:var(--gold);line-height:1;margin-bottom:.75rem}.projection-note{display:block;font-size:.85rem;color:#999}.ops-list{margin-top:1.5rem}.ops-item{margin-bottom:1.5rem}.ops-item h3{font-family:var(--font-serif);font-size:1.25rem;font-weight:400;margin-bottom:.4rem}.ops-item p{font-size:1rem;color:#555}.three-col-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-top:3.5rem}@media(min-width:900px){.three-col-grid{grid-template-columns:repeat(3,1fr)}}.tier-card{padding:0}.tier-card h3{font-size:1.35rem;margin-bottom:1.5rem;color:var(--gold)}.tier-card ul{list-style:none}.tier-card ul li{margin-bottom:.75rem;color:#555;font-size:1rem;padding-left:1.25rem;position:relative}.tier-card ul li:before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;border-radius:50%;background:var(--gold)}.grid-2x2{display:grid;grid-template-columns:1fr;gap:3rem;margin-top:3.5rem}@media(min-width:768px){.grid-2x2{grid-template-columns:1fr 1fr;gap:4rem}}.tech-item h3{font-size:1.25rem;margin-bottom:.75rem}.tech-item p{color:#555;font-size:1rem}.revpar-grid{display:grid;grid-template-columns:1fr;gap:3rem;margin-top:4rem}@media(min-width:768px){.revpar-grid{grid-template-columns:1fr 1fr;gap:5rem}}.revpar-decorative{font-family:var(--font-serif);font-size:clamp(4rem,8vw,7rem);color:var(--gold);opacity:.12;text-align:center;margin-bottom:-2rem;line-height:1;letter-spacing:.02em}.revpar-decorative.is-visible{opacity:.12}.revpar-card h3{font-size:1.5rem;margin-bottom:1.25rem;color:var(--gold)}.revpar-card p{font-size:1.05rem;color:#555;line-height:1.7}.photo-details{list-style:none;margin:1rem 0 1.5rem}.photo-details li{font-size:1rem;color:#555;padding:.35rem 0 .35rem 1.25rem;position:relative}.photo-details li:before{content:"";position:absolute;left:0;top:.75em;width:5px;height:5px;border-radius:50%;background:var(--gold)}.inline-stats{display:flex;gap:3rem;margin-top:1.5rem}.inline-stat-num{font-size:3rem;margin-bottom:.25rem}.inline-stat-label{font-weight:500;font-size:.9rem;display:block}.stat-footnote{font-size:.8rem;color:#888;font-style:italic;margin-top:.5rem}.gm-photo{width:160px;height:160px;border-radius:50%;object-fit:cover;border:3px solid var(--gold);display:block;margin:0 auto 1.5rem}.gm-profile{margin-top:2.5rem;margin-bottom:1.5rem}.gm-name{font-family:var(--font-serif);font-size:clamp(2rem,4vw,3rem);color:var(--text-dark);margin-bottom:.5rem}.gm-title{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:#888}.gm-grid{margin-top:2.5rem}.damage-protection{color:var(--text-light);padding:12vh 5vw}.damage-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:0}.damage-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1a1a1ad1}.damage-inner{position:relative;z-index:1}.damage-protection .section-label{color:var(--text-light);opacity:.7}.damage-protection h2{font-size:clamp(2.25rem,4.5vw,3.5rem);margin-bottom:1rem}.shield-comparison{display:grid;grid-template-columns:1fr;gap:3rem;margin-top:3.5rem;max-width:900px;margin-left:auto;margin-right:auto}@media(min-width:768px){.shield-comparison{grid-template-columns:1fr 1fr;gap:4rem}}.shield-col{padding:2rem 0;text-align:center}@media(min-width:768px){.shield-col.traditional{border-right:1px solid rgba(255,255,255,.1);padding-right:2rem}.shield-col.portoro-shield{padding-left:2rem}}.shield-col h3{font-size:1.25rem;margin-bottom:1rem;opacity:.7}.shield-col.portoro-shield h3{opacity:1}.shield-amount-small{display:block;font-family:var(--font-serif);font-size:1.75rem;color:#ffffffb3;opacity:1;margin-bottom:1.5rem;text-decoration:line-through;text-decoration-color:#fff3}.shield-badge{display:block;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;margin-bottom:1rem;color:var(--gold)}.huge-num{display:block;font-family:var(--font-serif);font-size:clamp(3.5rem,7vw,5.5rem);color:var(--gold);line-height:1;margin-bottom:.75rem}.shield-per{font-size:1rem;opacity:.8;margin-bottom:1.5rem}.shield-col ul{list-style:none;text-align:left;max-width:280px;margin:0 auto}.shield-col ul li{font-size:.95rem;opacity:.75;padding:.4rem 0 .4rem 1.25rem;position:relative}.shield-col.portoro-shield ul li{opacity:.9}.shield-col ul li:before{content:"";position:absolute;left:0;top:.9em;width:5px;height:5px;border-radius:50%;background:var(--gold)}.screening-block{margin-top:3.5rem;max-width:700px;margin-left:auto;margin-right:auto;padding-top:2.5rem;border-top:1px solid rgba(255,255,255,.1)}.screening-block h3{font-size:1.25rem;color:var(--gold);margin-bottom:.75rem}.screening-block p{font-size:1rem;opacity:.8;line-height:1.7}.risk-card{padding:0;text-align:center}.risk-card h3{font-size:1.35rem;margin-bottom:1rem;color:var(--gold)}.risk-card p{color:#555;font-size:1rem;line-height:1.7}.risk-tagline{font-size:1.15rem;margin-top:3.5rem}.horizontal-scroll{display:flex;flex-direction:column;gap:0;margin-top:3.5rem;position:relative}@media(min-width:900px){.horizontal-scroll{flex-direction:row}}.phase-card{flex:1;padding:2.5rem 2rem;text-align:center;position:relative}@media(min-width:900px){.phase-card+.phase-card{border-left:1px solid rgba(0,0,0,.06)}}.phase-num{width:56px;height:56px;border-radius:50%;border:3px solid var(--gold);color:#ce8b3dcc;background:transparent;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:1.5rem;margin:0 auto 1.5rem}.phase-card:nth-child(2) .phase-num{border-color:var(--gold);color:var(--gold)}.phase-card:nth-child(3) .phase-num{border-color:var(--rose);color:var(--rose)}.phase-card h3{font-size:1.35rem;margin-bottom:.4rem}.phase-card .days{color:var(--gold);font-size:.85rem;font-weight:500;margin-bottom:1.5rem;display:block}.phase-card p{font-size:.95rem;color:#666}.comp-rows{margin-top:3.5rem}.comp-row{display:grid;grid-template-columns:1fr;gap:.5rem;padding:1.25rem 0;border-bottom:1px solid rgba(0,0,0,.06)}@media(min-width:768px){.comp-row{grid-template-columns:1.2fr 1.5fr 1fr 1fr;gap:2rem;align-items:baseline}}.comp-row:first-child{border-top:1px solid rgba(0,0,0,.06)}.comp-category{font-family:var(--font-serif);font-size:1.1rem;color:var(--text-dark)}.comp-portoro{color:var(--gold);font-weight:500;font-size:1rem}.comp-other{color:#999;font-size:.9rem}.comp-header{padding:0 0 1rem;border-bottom:2px solid rgba(0,0,0,.08)}.comp-header .comp-category{font-size:.8rem;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:#999}.comp-header .comp-portoro,.comp-header .comp-other{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.differentiation{color:var(--text-light);padding:12vh 5vw}.diff-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:0}.diff-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1a1a1ac7}.diff-inner{position:relative;z-index:1}.differentiation .section-label{color:var(--text-light);opacity:.7}.differentiation h2{font-size:clamp(2.25rem,4.5vw,3.5rem);margin-bottom:1rem}.diff-grid{display:grid;grid-template-columns:1fr;gap:2.5rem;margin-top:4rem;max-width:1000px;margin-left:auto;margin-right:auto}@media(min-width:768px){.diff-grid{grid-template-columns:repeat(3,1fr);gap:3rem}}.diff-item{padding:0;text-align:center}.diff-item h3{font-size:1.25rem;color:var(--gold);margin-bottom:.5rem}.diff-item p{font-size:.95rem;opacity:.7}.faq-grid{display:grid;grid-template-columns:1fr;gap:0;margin-top:4rem}@media(min-width:768px){.faq-grid{grid-template-columns:1fr 1fr;gap:0 4rem}}.faq-item{padding:2rem 0;border-bottom:1px solid rgba(0,0,0,.06)}.faq-item h3{font-size:1.2rem;margin-bottom:.75rem;color:var(--text-dark)}.faq-item p{color:#555;font-size:1rem;line-height:1.7}.cta-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:1}.cta-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#1a1a1ab8}.cta-content{position:relative;z-index:2;width:100%;max-width:1000px;padding:2rem;text-align:center;color:var(--text-light)}.cta-logo{width:140px;margin-bottom:2.5rem;opacity:.95}.cta h2{font-size:clamp(3rem,6vw,5rem);margin-bottom:1rem}.cta-sub{font-size:1.15rem;opacity:.85}.cta .steps{display:flex;flex-direction:column;gap:2rem;margin:3.5rem 0}@media(min-width:768px){.cta .steps{flex-direction:row;justify-content:center;gap:4rem}}.step-item{flex:1}.step-num{width:52px;height:52px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);background:transparent;display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:1.25rem;margin:0 auto 1rem}.step-item h4{font-family:var(--font-sans);font-size:1rem;font-weight:500;margin-bottom:.4rem}.step-item p{font-size:.9rem;opacity:.75}.contact-info{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem;letter-spacing:.05em;opacity:.8}.vertical-accent{position:fixed;right:1.5rem;top:50%;transform:rotate(90deg) translate(-50%);transform-origin:center;font-family:var(--font-sans);font-size:.6rem;text-transform:uppercase;letter-spacing:.25em;color:#0000001f;z-index:100;pointer-events:none;white-space:nowrap}@media(max-width:900px){.vertical-accent{display:none}}.revenue-projection{padding-top:50px;padding-bottom:50px}.revenue-breakdown{padding-top:51px;padding-bottom:51px}.tech-stack{padding-top:50px;padding-bottom:50px}.listing-optimization{padding-top:82px;padding-bottom:105px;padding-left:54px}.why-portoro{padding-top:4vh}.revenue-projection,.inspection,.revpar-section,.competitive,.risk-mitigation,.faq-section{border-top:1px solid rgba(0,0,0,.04)}.hero-bg{background-attachment:fixed}@media(max-width:768px){.hero-bg{background-attachment:scroll}.full-bleed{height:100svh;height:100dvh}section{padding:8vh 7vw}.hero-logo{width:140px}.hero-content{padding:1.5rem}.hero-content h1{font-size:clamp(2.25rem,10vw,3.5rem)}.hero-content .subtitle{font-size:.8rem;letter-spacing:.1em}.hero-content .meta{font-size:.8rem;margin-top:1.5rem}.prepared-for{letter-spacing:.1em;font-size:.95rem}.split-section{min-height:auto;gap:0}.split-section .text-col,.split-section.reverse .text-col{padding:8vh 7vw}.image-col{max-height:50vh}.text-col h2{font-size:clamp(1.75rem,7vw,2.5rem)}.text-col p{font-size:1rem}.revenue-projection,.tech-stack,.revenue-breakdown{padding-top:40px;padding-bottom:40px}.listing-optimization{padding-top:50px;padding-bottom:60px;padding-left:7vw}.stats-grid{gap:2rem;margin-top:3rem}.projection-card{padding:2rem 1.5rem}.image-breaker .image-caption{right:1.5rem;bottom:1.5rem;font-size:.7rem}.inline-stats{flex-wrap:wrap;gap:2rem}.inline-stat-num{font-size:2.25rem}.revpar-decorative{font-size:clamp(3rem,12vw,5rem);margin-bottom:-1rem}.comp-row.comp-header{display:none}.comp-row .comp-portoro:before{content:"Portoro: ";color:#888;font-weight:400}.comp-row .comp-other:nth-child(3):before{content:"Typical: "}.comp-row .comp-other:nth-child(4):before{content:"Self: "}.phase-card+.phase-card{border-top:1px solid rgba(0,0,0,.06)}.phase-card{padding:2rem 1.5rem}.gm-photo{width:120px;height:120px}.damage-protection,.differentiation{padding:8vh 7vw}.huge-num{font-size:clamp(2.5rem,12vw,4rem)}.shield-amount-small{font-size:1.4rem}.diff-grid{gap:2rem;margin-top:3rem}.faq-item{padding:1.5rem 0}.cta h2{font-size:clamp(2rem,8vw,3.5rem)}.cta-content{padding:1.5rem}.cta-logo{width:100px}.step-num{width:44px;height:44px;font-size:1.1rem}.contact-info{font-size:.8rem;line-height:2}.reveal{transform:translateY(25px)}.reveal-right{transform:translate(30px)}.reveal-left{transform:translate(-30px)}.reveal-scale{transform:scale(.92)}section.section-reveal{transform:translateY(20px)}}@media(max-width:480px){section{padding:6vh 6vw}.hero-logo{width:110px;margin-bottom:1.5rem}.hero-content h1{font-size:clamp(1.85rem,9vw,2.75rem)}.prepared-for{letter-spacing:.08em;font-size:.85rem}.split-section .text-col,.split-section.reverse .text-col{padding:6vh 6vw}.text-col h2{font-size:clamp(1.6rem,6.5vw,2.25rem)}.feature-list strong{font-size:1.1rem}.section-label{font-size:.7rem}.image-breaker{height:40vh}.projection-card{padding:1.5rem 1rem}.gm-photo{width:100px;height:100px}.gm-name{font-size:clamp(1.75rem,6vw,2.25rem)}.cta-logo{width:90px}.phase-num{width:48px;height:48px;font-size:1.3rem}}
